5b3f95e0273bf1330153d108f78c0b4b1739c43a
[dragonfly.git] / sys / config / GENERIC
1 #
2 # GENERIC -- Generic kernel configuration file for DragonFly/i386
3 #
4 # Check the LINT configuration file in sys/config, for an
5 # exhaustive list of options.
6
7 platform        pc32
8 machine         i386
9 machine_arch    i386
10 cpu             I486_CPU
11 cpu             I586_CPU
12 cpu             I686_CPU
13 ident           GENERIC
14 maxusers        0
15
16 makeoptions     DEBUG=-g                #Build kernel with gdb(1) debug symbols
17
18 options         MATH_EMULATE            #Support for x87 emulation
19 options         INET                    #InterNETworking
20 options         INET6                   #IPv6 communications protocols
21 options         HAMMER                  #Hammer Filesystem
22 options         NULLFS                  #NULL filesystem
23 options         FFS                     #Berkeley Fast Filesystem
24 options         FFS_ROOT                #FFS usable as root device [keep this!]
25 options         SOFTUPDATES             #Enable FFS soft updates support
26 options         UFS_DIRHASH             #Improve performance on big directories
27 options         MFS                     #Memory Filesystem
28 options         TMPFS                   #Temporary Filesystem
29 options         MD_ROOT                 #MD is a potential root device
30 options         NFS                     #Network Filesystem
31 options         NFS_ROOT                #NFS usable as root device, NFS required
32 options         MSDOSFS                 #MSDOS Filesystem
33 options         CD9660                  #ISO 9660 Filesystem
34 options         PROCFS                  #Process filesystem
35 #options        COMPAT_43               #Compatible with BSD 4.3
36 options         COMPAT_DF12             #Compatible with DragonFly up to 1.2
37 options         SCSI_DELAY=5000         #Delay (in ms) before probing SCSI
38 options         IFPOLL_ENABLE           # Support mixed interrupt-polling
39                                         # handling of network device drivers
40 options         UCONSOLE                #Allow users to grab the console
41 options         USERCONFIG              #boot -c editor
42 options         VISUAL_USERCONFIG       #visual boot -c editor
43 options         KTRACE                  #ktrace(1) support
44 options         SYSVSHM                 #SYSV-style shared memory
45 options         SYSVMSG                 #SYSV-style message queues
46 options         SYSVSEM                 #SYSV-style semaphores
47 options         P1003_1B                #Posix P1003_1B real-time extensions
48 options         _KPOSIX_PRIORITY_SCHEDULING
49 options         ICMP_BANDLIM            #Rate limit bad replies
50 options         KBD_INSTALL_CDEV        # install a CDEV entry in /dev
51 options         AHC_REG_PRETTY_PRINT    # Print register bitfields in debug
52                                         # output.  Adds ~128k to driver.
53 options         AHD_REG_PRETTY_PRINT    # Print register bitfields in debug
54                                         # output.  Adds ~215k to driver.
55 options         DSCHED_FQ               # Fair-queuing disk scheduler
56
57 # ALTQ
58 options         ALTQ            #alternate queueing
59 options         ALTQ_CBQ        #class based queueing
60 options         ALTQ_RED        #random early detection
61 options         ALTQ_RIO        #triple red for diffserv (needs RED)
62 options         ALTQ_HFSC       #hierarchical fair service curve
63 options         ALTQ_PRIQ       #priority queue
64 options         ALTQ_FAIRQ      #fair queueing
65 #options        ALTQ_NOPCC      #don't use processor cycle counter
66 #options        ALTQ_DEBUG      #for debugging
67
68 # Debugging for Development
69 options         DDB
70 options         DDB_TRACE
71 options         INVARIANTS
72
73 device          isa
74 device          pci
75
76 # Floppy drives
77 device          fdc0    at isa? port IO_FD1 irq 6 drq 2
78 device          fd0     at fdc0 drive 0
79 device          fd1     at fdc0 drive 1
80 #
81 # If you have a Toshiba Libretto with its Y-E Data PCMCIA floppy,
82 # don't use the above line for fdc0 but the following one:
83 #device         fdc0
84
85 # AHCI driver, this will override NATA for AHCI devices,
86 # both drivers may be included.
87 #
88 device          ahci
89
90 # SiI3124/3132 driver
91 #
92 device          sili
93
94 # NEW-ATA (NATA) and ATAPI devices
95 #
96 device          nata
97 device          natadisk                # ATA disk drives
98 device          natapicd                # ATAPI CDROM drives
99 device          natapifd                # ATAPI floppy drives
100 device          natapist                # ATAPI tape drives
101 device          natapicam               # Emulate ATAPI devices as SCSI
102 device          nataraid                # support for ATA software RAID
103                                         # controllers
104 options         ATA_STATIC_ID           # Static device numbering
105
106 # SCSI Controllers
107 device          ahc             # AHA2940 and onboard AIC7xxx devices
108 device          ahd             # AHA39320/29320 and onboard AIC79xx devices
109 device          amd             # AMD 53C974 (Tekram DC-390(T))
110 device          isp             # Qlogic family
111 #device         ispfw           # Firmware for QLogic HBAs- normally a module
112 device          mpt             # LSI-Logic MPT/Fusion
113 device          mps             # LSI-Logic MPT-Fusion 2
114 device          ncr             # NCR/Symbios Logic
115 device          sym             # NCR/Symbios Logic (newer chipsets)
116 options         SYM_SETUP_LP_PROBE_MAP=0x40
117                                 # Allow ncr to attach legacy NCR devices when
118                                 # both sym and ncr are configured
119
120 device          adv0    at isa?
121 device          adw
122 device          bt
123 device          aic
124
125 device          ncv             # NCR 53C500
126 device          nsp             # Workbit Ninja SCSI-3
127 device          stg             # TMC 18C30/18C50
128
129 # SCSI peripherals
130 device          scbus           # SCSI bus (required)
131 device          da              # Direct Access (disks)
132 device          sa              # Sequential Access (tape etc)
133 device          cd              # CD
134 device          pass            # Passthrough device (direct SCSI access)
135 device          sg              # Passthrough device (linux scsi generic)
136
137 # RAID controllers interfaced to the SCSI subsystem
138 device          arcmsr          # Areca SATA II RAID
139 device          asr             # DPT SmartRAID V, VI and Adaptec SCSI RAID
140 device          ciss            # Compaq SmartRAID 5* series
141 device          dpt             # DPT Smartcache - See LINT for options!
142 device          "hpt27xx"       # Highpoint RocketRAID 27xx series
143 device          hptiop          # Highpoint RocketRAID 3xxx series
144 device          hptmv           # Highpoint RocketRAID 182x
145 device          hptrr           # Highpoint RocketRAID 17xx, 22xx, 23xx, 25xx
146 device          iir             # Intel Integrated RAID
147 device          mly             # Mylex AcceleRAID/eXtremeRAID
148 device          twa             # 3ware 9000 series PATA/SATA RAID
149 device          tws             # 3ware 9750 series SATA/SAS RAID
150
151 # RAID controllers
152 device          aac             # Adaptec FSA RAID, Dell PERC2/PERC3
153 device          aacp            # SCSI passthrough for aac (requires CAM)
154 device          amr             # AMI MegaRAID
155 device          amrp            # SCSI Passthrough interface (optional, CAM req.)
156 device          ida             # Compaq Smart RAID
157 device          ips             # IBM ServeRAID
158 device          mlx             # Mylex DAC960 family
159 device          mfi             # LSI MegaRAID SAS
160 device          mfip            # LSI MegaRAID SAS passthrough, requires CAM
161 device          pst             # Promise Supertrack
162 device          twe             # 3ware Escalade 7000/8000's
163
164 # VirtIO support
165 device          virtio          # VirtIO core
166 device          virtio_blk      # VirtIO disk driver
167 device          vtnet           # VirtIO network driver
168 device          virtio_pci      # VirtIO transport over PCI bus
169
170 # atkbdc0 controls both the keyboard and the PS/2 mouse
171 device          atkbdc0 at isa? port IO_KBD
172 device          atkbd0  at atkbdc? irq 1
173 device          psm0    at atkbdc? irq 12
174
175 device          vga0    at isa?
176
177 # kbdmux is the keyboard multiplexer
178 device          kbdmux
179
180 # splash screen/screen saver
181 pseudo-device   splash
182
183 # syscons is the default console driver, resembling an SCO console
184 device          sc0     at isa? flags 0x100
185 options         SC_PIXEL_MODE           # add support for the raster text mode
186
187 device          agp             # support several AGP chipsets
188
189 # Floating point support - do not disable.
190 device          npx0    at nexus? port IO_NPX irq 13
191
192 # Power management support (see LINT for more options)
193 device          apm0    at nexus? disable flags 0x20 # Advanced Power Management
194 # Intel performance-energy bias
195 device          perfbias
196 # Intel software controlled clock modulation
197 device          clockmod
198
199 # HW monitoring devices
200 #device         aps0    at isa? port 0x1600
201 device          lm0     at isa? port 0x290
202 device          it0     at isa? port 0x290
203 device          it1     at isa? port 0xc00
204 device          it2     at isa? port 0xd00
205 device          it3     at isa? port 0x228
206 device          wbsio0  at isa? port 0x2e
207 device          wbsio1  at isa? port 0x4e
208 device          lm#3    at wbsio?
209 # Intel Core and newer CPUs on-die digital thermal sensor support
210 device          coretemp
211
212 # PCCARD (PCMCIA) support
213 device          pccard
214 device          cardbus
215 device          cbb
216
217 # Serial (COM) ports
218 device          sio0    at isa? port IO_COM1 flags 0x10 irq 4
219 device          sio1    at isa? port IO_COM2 irq 3
220 device          sio2    at isa? disable port IO_COM3 irq 5
221 device          sio3    at isa? disable port IO_COM4 irq 9
222
223 # Parallel port
224 device          ppc0    at isa? irq 7
225 device          ppbus           # Parallel port bus (required)
226 device          lpt             # Printer
227 device          plip            # TCP/IP over parallel
228 device          ppi             # Parallel port interface device
229 #device         vpo             # Requires scbus and da
230
231 # PCI Ethernet NICs.
232 device          de              # DEC/Intel DC21x4x (``Tulip'')
233 device          txp             # 3Com 3cR990 (``Typhoon'')
234 device          vx              # 3Com 3c590, 3c595 (``Vortex'')
235
236 device          em              # Intel PRO/1000 adapter Gigabit Ethernet Card (``Wiseman'')
237                                 # Requires ig_hal
238 device          igb             # Intel Pro/1000 (82575, 82576, 82580, i350)
239                                 # Requires ig_hal
240 device          ig_hal          # Intel PRO/1000 hardware abstraction layer
241 device          ix              # Intel PRO/10GbE PCIE Ethernet Family
242
243 device          oce             # Emulex OneConnect 10Gb
244
245 # PCI Ethernet NICs that use the common MII bus controller code.
246 # NOTE: Be sure to keep the 'device miibus' line in order to use these NICs!
247 device          miibus          # MII bus support
248 device          ae              # Attansic/Atheros L2 Fast Ethernet
249 device          age             # Attansic/Atheros L1 Gigabit Ethernet
250 device          alc             # Atheros AR8131/AR8132
251 device          ale             # Atheros AR8121/AR8113/AR8114
252 device          bce             # Broadcom NetXtreme II Gigabit Ethernet
253 device          bfe             # Broadcom BCM440x 10/100 Ethernet
254 device          bnx             # Broadcom NetXtreme 5718/57785 Gigabit Ethernet
255 device          dc              # DEC/Intel 21143 and various workalikes
256 device          et              # Agere ET1310 10/100/1000 Ethernet
257 device          fxp             # Intel EtherExpress PRO/100B (82557, 82558)
258 device          jme             # JMicron Gigabit/Fast Ethernet
259 device          pcn             # AMD Am79C97x PCI 10/100 NICs
260 device          rl              # RealTek 8129/8139
261 device          re              # RealTek 8139C+/8169
262 device          sf              # Adaptec AIC-6915 (``Starfire'')
263 device          sis             # Silicon Integrated Systems SiS 900/SiS 7016
264 device          sk              # SysKonnect GEnesis, LinkSys EG1023, D-Link
265 device          ste             # Sundance ST201 (D-Link DFE-550TX)
266 device          tl              # Texas Instruments ThunderLAN
267 device          tx              # SMC EtherPower II (83c170 ``EPIC'')
268 device          vge             # VIA 612x GigE
269 device          vr              # VIA Rhine, Rhine II
270 device          wb              # Winbond W89C840F
271 device          xl              # 3Com 3c90x (``Boomerang'', ``Cyclone'')
272 device          bge             # Broadcom BCM570x (``Tigon III'')
273 device          stge            # Sundance/Tamarack TC9021 Gigabit Ethernet
274 device          msk             # Marvell/SysKonnect Yukon II Gigabit Ethernet
275 device          nfe             # NVIDIA nForce MCP 10/100/Gigabit Ethernet
276
277 # ISA Ethernet NICs.
278 # 'device ed' requires 'device miibus'
279 device          ed0     at isa? disable port 0x280 irq 10 iomem 0xd8000
280 device          ex
281 device          ep
282 device          fe0     at isa? disable port 0x300
283 # Xircom Ethernet
284 device          xe
285
286 # Wireless NIC cards
287 options         IEEE80211_DEBUG         #enable debugging msgs
288 options         IEEE80211_SUPPORT_MESH  #enable 802.11s D3.0 support
289 options         IEEE80211_SUPPORT_TDMA  #enable TDMA support
290 device          wlan            # 802.11 support
291 device          wlan_ccmp       # 802.11 CCMP support
292 device          wlan_tkip       # 802.11 TKIP support
293 device          wlan_wep        # 802.11 WEP support
294 #device         wlan_amrr       # AMRR
295
296 # All wireless NICs require wlan and wlan_amrr
297 # Aironet 4500/4800 802.11 wireless NICs.  Note: the declaration below will
298 # work for PCMCIA and PCI cards, as well as ISA cards set to ISA PnP
299 # mode (the factory default). If you set the switches on your ISA
300 # card for a manually chosen I/O address and IRQ, you must specify
301 # those parameters here.
302 device          an
303 device          ath             # Atheros NICs
304 device          ath_hal         # Atheros Hardware Access Layer
305 options         AH_SUPPORT_AR5416       # enable AR5416 tx/rx descriptors
306 device          ath_rate_sample # Atheros Sample TX rate control algorithm
307 device          siba_bwn        # Sonic Inc. Silicon Backplane needed for bwn
308 device          bwn             # Broadcom BCM43xx NICs using v4 firmware
309 device          ral             # Ralink Technology 802.11 wireless NIC
310 device          iwn             # Intel
311 #device         rtw             # RealTek 802.11 wireless NIC
312 # WaveLAN/IEEE 802.11 wireless NICs.  Note: the WaveLAN/IEEE really
313 # exists only as a PCMCIA device, so there is no ISA attachment needed
314 # and resources will always be dynamically assigned by the pccard code.
315 device          wi
316
317 device          lnc0    at isa? disable port 0x280 irq 10 drq 0
318 device          cs0     at isa? disable port 0x300
319 device          sn0     at isa? disable port 0x300 irq 10
320
321 # Pseudo devices - the number indicates how many units to allocate.
322 pseudo-device   loop            # Network loopback
323 pseudo-device   ether           # Ethernet support
324 pseudo-device   sl      1       # Kernel SLIP
325 pseudo-device   ppp     1       # Kernel PPP
326 pseudo-device   tun             # Packet tunnel.
327 pseudo-device   pty             # Pseudo-ttys (telnet etc)
328 pseudo-device   md              # Memory "disks"
329 pseudo-device   gif             # IPv6 and IPv4 tunneling
330 pseudo-device   faith   1       # IPv6-to-IPv4 relaying (translation)
331
332 # CARP support
333 options         CARP
334 pseudo-device   carp
335
336 # The `bpf' pseudo-device enables the Berkeley Packet Filter.
337 # Be aware of the administrative consequences of enabling this!
338 pseudo-device   bpf             #Berkeley packet filter
339
340 pseudo-device   crypto          # core crypto support, used by wlan
341 pseudo-device   cryptodev
342
343 # USB support
344 #
345 # NOTE: If you enable 'oldusb' you must also disable 'usb' and rebuild
346 #       the world with WANT_OLDUSB=true in /etc/make.conf, in addition
347 #       to rebuilding the kernel.
348 #
349 #device         oldusb          # use this instead of usb for the old stack
350 #device         natausb         # ATA-over-USB support (oldusb)
351 #device         ugen            # Generic (oldusb)
352 #device         uscanner        # Scanners (oldusb)
353 #device         urio            # Diamond Rio MP3 Player (oldusb)
354 #device         aue             # ADMtek USB ethernet (oldusb)
355 #device         cue             # CATC USB ethernet (oldusb)
356 #device         kue             # Kawasaki LSI USB ethernet (oldusb)
357 #device         rue             # RealTek 8150 based USB ethernet (oldusb)
358
359 device          usb             # USB Bus (required)
360 device          uhci            # UHCI PCI->USB interface
361 device          ohci            # OHCI PCI->USB interface
362 device          uhid            # "Human Interface Devices"
363 device          ukbd            # Keyboard
364 device          ulpt            # Printer
365 device          umass           # Disks/Mass storage - Requires scbus and da
366 device          ums             # Mouse
367 # USB Ethernet, requires mii
368 device          axe             # ASIX Electronics USB Ethernet
369 # USB wireless NICs, requires wlan, wlan_amrr
370 #device         rum             # Ralink Technology RT2501USB/RT2601USB
371 #device         ural            # Ralink Technology RT2500USB
372
373 # FireWire support
374 device          firewire        # FireWire bus code
375 device          sbp             # SCSI over FireWire (Requires scbus and da)
376 device          fwe             # Ethernet over FireWire (non-standard!)
377
378 # MMC/SD
379 device          mmc
380 device          mmcsd
381 device          sdhci
382
383 # RNG
384 #
385 device          aesni           # hardware crypto/RNG for AES-NI
386 #device          glxsb           # Geode LX Security Block
387 device          padlock         # hardware crypto/RNG for VIA C3/C7/Eden
388 device          rdrand          # hardware RNG for RdRand