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