]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - sys/i386/conf/LINT
This commit was generated by cvs2svn to compensate for changes in r3779,
[FreeBSD/FreeBSD.git] / sys / i386 / conf / LINT
1 #
2 # LINT -- config file for checking all the sources, tries to pull in
3 #       as much of the source tree as it can.
4 #
5 #       This kernel is NOT MEANT to be runnable!
6 #
7 #       $Id: LINT,v 1.97 1994/10/20 00:53:29 phk Exp $
8 #
9
10 #
11 # This directive is mandatory; it defines the architecture to be
12 # configured for; in this case, the 386 family.  You must also specify
13 # at least one CPU (the one you intend to run on); deleting the
14 # specification for CPUs you don't need to use may make parts of the
15 # system run faster
16 #
17 machine         "i386"
18 cpu             "I386_CPU"
19 cpu             "I486_CPU"
20 cpu             "I586_CPU"              # a/k/a Pentium(tm)
21
22
23 # This is the ``identification'' of the kernel.  Usually this should
24 # be the same as the name of your kernel.
25 #
26 ident           LINT
27
28 #
29 # The `maxusers' parameter controls the static sizing of a number of
30 # internal system tables by a complicated formula defined in param.c.
31 #
32 maxusers        10
33
34 #
35 # A math emulator is mandatory if you wish to run on hardware which
36 # does not have a floating-point processor.  Pick either the original,
37 # bogus (but freely-distributable) math emulator, or a much more
38 # fully-featured but GPL-licensed emulator taken from Linux.
39 #
40 options         MATH_EMULATE            #Support for x87 emulation
41 #options        GPL_MATH_EMULATE        #Support for x87 emualtion via
42                                         #new math emulator 
43
44 #
45 # This directive defines a number of things:
46 #  - The compiled kernel is to be called `kernel'
47 #  - The root filesystem might be on partition wd0a
48 #  - The kernel can swap on wd0b and sd0b, defaulting to the former
49 #  - Crash dumps will be written to wd0b, if possible
50 #
51 config          kernel  root on wd0 swap on wd0 and sd0 dumps on wd0
52
53 \f
54 #####################################################################
55 # COMPATIBILITY OPTIONS                                             
56
57 #
58 # Implement system calls compatible with 4.3BSD and older versions of
59 # FreeBSD.
60 #
61 options         "COMPAT_43"
62
63 #
64 # Allow user-mode programs to manipulat their local descriptor tables.
65 # This option is required for the WINE Windows(tm) emulator, and is
66 # not used by anything else (that we know of).
67 #
68 options         USER_LDT                #allow user-level control of i386 ldt
69
70 #
71 # These three options provide support for System V Interface
72 # Definition-style interprocess communication, in the form of shared
73 # memory, semaphores, and message queues, respectively.
74 #
75 options         SYSVSHM
76 options         SYSVSEM
77 options         SYSVMSG
78
79 \f
80 #####################################################################
81 # DEBUGGING OPTIONS
82
83 #
84 # This line enables the kernel debugger, DDB, and the line following
85 # allocates extra space for a copy of the debugger symbol table which
86 # is stored in the initialized data area of the kernel.  If you change
87 # the latter option, remove db_aout.o before compiling.
88 #
89 options         DDB                     #Kernel debugger
90 options         "SYMTAB_SPACE=113498"   #This kernel needs LOTS of symtable
91
92
93 # KTRACE enables the system-call tracing facility ktrace(2).
94 #
95 options         KTRACE                  #kernel tracing
96
97 #
98 # The DIAGNOSTIC option is used in a number of source files to enable
99 # extra sanity checking of internal structures.  This support is not
100 # enabled by default because of the extra time it would take to check
101 # for these conditions, which can only occur as a result of
102 # programming errors.
103 #
104 options         DIAGNOSTIC
105
106
107 \f
108 #####################################################################
109 # NETWORKING OPTIONS
110
111 #
112 # Protocol families:
113 #  Only the INET (Internet) family is officially supported in FreeBSD.
114 #  Source code for the NS (Xerox Network Service), ISO (OSI), and
115 #  CCITT (X.25) families is provided for amusement value, although we
116 #  try to ensure that it actually compiles.
117 #
118 options         INET                    #Internet communications protocols
119 options         ISO
120 options         CCITT                   #X.25 network layer
121 options         NS                      #Xerox NS communications protocols
122
123 #
124 # Network interfaces:
125 #  The `loop' pseudo-device is mandatory when networking is enabled.
126 #  The `ether' pseudo-device provides generic code to handle
127 #  Ethernets; it is mandatory when a Ethernet device driver is
128 #  configured.
129 #  The `sl' pseudo-device implements the Serial Line IP (SLIP) service.
130 #  The `ppp' pseudo-device implements the Point-to-Point Protocol.
131 #
132 pseudo-device   ether                   #Generic Ethernet
133 pseudo-device   loop                    #Network loop back device
134 pseudo-device   sl      2               #Serial Line IP
135 pseudo-device   ppp     2               #Point-to-point protocol
136 options         NSIP                    #XNS over IP
137 options         EON                     #ISO CLNP over IP
138 options         TPIP                    #ISO TP class 4 over IP
139 options         TPCONS                  #ISO TP class 0 over X.25
140 options         LLC                     #X.25 link layer for Ethernets
141 options         HDLC                    #X.25 link layer for serial lines
142
143 #
144 # Internet family options:
145 #
146 # TCP_COMPAT_42 causes the TCP code to emulate certain bugs present in
147 # 4.2BSD.  This option should not be used unless you have a 4.2BSD
148 # machine and TCP connections fail.
149 #
150 # GATEWAY allows the machine to forward packets, and also configures
151 # larger static sizes of a number of system tables.
152 #
153 # MROUTING enables the kernel multicast packet forwarder, which works
154 # with mrouted(8).
155 #
156 # The `bpfilter' pseudo-device enables the Berkeley Packet Filter.  Be
157 # aware of the legal and administrative consequences of enabling this
158 # option.  The number of devices determines the maximum number of
159 # simultaneous BPF clients programs runnable.
160 #
161 options         "TCP_COMPAT_42"         #emulate 4.2BSD TCP bugs
162 options         GATEWAY                 #internetwork gateway
163 options         MROUTING                # Multicast routing
164 pseudo-device   bpfilter        4       #berkeley packet filter
165
166 \f
167 #####################################################################
168 # FILESYSTEM OPTIONS
169
170 #
171 # Only the root, /usr, and /tmp filesystems need be statically
172 # compiled; everything else will be automatically loaded at mount
173 # time.  (Exception: the UFS family---FFS, MFS, and LFS---cannot
174 # currently be demand-loaded.)  Some people still prefer to statically
175 # compile other filesystems as well.
176 #
177 # NB: The LFS, PORTAL, and UNION filesystems are known to be buggy,
178 # and WILL panic your system if you attempt to do anything with them.
179 # They are included here as an incentive for some enterprising soul to
180 # sit down and fix them.
181 #
182
183 # One of these is mandatory:
184 options         FFS                     #Fast filesystem
185 options         NFS                     #Network File System
186
187 # The rest are optional:
188 options         "CD9660"                #ISO 9660 filesystem
189 options         FDESC                   #File descriptor filesystem
190 options         KERNFS                  #Kernel filesystem
191 options         LFS                     #Log filesystem
192 options         MFS                     #Memory File System
193 options         MSDOSFS                 #MS DOS File System
194 options         NULLFS                  #NULL filesystem
195 options         PORTAL                  #Portal filesystem
196 options         PROCFS                  #Process filesystem
197 options         UMAPFS                  #UID map filesystem
198 options         UNION                   #Union filesystem
199
200 #
201 # Disk quotas are supported when this option is enabled.  If you
202 # change the value of this option, you must do a `make clean' in your
203 # kernel compile directory in order to get a working kernel.
204 #
205 options         QUOTA                   #enable disk quotas
206
207 \f
208 #####################################################################
209 # SCSI DEVICE CONFIGURATION
210
211 #
212 # The SCSI subsystem consists of the `base' SCSI code, a number of
213 # high-level SCSI device drivers, and the low-level host-adapter
214 # device drivers.  The host adapters are listed in the ISA and PCI
215 # device configuration sections below.
216 #
217 # Note that, unlike most similar systems, the FreeBSD SCSI system
218 # does not wire a particular device unit number to any specific
219 # SCSI bus unit number.  Rather, unit numbers are assigned in the
220 # order that the devices are found on the SCSI bus.  (This means that
221 # if you remove a disk drive, you may have to rewrite your /etc/fstab
222 # file.)  It is expected that this will change for FreeBSD 2.1.
223 #
224 controller      scbus0  #base SCSI code
225 device          ch0     #SCSI media changers
226 device          sd0     #SCSI disks
227 device          sd1
228 device          sd2
229 device          sd3
230 device          st0     #SCSI tapes
231 device          st1
232 device          uk0                     #unknown scsi devices
233
234 #
235 # The `cd' (SCSI read-only removable disk) driver is special in that
236 # the code dynamically allocates more units as they are required, with
237 # no limit (other than memory) to the number available.
238 device          cd0     #SCSI CD-ROMs
239
240 \f
241 #####################################################################
242 # MISCELLANEOUS DEVICES AND OPTIONS
243
244 #
245 # Of these, only the `log' device is truly mandatory.  The `pty'
246 # device usually turns out to be ``effectively mandatory'', as it is
247 # required for `telnetd', `rlogind', `screen', `emacs', and `xterm',
248 # among others.
249 #
250 pseudo-device   pty     4       #Pseudo ttys
251 pseudo-device   speaker         #Play IBM BASIC-style noises out your speaker
252 pseudo-device   log             #Kernel syslog interface (/dev/klog)
253 pseudo-device   gzip            #Exec gzipped a.out's
254
255 \f
256 #####################################################################
257 # HARDWARE DEVICE CONFIGURATION
258
259 # ISA and EISA devices:
260 # Currently there is no separate support for EISA.  There should be.
261 # Micro Channel is not supported at all.
262
263 #
264 # Mandatory ISA devices: isa, sc, npx
265 #
266 controller      isa0
267
268 #
269 # Options for `isa':
270 #
271 # ALLOW_CONFLICT_IOADDR suppresses the I/O address conflict checks, so
272 # that the PS/2 mouse driver doesn't conflict with the console driver.
273 #
274 # ALLOW_CONFLICT_IRQ suppresses the interrupt line conflict checks, so
275 # that multiple devices can share the same IRQ, provided that the
276 # hardware supports it (it usually doesn't).
277 #
278 # BOUNCE_BUFFERS provides support for ISA DMA on machines with more
279 # than 16 megabytes of memory.  It doesn't hurt on other machines.
280 # Some broken EISA and VLB hardware may need this, too.
281 #options        ALLOW_CONFLICT_IOADDR
282 #options        ALLOW_CONFLICT_IRQ
283 options         BOUNCE_BUFFERS
284
285 device          sc0     at isa? port "IO_KBD" tty irq 1 vector scintr
286
287 #
288 # Options for `sc':
289 #
290 # NCONS specifies the number of virtual consoles.  Specification of
291 # this value is mandatory.  Due to a compiler bug, when compiling with
292 # GCC 2.6.0 this option must be a power of two.
293 #
294 # FAT_CURSOR specifies the use of a large block cursor rather than the
295 # hardware default underline.
296 #
297 # HARDFONTS allows the driver to load an ISO-8859-1 font to replace
298 # the default font in your display adapter's memory.
299 #
300 # UCONSOLE enables code to let any user get output intended for the
301 # console.
302 #
303 options         "NCONS=8"
304 options         "FAT_CURSOR"
305 options         HARDFONTS
306 options         UCONSOLE
307
308 device          npx0    at isa? port "IO_NPX" irq 13 vector npxintr
309
310 #
311 # Optional ISA and EISA devices:
312 #
313
314 #
315 # SCSI host adapters: `aha', `ahb', `aic', `bt', `pas'
316 #
317 # aha: Adaptec 154x
318 # ahb: Adaptec 174x
319 # aic: Adaptec 152x and sound cards using the Adaptec AIC-6360 (slow!)
320 # bt: Most Buslogic controllers
321 # pas: ProAudioSpectrum cards using the NCR 5380 (slow!)
322 # uha: UltraStore 14F and 34F
323 #
324 # Note that the order is important in order for Buslogic cards to be
325 # probed correctly.
326 #
327
328 controller      bt0     at isa? port "IO_BT0" bio irq ? vector btintr
329 controller      ahb0    at isa? bio irq ? vector ahbintr
330 controller      aha0    at isa? port "IO_AHA0" bio irq ? drq 5 vector ahaintr
331 controller      uha0    at isa? port "IO_UHA0" bio irq ? drq 5 vector uhaintr
332
333 controller      aic0    at isa? port 0x340 bio irq 11 vector aicintr
334 controller      pas0    at isa? port 0x1f88
335 controller      pas1    at isa? port 0x1f84
336 controller      pas2    at isa? port 0x1f8c
337 controller      pas3    at isa? port 0x1e88
338
339 #
340 # ST-506, ESDI, and IDE hard disks: `wdc' and `wd'
341 #
342 # NB: ``Enhanced IDE'' is NOT supported at this time.
343 #
344 controller      wdc0    at isa? port "IO_WD1" bio irq 14 vector wdintr
345 disk            wd0     at wdc0 drive 0
346 disk            wd1     at wdc0 drive 1
347 controller      wdc1    at isa? port "IO_WD2" bio irq 15 vector wdintr
348 disk            wd2     at wdc1 drive 0
349 disk            wd3     at wdc1 drive 1
350
351 #
352 # Standard floppy disk controllers and floppy tapes: `fdc', `fd', and `ft'
353 #
354 controller      fdc0    at isa? port "IO_FD1" bio irq 6 drq 2 vector fdintr
355 disk            fd0     at fdc0 drive 0
356 disk            fd1     at fdc0 drive 1
357 tape            ft0     at fdc0 drive 2
358
359 #
360 # Other standard PC hardware: `lpt', `mse', `psm', `sio'
361 #
362 # lpt: printer port
363 # mse: Logitech and ATI InPort bus mouse ports
364 # psm: PS/2 mouse port (needs ALLOW_CONFLICT_IOADDR, above)
365 # sio: serial ports (see sio(4))
366
367 device          lpt0    at isa? port "IO_LPT3" tty irq 7 vector lptintr
368 device          mse0    at isa? port 0x23c tty irq 5 vector mseintr
369 device          psm0    at isa? port "IO_KBD" tty irq 12 vector psmintr
370 device          sio0    at isa? port "IO_COM1" tty irq 4 vector siointr
371
372 # Options for sio:
373 options         DSI_SOFT_MODEM          #code for DSI Softmodems
374
375 #
376 # Network interfaces: `ed', `el', `ep', `ie', `is', `le', `lnc'
377 #
378 # ed: Western Digital and SMC 80xx; Novell NE1000 and NE2000; 3Com 3C503
379 # el: 3Com 3C501 (slow!)
380 # ep: 3Com 3C509 (buggy)
381 # ie: AT&T StarLAN 10 and EN100; 3Com 3C507; unknown NI5210
382 # is: Isolan AT 4141-0; Isolink 4110; Novell NE2100
383 # le: Digital Equipment EtherWorks 2 and EtherWorks 3 (DEPCA, DE100,
384 #     DE101, DE200, DE201, DE202, DE203, DE204, DE205, DE422)
385 # lnc: unknown LANCE-based
386 #
387
388 device ed0 at isa? port 0x280 net irq 5 iomem 0xd8000 vector edintr
389 device ie0 at isa? port 0x360 net irq 7 iomem 0xd0000 vector ieintr
390 device is0 at isa? port 0x280 net irq 10 drq 7 vector isintr
391 device ep0 at isa? port 0x300 net irq 10 vector epintr
392 device el0 at isa? port 0x300 net irq 9 vector elintr
393 device le0 at isa? port 0x300 net irq 5 iomem 0xd0000 vector le_intr
394 #device lnc0 at isa? XXX FILL ME IN
395
396 #
397 # Audio drivers: `snd', `pca'
398 #
399 # snd: Voxware sound drivers for various cards (see file `sound.doc')
400 # pca: PCM audio through your PC speaker
401 #
402 # Someday, Voxware configuration will be done properly.
403 #
404 device snd5 at isa? port 0x330 irq 6 vector mpuintr
405 device snd4 at isa? port 0x220 irq 15 drq 6 vector gusintr
406 device snd3 at isa? port 0x388 irq 10 drq 6 vector pasintr
407 device snd2 at isa? port 0x220 irq 7 drq 1 vector sbintr
408 device snd6 at isa? port 0x220 irq 7 drq 5 vector sbintr
409 device snd7 at isa? port 0x300
410 device snd1 at isa? port 0x388
411
412 device pca0 at isa? tty
413
414 #
415 # Miscellaneous hardware: `mcd', `wt', `ctx', `apm'
416 #
417 # mcd: Mitsumi CD-ROM
418 # wt: Wangtek and Archive QIC-02/QIC-36 tape drives
419 # ctx: Cortex-I frame grabber
420 # apm: Laptop Advanced Power Management (experimental)
421 #
422
423 device          mcd0    at isa? port 0x300 bio irq 10 vector mcdintr
424 device          wt0     at isa? port 0x300 bio irq 5 drq 1 vector wtintr
425 device          ctx0    at isa? port 0x230 iomem 0xd0000
426
427 # NB: both lines are required
428 device          apm0    at isa?
429 options         APM
430
431 #
432 # PCI devices:
433 #
434 # The main PCI bus device is `pci'.  It provides auto-detection and
435 # configuration support for all devices on the PCI bus, using either
436 # configuration mode defined in the PCI specification.
437 #
438 # The `ncr' device provides support for the NCR 53C810 and 53C825
439 # self-contained SCSI host adapters.
440 #
441 # The `de' device provides support for the Digital Equipment DC21040
442 # self-contained Ethernet adapter.
443 #
444 controller      pci0
445 device          ncr0
446 device          de0