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