Honor MODULES_OVERRIDE if defined.
[dragonfly.git] / sys / conf / options
1 # $FreeBSD: src/sys/conf/options,v 1.191.2.53 2003/06/04 17:56:58 sam Exp $
2 # $DragonFly: src/sys/conf/options,v 1.9 2003/10/19 00:23:20 dillon Exp $
3 #
4 #        On the handling of kernel options
5 #
6 # All kernel options should be listed in LINT, with suitable
7 # descriptions.  Negative options (options that make some code not
8 # compile) should be commented out; LINT should compile as much code
9 # as possible.  Try to structure option-using code so that a single
10 # option only switch code on, or only switch code off, to make it
11 # possible to have a full compile-test.  If necessary, you can include
12 # "opt_lint.h" and check for COMPILING_LINT to get maximum code
13 # coverage.
14 #
15 # All new options shall also be listed in either "conf/options" or
16 # "<machine>/conf/options.<machine>".  Options that affect a single
17 # source-file <xxx>.[c|s] should be directed into "opt_<xxx>.h", while
18 # options that affect multiple files should either go in
19 # "opt_global.h" if this is a kernel-wide option (used just about
20 # everywhere), or in "opt_<option-name-in-lower-case>.h" if it affect
21 # only some files.  Note that the effect of listing only an option
22 # without a header-file-name in conf/options (and cousins) is that the
23 # last convention is followed.
24 #
25 # This handling scheme is not yet fully implemented.
26 #
27 #
28 # Format of this file:
29 # Option name   filename
30 #
31 # If filename is missing, the default is
32 # opt_<name-of-option-in-lower-case>.h
33
34 # Adaptec Array Controller driver options
35 AAC_COMPAT_LINUX        opt_aac.h       # Enable the linux ioctl interface
36
37 AAC_DEBUG               opt_aac.h       # Debugging levels:
38                                         # 0 - quiet, only emit warnings
39                                         # 1 - noisy, emit major function
40                                         #     points and things done
41                                         # 2 - extremely noisy, emit trace
42                                         #     items in loops, etc.
43
44 # Adaptec aic7xxx SCSI controller options
45 AHC_ALLOW_MEMIO         opt_aic7xxx.h   # Allow PCI devices to use memory
46                                         # mapped I/O
47
48 AHC_TMODE_ENABLE        opt_aic7xxx.h   # Bitmap of units to enable
49                                         # targetmode operations.
50
51 AHC_DUMP_EEPROM         opt_aic7xxx.h   # Dump the contents of our
52                                         # configuration prom.
53
54 AHC_DEBUG               opt_aic7xxx.h   # Compile in Aic7xxx Debugging code.
55
56 AHC_DEBUG_OPTS          opt_aic7xxx.h   # Aic7xxx driver debugging options.
57                                         # See sys/dev/aic7xxx/aic7xxx.h
58
59 AHC_REG_PRETTY_PRINT    opt_aic7xxx.h   # Print register bitfields in debug
60                                         # output.  Adds ~15k to driver.
61
62 # Adaptec aic79xx SCSI controller options
63 AHD_DEBUG               opt_aic79xx.h   # Compile in Aic79xx Debugging code.
64
65 AHD_DEBUG_OPTS          opt_aic79xx.h   # Aic79xx driver debugging options.
66                                         # See sys/dev/aic7xxx/aic79xx.h
67
68 AHD_TMODE_ENABLE        opt_aic79xx.h   # Bitmap of units to enable
69                                         # targetmode operations.
70
71 AHD_REG_PRETTY_PRINT    opt_aic79xx.h   # Print register bitfields in debug
72                                         # output.  Adds ~15k to driver.
73
74 ADW_ALLOW_MEMIO         opt_adw.h       # Allow PCI devices to use memory
75                                         # mapped I/O
76
77 #options for ACPI support
78 ACPI_DEBUG              opt_acpi.h
79 ACPI_NO_SEMAPHORES      opt_acpi.h
80 ACPI_MAX_THREADS        opt_acpi.h
81
82 # Miscellaneous options.
83 COMPAT_43       opt_compat.h
84 COMPAT_SUNOS    opt_compat.h
85 COMPILING_LINT  opt_lint.h
86 CY_PCI_FASTINTR
87 DDB
88 DDB_TRACE
89 DDB_UNATTENDED  opt_ddb.h
90 GDB_REMOTE_CHAT opt_ddb.h
91 HW_WDOG
92 KTRACE
93 LIBICONV
94 MD_NSECT        opt_md.h
95 MD_ROOT         opt_md.h
96 MD_ROOT_SIZE    opt_md.h
97 MFS_ROOT        opt_mfs.h
98 MFS_ROOT_SIZE   opt_mfs.h
99 NTIMECOUNTER    opt_ntp.h
100 NSWAPDEV        opt_swap.h
101 NSWBUF_MIN      opt_swap.h
102 PPS_SYNC        opt_ntp.h
103 QUOTA
104 SPX_HACK
105 SUIDDIR         opt_suiddir.h
106 SYSVMSG         opt_sysvipc.h
107 SYSVSEM         opt_sysvipc.h
108 SYSVSHM         opt_sysvipc.h
109 SHMALL          opt_sysvipc.h
110 SHMMAX          opt_sysvipc.h
111 SHMMAXPGS       opt_sysvipc.h
112 SHMMIN          opt_sysvipc.h
113 SHMMNI          opt_sysvipc.h
114 SHMSEG          opt_sysvipc.h
115 SEMMAP          opt_sysvipc.h
116 SEMMNI          opt_sysvipc.h
117 SEMMNS          opt_sysvipc.h
118 SEMMNU          opt_sysvipc.h
119 SEMMSL          opt_sysvipc.h
120 SEMOPM          opt_sysvipc.h
121 SEMUME          opt_sysvipc.h
122 MSGMNB          opt_sysvipc.h
123 MSGMNI          opt_sysvipc.h
124 MSGSEG          opt_sysvipc.h
125 MSGSSZ          opt_sysvipc.h
126 MSGTQL          opt_sysvipc.h
127 UCONSOLE
128 ICMP_BANDLIM
129 VFS_AIO
130 DIRECTIO        opt_directio.h
131
132 # POSIX kernel options
133 P1003_1B                        opt_posix.h
134 _KPOSIX_PRIORITY_SCHEDULING     opt_posix.h
135 _KPOSIX_VERSION                 opt_posix.h
136
137 # Do we want the config file compiled into the kernel?
138 INCLUDE_CONFIG_FILE     opt_config.h
139
140 # Options for static file systems.  These should only be used at config
141 # time, since the corresponding lkms cannot work if there are any static
142 # dependencies.  Unusability is enforced by hiding the defines for the
143 # options in a never-included header.
144 EXT2FS          opt_dontuse.h
145 FDESC           opt_dontuse.h
146 KERNFS          opt_dontuse.h
147 MFS             opt_dontuse.h
148 MSDOSFS         opt_dontuse.h
149 NULLFS          opt_dontuse.h
150 PORTAL          opt_dontuse.h
151 PROCFS          opt_dontuse.h
152 UMAPFS          opt_dontuse.h
153 NTFS            opt_dontuse.h
154
155 # These static filesystems has one slightly bogus static dependency in
156 # sys/i386/i386/autoconf.c.  If any of these filesystems are
157 # statically compiled into the kernel, code for mounting them as root
158 # filesystems will be enabled - but look below.  Boot-code is purposely
159 # unavailable for the LKM-based versions.
160 CODA
161 CD9660
162 FFS
163 NFS
164 NWFS
165
166 # If you are following the conditions in the copyright,
167 # you can enable soft-updates which will speed up a lot of thigs
168 # and make the system safer from crashes at the same time.
169 # otherwise a STUB module will be compiled in.
170 SOFTUPDATES     opt_ffs.h
171
172 # Enable fast hash lookups for large directories on UFS-based filesystems.
173 UFS_DIRHASH     opt_ufs.h
174
175 # The above static dependencies are planned removed, with a
176 # <filesystem>_ROOT option to control if it usable as root.  This list
177 # allows these options to be present in config files already (though
178 # they won't make any difference yet).
179 CD9660_ROOT     opt_cd9660.h
180 FFS_ROOT        opt_ffs.h
181 NFS_ROOT        opt_nfsroot.h
182
183 # The union static file system has bogus static dependencies, so it isn't
184 # hidden yet.
185 UNION
186
187 # Options used only in subr_param.c.
188 HZ              opt_param.h
189 MAXFILES        opt_param.h
190 NBUF            opt_param.h
191 NMBCLUSTERS     opt_param.h
192 NMBUFS          opt_param.h
193 NSFBUFS         opt_param.h
194 VM_BCACHE_SIZE_MAX      opt_param.h
195 VM_SWZONE_SIZE_MAX      opt_param.h
196 MAXUSERS
197 DFLDSIZ         opt_param.h
198 MAXDSIZ         opt_param.h
199 MAXSSIZ         opt_param.h
200
201 # Generic SCSI options.
202 CAM_MAX_HIGHPOWER       opt_cam.h
203 CAMDEBUG                opt_cam.h
204 CAM_DEBUG_DELAY         opt_cam.h
205 CAM_DEBUG_BUS           opt_cam.h
206 CAM_DEBUG_TARGET        opt_cam.h
207 CAM_DEBUG_LUN           opt_cam.h
208 CAM_DEBUG_FLAGS         opt_cam.h
209 SCSI_DELAY              opt_scsi.h
210 SCSI_NO_SENSE_STRINGS   opt_scsi.h
211 SCSI_NO_OP_STRINGS      opt_scsi.h
212
213 # Options used only in cam/scsi/scsi_cd.c
214 CHANGER_MIN_BUSY_SECONDS        opt_cd.h
215 CHANGER_MAX_BUSY_SECONDS        opt_cd.h
216
217 # Options used only in cam/scsi/scsi_sa.c.
218 SA_IO_TIMEOUT           opt_sa.h
219 SA_SPACE_TIMEOUT        opt_sa.h
220 SA_REWIND_TIMEOUT       opt_sa.h
221 SA_ERASE_TIMEOUT        opt_sa.h
222 SA_1FM_AT_EOD           opt_sa.h
223
224 # Options used only in cam/scsi/scsi_pt.c
225 SCSI_PT_DEFAULT_TIMEOUT opt_pt.h
226
227 # Options used only in cam/scsi/scsi_ses.c
228 SES_ENABLE_PASSTHROUGH  opt_ses.h
229
230 # Options used in dev/sym/ (Symbios SCSI driver).
231 SYM_SETUP_LP_PROBE_MAP  opt_sym.h       #-Low Priority Probe Map (bits)
232                                         # Allows the ncr to take precedence
233                                         # 1 (1<<0) -> 810a, 860
234                                         # 2 (1<<1) -> 825a, 875, 885, 895
235                                         # 4 (1<<2) -> 895a, 896, 1510d 
236 SYM_SETUP_SCSI_DIFF     opt_sym.h       #-HVD support for 825a, 875, 885
237                                         # disabled:0 (default), enabled:1
238 SYM_SETUP_PCI_PARITY    opt_sym.h       #-PCI parity checking
239                                         # disabled:0, enabled:1 (default)
240 SYM_SETUP_MAX_LUN       opt_sym.h       #-Number of LUNs supported
241                                         # default:8, range:[1..64]
242
243 # Options used only in pci/ncr.c
244 SCSI_NCR_DEBUG          opt_ncr.h
245 SCSI_NCR_MAX_SYNC       opt_ncr.h
246 SCSI_NCR_MAX_WIDE       opt_ncr.h
247 SCSI_NCR_MYADDR         opt_ncr.h
248
249 # Options used only in pci/isp_pci.c
250 ISP_TARGET_MODE         opt_isp.h
251
252 # Options used in the 'ata' ATA/ATAPI driver
253 ATA_STATIC_ID           opt_ata.h
254
255 # Net stuff.
256 ACCEPT_FILTER_DATA
257 ACCEPT_FILTER_HTTP
258 BOOTP                   opt_bootp.h
259 BOOTP_COMPAT            opt_bootp.h
260 BOOTP_NFSROOT           opt_bootp.h
261 BOOTP_NFSV3             opt_bootp.h
262 BOOTP_WIRED_TO          opt_bootp.h
263 BRIDGE                  opt_bdg.h
264 ETHER_II                opt_ef.h
265 ETHER_8023              opt_ef.h
266 ETHER_8022              opt_ef.h
267 ETHER_SNAP              opt_ef.h
268 MROUTING                opt_mrouting.h
269 PIM                     opt_mrouting.h
270 INET                    opt_inet.h
271 INET6                   opt_inet6.h
272 IPSEC                   opt_ipsec.h
273 IPSEC_ESP               opt_ipsec.h
274 IPSEC_DEBUG             opt_ipsec.h
275 IPSEC_FILTERGIF         opt_ipsec.h
276 FAST_IPSEC              opt_ipsec.h
277 IPDIVERT
278 DUMMYNET                opt_ipdn.h
279 IPFILTER                opt_ipfilter.h
280 IPFILTER_LOG            opt_ipfilter.h
281 IPFILTER_DEFAULT_BLOCK  opt_ipfilter.h
282 IPFIREWALL              opt_ipfw.h
283 IPFW2                   opt_ipfw.h
284 IPFIREWALL_VERBOSE      opt_ipfw.h
285 IPFIREWALL_VERBOSE_LIMIT        opt_ipfw.h
286 IPFIREWALL_DEFAULT_TO_ACCEPT    opt_ipfw.h
287 IPFIREWALL_FORWARD              opt_ipfw.h
288 IPV6FIREWALL            opt_ip6fw.h
289 IPV6FIREWALL_VERBOSE    opt_ip6fw.h
290 IPV6FIREWALL_VERBOSE_LIMIT      opt_ip6fw.h
291 IPV6FIREWALL_DEFAULT_TO_ACCEPT  opt_ip6fw.h
292 IPSTEALTH
293 IPX                     opt_ipx.h
294 IPXIP                   opt_ipx.h
295 IPTUNNEL                opt_ipx.h
296 LIBMCHAIN
297 NCP                     opt_ncp.h
298 NETATALK                opt_atalk.h
299 NS                      opt_ns.h
300 PPP_BSDCOMP             opt_ppp.h
301 PPP_DEFLATE             opt_ppp.h
302 PPP_FILTER              opt_ppp.h
303 RANDOM_IP_ID
304 SLIP_IFF_OPTS           opt_slip.h
305 TCPDEBUG
306 TCP_DROP_SYNFIN         opt_tcp_input.h
307 XBONEHACK
308 MBUF_STRESS_TEST        opt_mbuf_stress_test.h
309
310 # Netgraph(4). Use option NETGRAPH to enable the base netgraph code.
311 # Each netgraph node type can be either be compiled into the kernel
312 # or loaded dynamically. To get the former, include the corresponding
313 # option below. Each type has its own man page, e.g. ng_async(8).
314 NETGRAPH
315 NETGRAPH_ASYNC          opt_netgraph.h
316 NETGRAPH_BPF            opt_netgraph.h
317 NETGRAPH_BRIDGE         opt_netgraph.h
318 NETGRAPH_CISCO          opt_netgraph.h
319 NETGRAPH_ECHO           opt_netgraph.h
320 NETGRAPH_ETHER          opt_netgraph.h
321 NETGRAPH_FRAME_RELAY    opt_netgraph.h
322 NETGRAPH_HOLE           opt_netgraph.h
323 NETGRAPH_IFACE          opt_netgraph.h
324 NETGRAPH_KSOCKET        opt_netgraph.h
325 NETGRAPH_LMI            opt_netgraph.h
326 NETGRAPH_L2TP           opt_netgraph.h
327 # MPPC compression requires proprietary files (not included)
328 NETGRAPH_MPPC_COMPRESSION       opt_netgraph.h
329 NETGRAPH_MPPC_ENCRYPTION        opt_netgraph.h
330 NETGRAPH_ONE2MANY       opt_netgraph.h
331 NETGRAPH_PPP            opt_netgraph.h
332 NETGRAPH_PPPOE          opt_netgraph.h
333 NETGRAPH_PPTPGRE        opt_netgraph.h
334 NETGRAPH_RFC1490        opt_netgraph.h
335 NETGRAPH_SOCKET         opt_netgraph.h
336 NETGRAPH_TEE            opt_netgraph.h
337 NETGRAPH_TTY            opt_netgraph.h
338 NETGRAPH_UI             opt_netgraph.h
339 NETGRAPH_VJC            opt_netgraph.h
340
341 # DRM options
342 DRM_DEBUG               opt_drm.h
343
344 # ATM (HARP version)
345 ATM_CORE                opt_atm.h
346 ATM_IP                  opt_atm.h
347 ATM_SIGPVC              opt_atm.h
348 ATM_SPANS               opt_atm.h
349 ATM_UNI                 opt_atm.h
350
351 # XXX Conflict: # of devices vs network protocol (Native ATM).
352 # This makes "atm.h" unusable.
353 NATM                    opt_natm.h
354
355 DPT_ALLOW_MEMIO         opt_dpt.h       # Allow PCI devices to use memory
356                                         # mapped I/O
357 # DPT driver debug flags
358 DPT_MEASURE_PERFORMANCE opt_dpt.h
359 DPT_HANDLE_TIMEOUTS     opt_dpt.h
360 DPT_TIMEOUT_FACTOR      opt_dpt.h
361 DPT_LOST_IRQ            opt_dpt.h
362 DPT_RESET_HBA           opt_dpt.h
363
364 # Adaptec ASR and DPT V/VI controller options
365 ASR_MEASURE_PERFORMANCE opt_asr.h
366
367 # Misc debug flags.  Most of these should probably be replaced with
368 # 'DEBUG', and then let people recompile just the interesting modules
369 # with 'make CC="cc -DDEBUG"'.
370 CLUSTERDEBUG            opt_debug_cluster.h
371 DEBUG_1284              opt_ppb_1284.h
372 VP0_DEBUG               opt_vpo.h
373 LPT_DEBUG               opt_lpt.h
374 PLIP_DEBUG              opt_plip.h
375 LOCKF_DEBUG             opt_debug_lockf.h
376 LOUTB                   opt_debug_outb.h
377 NPX_DEBUG               opt_debug_npx.h
378 NETATALKDEBUG           opt_atalk.h
379 SI_DEBUG                opt_debug_si.h
380
381 # Fb options
382 FB_DEBUG                opt_fb.h
383 FB_INSTALL_CDEV         opt_fb.h
384
385 # ppbus related options
386 PERIPH_1284             opt_ppb_1284.h
387 DONTPROBE_1284          opt_ppb_1284.h
388
389 # smbus related options
390 ENABLE_ALART            opt_intpm.h
391
392 # These cause changes all over the kernel
393 BLKDEV_IOSIZE           opt_global.h
394 DEBUG                   opt_global.h
395 DEBUG_LOCKS             opt_global.h
396 DEBUG_VFS_LOCKS         opt_global.h
397 DIAGNOSTIC              opt_global.h
398 ENABLE_VFS_IOOPT        opt_global.h
399 INVARIANT_SUPPORT       opt_global.h
400 INVARIANTS              opt_global.h
401 SIMPLELOCK_DEBUG        opt_global.h
402 VFS_BIO_DEBUG           opt_global.h
403
404 # These are VM related options
405 VM_KMEM_SIZE            opt_vm.h
406 VM_KMEM_SIZE_SCALE      opt_vm.h
407 VM_KMEM_SIZE_MAX        opt_vm.h
408 NO_SWAPPING             opt_vm.h
409 PQ_NOOPT                opt_vmpage.h
410 PQ_NORMALCACHE          opt_vmpage.h
411 PQ_MEDIUMCACHE          opt_vmpage.h
412 PQ_LARGECACHE           opt_vmpage.h
413 PQ_HUGECACHE            opt_vmpage.h
414 PQ_CACHESIZE            opt_vmpage.h
415
416 # Standard SMP options
417 SMP                     opt_global.h
418
419 # sys/netkey
420 KEY
421
422 # Size of the kernel message buffer
423 MSGBUF_SIZE             opt_msgbuf.h
424
425 # PCI related options
426 PCI_QUIET               opt_pci.h
427 PCI_ENABLE_IO_MODES     opt_pci.h
428
429 # NFS options
430 NFS_MINATTRTIMO         opt_nfs.h
431 NFS_MAXATTRTIMO         opt_nfs.h
432 NFS_MINDIRATTRTIMO      opt_nfs.h
433 NFS_MAXDIRATTRTIMO      opt_nfs.h
434 NFS_GATHERDELAY         opt_nfs.h
435 NFS_UIDHASHSIZ          opt_nfs.h
436 NFS_WDELAYHASHSIZ       opt_nfs.h
437 NFS_MUIDHASHSIZ         opt_nfs.h
438 NFS_NOSERVER            opt_nfs.h
439 NFS_DEBUG               opt_nfs.h
440
441 # For the Bt848/Bt848A/Bt849/Bt878/Bt879 driver
442 OVERRIDE_CARD                   opt_bktr.h
443 OVERRIDE_TUNER                  opt_bktr.h
444 OVERRIDE_DBX                    opt_bktr.h
445 OVERRIDE_MSP                    opt_bktr.h
446 BROOKTREE_SYSTEM_DEFAULT        opt_bktr.h
447 BROOKTREE_ALLOC_PAGES           opt_bktr.h
448 BKTR_OVERRIDE_CARD              opt_bktr.h
449 BKTR_OVERRIDE_TUNER             opt_bktr.h
450 BKTR_OVERRIDE_DBX               opt_bktr.h
451 BKTR_OVERRIDE_MSP               opt_bktr.h
452 BKTR_SYSTEM_DEFAULT             opt_bktr.h
453 BKTR_ALLOC_PAGES                opt_bktr.h
454 BKTR_USE_PLL                    opt_bktr.h      
455 BKTR_GPIO_ACCESS                opt_bktr.h
456 BKTR_NO_MSP_RESET               opt_bktr.h
457 BKTR_430_FX_MODE                opt_bktr.h
458 BKTR_SIS_VIA_MODE               opt_bktr.h
459
460 # meteor opt_meteor.h
461 METEOR_ALLOC_PAGES      opt_meteor.h
462 METEOR_TEST_VIDEO       opt_meteor.h
463 METEOR_SYSTEM_DEFAULT   opt_meteor.h
464 METEOR_DEALLOC_PAGES    opt_meteor.h
465 METEOR_DEALLOC_ABOVE    opt_meteor.h
466
467 # Various mi ISA bus flags
468 COM_ESP                 opt_sio.h
469 COM_MULTIPORT           opt_sio.h
470 BREAK_TO_DEBUGGER       opt_comconsole.h
471 ALT_BREAK_TO_DEBUGGER   opt_comconsole.h
472
473 # Include tweaks for running under the SimOS machine simulator.
474 SIMOS                   opt_simos.h
475
476 # options for bus/device framework
477 BUS_DEBUG               opt_bus.h
478 DEVICE_SYSCTLS          opt_bus.h
479
480 # options for USB support
481 UHCI_DEBUG              opt_usb.h
482 OHCI_DEBUG              opt_usb.h
483 USB_DEBUG               opt_usb.h
484 UGEN_DEBUG              opt_usb.h
485 UHID_DEBUG              opt_usb.h
486 UHUB_DEBUG              opt_usb.h
487 UKBD_DEBUG              opt_usb.h
488 ULPT_DEBUG              opt_usb.h
489 UMASS_DEBUG             opt_usb.h
490 UMS_DEBUG               opt_usb.h
491
492 # Vinum options
493 VINUMDEBUG              opt_vinum.h
494
495 # Embedded system options
496 UKBD_DFLT_KEYMAP        opt_ukbd.h
497 INIT_PATH               opt_init_path.h
498
499 ROOTDEVNAME             opt_rootdevname.h
500
501 FDC_DEBUG               opt_fdc.h
502 PCFCLOCK_VERBOSE        opt_pcfclock.h
503 PCFCLOCK_MAX_RETRIES    opt_pcfclock.h
504
505 # Polling device handling
506 DEVICE_POLLING          opt_global.h
507
508 # options for ubsec driver
509 UBSEC_DEBUG             opt_ubsec.h
510 UBSEC_RNDTEST           opt_ubsec.h
511 UBSEC_NO_RNG            opt_ubsec.h
512
513 # options for hifn driver
514 HIFN_DEBUG              opt_hifn.h
515 HIFN_RNDTEST            opt_hifn.h
516 HIFN_NO_RNG             opt_hifn.h