Add tws(4), a driver for the LSI 3ware 9750 series SATA/SAS RAID controllers.
[dragonfly.git] / sys / config / GENERIC_SMP
1 #
2 # GENERIC_SMP -- 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_SMP
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 [KEEP THIS!]
36 options         COMPAT_DF12             #Compatible with DragonFly 1.2 and earlier
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         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 # SMP boxes should normally be build with SMP and APIC_IO.  If SMP has
69 # interrupt routing problems in APIC_IO you can disable it with the
70 # hw.apic_io_enable=0 tunable or by building without the APIC_IO option.
71 #
72 #
73 options         SMP                     # Symmetric MultiProcessor Kernel
74 options         APIC_IO                 # hw.apic_io_enable = 1 by default
75
76 # Debugging for Development
77 options         DDB
78 options         DDB_TRACE
79 options         INVARIANTS
80
81 device          isa
82 device          pci
83
84 # Floppy drives
85 device          fdc0    at isa? port IO_FD1 irq 6 drq 2
86 device          fd0     at fdc0 drive 0
87 device          fd1     at fdc0 drive 1
88 #
89 # If you have a Toshiba Libretto with its Y-E Data PCMCIA floppy,
90 # don't use the above line for fdc0 but the following one:
91 #device         fdc0
92
93 # AHCI driver, this will override NATA for AHCI devices,
94 # both drivers may be included.
95 #
96 device          ahci
97
98 # SiI3124/3132 driver
99 #
100 device          sili
101
102 # NEW-ATA (NATA) and ATAPI devices
103 #
104 device          nata
105 device          natadisk                # ATA disk drives
106 device          natapicd                # ATAPI CDROM drives
107 device          natapifd                # ATAPI floppy drives
108 device          natapist                # ATAPI tape drives
109 device          natapicam               # Emulate ATAPI devices as SCSI
110 device          nataraid                # support for ATA software RAID
111                                         # controllers
112 device          natausb                 # ATA-over-USB support
113 options         ATA_STATIC_ID           # Static device numbering
114
115 # LEGACY ATA and ATAPI devices
116 #device         ata0    at isa? port IO_WD1 irq 14
117 #device         ata1    at isa? port IO_WD2 irq 15
118 #device         ata
119 #device         atadisk                 # ATA disk drives
120 #device         atapicd                 # ATAPI CDROM drives
121 #device         atapifd                 # ATAPI floppy drives
122 #device         atapist                 # ATAPI tape drives
123 #device         atapicam                # Emulate ATAPI devices as SCSI via CAM
124 #options        ATA_STATIC_ID           #Static device numbering
125
126 # SCSI Controllers
127 device          ahc             # AHA2940 and onboard AIC7xxx devices
128 device          ahd             # AHA39320/29320 and onboard AIC79xx devices
129 device          amd             # AMD 53C974 (Tekram DC-390(T))
130 device          isp             # Qlogic family
131 device          mpt             # LSI-Logic MPT/Fusion
132 device          ncr             # NCR/Symbios Logic
133 device          sym             # NCR/Symbios Logic (newer chipsets)
134 options         SYM_SETUP_LP_PROBE_MAP=0x40
135                                 # Allow ncr to attach legacy NCR devices when
136                                 # both sym and ncr are configured
137
138 device          adv0    at isa?
139 device          adw
140 device          bt0     at isa?
141 device          aha0    at isa?
142 device          aic0    at isa?
143
144 device          ncv             # NCR 53C500
145 device          nsp             # Workbit Ninja SCSI-3
146 device          stg             # TMC 18C30/18C50
147
148 # SCSI peripherals
149 device          scbus           # SCSI bus (required)
150 device          da              # Direct Access (disks)
151 device          sa              # Sequential Access (tape etc)
152 device          cd              # CD
153 device          pass            # Passthrough device (direct SCSI access)
154 device          sg              # Passthrough device (linux scsi generic)
155
156 # RAID controllers interfaced to the SCSI subsystem
157 device          arcmsr          # Areca SATA II RAID
158 device          asr             # DPT SmartRAID V, VI and Adaptec SCSI RAID
159 device          ciss            # Compaq SmartRAID 5* series
160 device          dpt             # DPT Smartcache - See LINT for options!
161 device          hptiop          # Highpoint RocketRaid 3xxx series
162 device          hptmv           # Highpoint RocketRAID 182x
163 device          iir             # Intel Integrated RAID
164 device          mly             # Mylex AcceleRAID/eXtremeRAID
165 device          twa             # 3ware 9000 series PATA/SATA RAID
166 device          tws             # 3ware 9750 series SATA/SAS RAID
167
168 # RAID controllers
169 device          aac             # Adaptec FSA RAID, Dell PERC2/PERC3
170 #device         aacp            # SCSI passthrough for aac (requires CAM)
171 device          amr             # AMI MegaRAID
172 device          amrp            # SCSI Passthrough interface (optional, CAM req.)
173 device          ida             # Compaq Smart RAID
174 device          ips             # IBM ServeRAID
175 device          mlx             # Mylex DAC960 family
176 device          mfi             # LSI MegaRAID SAS
177 device          mfip            # LSI MegaRAID SAS passthrough, requires CAM
178 device          pst             # Promise Supertrack
179 device          twe             # 3ware Escalade 7000/8000's
180
181 # atkbdc0 controls both the keyboard and the PS/2 mouse
182 device          atkbdc0 at isa? port IO_KBD
183 device          atkbd0  at atkbdc? irq 1 flags 0x1
184 device          psm0    at atkbdc? irq 12
185
186 device          vga0    at isa?
187
188 # kbdmux is the keyboard multiplexer
189 device          kbdmux
190
191 # splash screen/screen saver
192 pseudo-device   splash
193
194 # syscons is the default console driver, resembling an SCO console
195 device          sc0     at isa? flags 0x100
196 options         SC_PIXEL_MODE           # add support for the raster text mode
197
198 device          agp             # support several AGP chipsets
199
200 # Floating point support - do not disable.
201 device          npx0    at nexus? port IO_NPX irq 13
202
203 # Power management support (see LINT for more options)
204 device          apm0    at nexus? disable flags 0x20 # Advanced Power Management
205
206 # HW monitoring devices
207 device          aps0    at isa? port 0x1600
208 device          lm0     at isa? port 0x290
209 device          it0     at isa? port 0x290
210 device          it1     at isa? port 0xc00
211 device          it2     at isa? port 0xd00
212 device          it3     at isa? port 0x228
213 device          wbsio0  at isa? port 0x2e
214 device          wbsio1  at isa? port 0x4e
215 device          lm#3    at wbsio?
216
217 # PCCARD (PCMCIA) support
218 device          pccard
219 device          cardbus
220 device          cbb
221
222 # Serial (COM) ports
223 device          sio0    at isa? port IO_COM1 flags 0x10 irq 4
224 device          sio1    at isa? port IO_COM2 irq 3
225 device          sio2    at isa? disable port IO_COM3 irq 5
226 device          sio3    at isa? disable port IO_COM4 irq 9
227
228 # Parallel port
229 device          ppc0    at isa? irq 7
230 device          ppbus           # Parallel port bus (required)
231 device          lpt             # Printer
232 device          plip            # TCP/IP over parallel
233 device          ppi             # Parallel port interface device
234 #device         vpo             # Requires scbus and da
235
236 # PCI Ethernet NICs.
237 device          de              # DEC/Intel DC21x4x (``Tulip'')
238 device          txp             # 3Com 3cR990 (``Typhoon'')
239 device          vx              # 3Com 3c590, 3c595 (``Vortex'')
240
241 device          em              # Intel PRO/1000 adapter Gigabit Ethernet Card (``Wiseman'')
242                                 # Requires ig_hal
243 device          ig_hal          # Intel PRO/1000 hardware abstraction layer
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          dc              # DEC/Intel 21143 and various workalikes
255 device          et              # Agere ET1310 10/100/1000 Ethernet
256 device          fxp             # Intel EtherExpress PRO/100B (82557, 82558)
257 device          jme             # JMicron Gigabit/Fast Ethernet
258 device          pcn             # AMD Am79C97x PCI 10/100 NICs
259 device          rl              # RealTek 8129/8139
260 device          re              # RealTek 8139C+/8169
261 device          sf              # Adaptec AIC-6915 (``Starfire'')
262 device          sis             # Silicon Integrated Systems SiS 900/SiS 7016
263 device          sk              # SysKonnect GEnesis, LinkSys EG1023, D-Link
264 device          ste             # Sundance ST201 (D-Link DFE-550TX)
265 device          tl              # Texas Instruments ThunderLAN
266 device          tx              # SMC EtherPower II (83c170 ``EPIC'')
267 device          vge             # VIA 612x GigE
268 device          vr              # VIA Rhine, Rhine II
269 device          wb              # Winbond W89C840F
270 device          xl              # 3Com 3c90x (``Boomerang'', ``Cyclone'')
271 device          bge             # Broadcom BCM570x (``Tigon III'')
272 device          stge            # Sundance/Tamarack TC9021 Gigabit Ethernet
273 device          msk             # Marvell/SysKonnect Yukon II Gigabit Ethernet
274 device          nfe             # NVIDIA nForce MCP 10/100/Gigabit Ethernet
275
276 # ISA Ethernet NICs.
277 # 'device ed' requires 'device miibus'
278 device          ed0     at isa? disable port 0x280 irq 10 iomem 0xd8000
279 device          ex
280 device          ep
281 device          fe0     at isa? disable port 0x300
282 # Xircom Ethernet
283 device          xe
284
285 # Wireless NIC cards
286 options         IEEE80211_DEBUG         #enable debugging msgs
287 options         IEEE80211_SUPPORT_MESH  #enable 802.11s D3.0 support
288 options         IEEE80211_SUPPORT_TDMA  #enable TDMA support
289 device          wlan            # 802.11 support
290 device          wlan_ccmp       # 802.11 CCMP support
291 device          wlan_tkip       # 802.11 TKIP support
292 device          wlan_wep        # 802.11 WEP support
293 #device         wlan_amrr       # AMRR
294
295 # All wireless NICs require wlan and wlan_amrr
296 # Aironet 4500/4800 802.11 wireless NICs.  Note: the declaration below will
297 # work for PCMCIA and PCI cards, as well as ISA cards set to ISA PnP
298 # mode (the factory default). If you set the switches on your ISA
299 # card for a manually chosen I/O address and IRQ, you must specify
300 # those parameters here.
301 device          an
302 device          ral             # Ralink Technology 802.11 wireless NIC
303 #device         rtw             # RealTek 802.11 wireless NIC
304 # WaveLAN/IEEE 802.11 wireless NICs.  Note: the WaveLAN/IEEE really
305 # exists only as a PCMCIA device, so there is no ISA attachment needed
306 # and resources will always be dynamically assigned by the pccard code.
307 device          wi
308
309 # The probe order of these is presently determined by i386/isa/isa_compat.c.
310 device          ie0     at isa? disable port 0x300 irq 10 iomem 0xd0000
311 #device         le0     at isa? disable port 0x300 irq 5 iomem 0xd0000
312 device          lnc0    at isa? disable port 0x280 irq 10 drq 0
313 device          cs0     at isa? disable port 0x300
314 device          sn0     at isa? disable port 0x300 irq 10
315
316 # Pseudo devices - the number indicates how many units to allocate.
317 pseudo-device   loop            # Network loopback
318 pseudo-device   ether           # Ethernet support
319 pseudo-device   sl      1       # Kernel SLIP
320 pseudo-device   ppp     1       # Kernel PPP
321 pseudo-device   tun             # Packet tunnel.
322 pseudo-device   pty             # Pseudo-ttys (telnet etc)
323 pseudo-device   md              # Memory "disks"
324 pseudo-device   gif             # IPv6 and IPv4 tunneling
325 pseudo-device   faith   1       # IPv6-to-IPv4 relaying (translation)
326
327 # The `bpf' pseudo-device enables the Berkeley Packet Filter.
328 # Be aware of the administrative consequences of enabling this!
329 pseudo-device   bpf             #Berkeley packet filter
330
331 pseudo-device   crypto          # core crypto support, used by wlan
332 pseudo-device   cryptodev
333
334 # USB support
335 device          uhci            # UHCI PCI->USB interface
336 device          ohci            # OHCI PCI->USB interface
337 device          usb             # USB Bus (required)
338 device          ugen            # Generic
339 device          uhid            # "Human Interface Devices"
340 device          ukbd            # Keyboard
341 device          ulpt            # Printer
342 device          umass           # Disks/Mass storage - Requires scbus and da
343 device          ums             # Mouse
344 device          uscanner        # Scanners
345 device          urio            # Diamond Rio MP3 Player
346 # USB Ethernet, requires mii
347 device          aue             # ADMtek USB ethernet
348 device          axe             # ASIX Electronics USB Ethernet
349 device          cue             # CATC USB ethernet
350 device          kue             # Kawasaki LSI USB ethernet
351 device          rue             # RealTek 8150 based USB ethernet
352 # USB wireless NICs, requires wlan, wlan_amrr
353 #device         rum             # Ralink Technology RT2501USB/RT2601USB
354 #device         ural            # Ralink Technology RT2500USB
355
356 # FireWire support
357 device          firewire        # FireWire bus code
358 device          sbp             # SCSI over FireWire (Requires scbus and da)
359 device          fwe             # Ethernet over FireWire (non-standard!)