Move the FreeBSD 2.2 and 3.x PCI compatibility code into pci_compat.c and let it
[dragonfly.git] / sys / config / GENERIC
1 #
2 # GENERIC -- Generic kernel configuration file for FreeBSD/i386
3 #
4 # For more information on this file, please read the handbook section on
5 # Kernel Configuration Files:
6 #
7 #    http://www.FreeBSD.org/doc/en_US.ISO8859-1/books/handbook/kernelconfig-config.html
8 #
9 # The handbook is also available locally in /usr/share/doc/handbook
10 # if you've installed the doc distribution, otherwise always see the
11 # FreeBSD World Wide Web server (http://www.FreeBSD.org/) for the
12 # latest information.
13 #
14 # An exhaustive list of options and more detailed explanations of the
15 # device lines is also present in the ./LINT configuration file. If you are
16 # in doubt as to the purpose or necessity of a line, check first in LINT.
17 #
18 # $FreeBSD: src/sys/i386/conf/GENERIC,v 1.246.2.54 2003/04/28 03:41:46 simokawa Exp $
19 # $DragonFly: src/sys/config/GENERIC,v 1.6 2003/12/27 03:17:21 drhodus Exp $
20
21 machine         i386
22 cpu             I386_CPU
23 cpu             I486_CPU
24 cpu             I586_CPU
25 cpu             I686_CPU
26 ident           GENERIC
27 maxusers        0
28
29 makeoptions     DEBUG=-g                #Build kernel with gdb(1) debug symbols
30
31 options         MATH_EMULATE            #Support for x87 emulation
32 options         INET                    #InterNETworking
33 options         INET6                   #IPv6 communications protocols
34 options         FFS                     #Berkeley Fast Filesystem
35 options         FFS_ROOT                #FFS usable as root device [keep this!]
36 options         SOFTUPDATES             #Enable FFS soft updates support
37 options         UFS_DIRHASH             #Improve performance on big directories
38 options         MFS                     #Memory Filesystem
39 options         MD_ROOT                 #MD is a potential root device
40 options         NFS                     #Network Filesystem
41 options         NFS_ROOT                #NFS usable as root device, NFS required
42 options         MSDOSFS                 #MSDOS Filesystem
43 options         CD9660                  #ISO 9660 Filesystem
44 options         CD9660_ROOT             #CD-ROM usable as root, CD9660 required
45 options         PROCFS                  #Process filesystem
46 options         COMPAT_43               #Compatible with BSD 4.3 [KEEP THIS!]
47 options         SCSI_DELAY=15000        #Delay (in ms) before probing SCSI
48 options         UCONSOLE                #Allow users to grab the console
49 options         USERCONFIG              #boot -c editor
50 options         VISUAL_USERCONFIG       #visual boot -c editor
51 options         KTRACE                  #ktrace(1) support
52 options         SYSVSHM                 #SYSV-style shared memory
53 options         SYSVMSG                 #SYSV-style message queues
54 options         SYSVSEM                 #SYSV-style semaphores
55 options         P1003_1B                #Posix P1003_1B real-time extensions
56 options         _KPOSIX_PRIORITY_SCHEDULING
57 options         ICMP_BANDLIM            #Rate limit bad replies
58 options         KBD_INSTALL_CDEV        # install a CDEV entry in /dev
59 options         AHC_REG_PRETTY_PRINT    # Print register bitfields in debug
60                                         # output.  Adds ~128k to driver.
61 options         AHD_REG_PRETTY_PRINT    # Print register bitfields in debug 
62                                         # output.  Adds ~215k to driver.
63
64 # To make an SMP kernel, the next two are needed
65 #options        SMP                     # Symmetric MultiProcessor Kernel
66 #options        APIC_IO                 # Symmetric (APIC) I/O
67
68 # To support HyperThreading, HTT is needed in addition to SMP and APIC_IO
69 #options        HTT                     # HyperThreading Technology
70
71 # Debugging for Development
72 options         DDB
73 options         INVARIANTS
74 options         INVARIANT_SUPPORT
75
76
77
78 device          isa
79 device          eisa
80 device          pci
81
82 # Floppy drives
83 device          fdc0    at isa? port IO_FD1 irq 6 drq 2
84 device          fd0     at fdc0 drive 0
85 device          fd1     at fdc0 drive 1
86 #
87 # If you have a Toshiba Libretto with its Y-E Data PCMCIA floppy,
88 # don't use the above line for fdc0 but the following one:
89 #device         fdc0
90
91 # ATA and ATAPI devices
92 device          ata0    at isa? port IO_WD1 irq 14
93 device          ata1    at isa? port IO_WD2 irq 15
94 device          ata
95 device          atadisk                 # ATA disk drives
96 device          atapicd                 # ATAPI CDROM drives
97 device          atapifd                 # ATAPI floppy drives
98 device          atapist                 # ATAPI tape drives
99 options         ATA_STATIC_ID           #Static device numbering
100
101 # SCSI Controllers
102 device          ahb             # EISA AHA1742 family
103 device          ahc             # AHA2940 and onboard AIC7xxx devices
104 device          ahd             # AHA39320/29320 and onboard AIC79xx devices
105 device          amd             # AMD 53C974 (Tekram DC-390(T))
106 device          isp             # Qlogic family
107 device          mpt             # LSI-Logic MPT/Fusion
108 device          ncr             # NCR/Symbios Logic
109 device          sym             # NCR/Symbios Logic (newer chipsets)
110 options         SYM_SETUP_LP_PROBE_MAP=0x40
111                                 # Allow ncr to attach legacy NCR devices when 
112                                 # both sym and ncr are configured
113
114 device          adv0    at isa?
115 device          adw
116 device          bt0     at isa?
117 device          aha0    at isa?
118 device          aic0    at isa?
119
120 device          ncv             # NCR 53C500
121 device          nsp             # Workbit Ninja SCSI-3
122 device          stg             # TMC 18C30/18C50
123
124 # SCSI peripherals
125 device          scbus           # SCSI bus (required)
126 device          da              # Direct Access (disks)
127 device          sa              # Sequential Access (tape etc)
128 device          cd              # CD
129 device          pass            # Passthrough device (direct SCSI access)
130
131 # RAID controllers interfaced to the SCSI subsystem
132 device          asr             # DPT SmartRAID V, VI and Adaptec SCSI RAID
133 device          dpt             # DPT Smartcache - See LINT for options!
134 device          iir             # Intel Integrated RAID
135 device          mly             # Mylex AcceleRAID/eXtremeRAID
136 device          ciss            # Compaq SmartRAID 5* series
137
138 # RAID controllers
139 device          aac             # Adaptec FSA RAID, Dell PERC2/PERC3
140 #device         aacp            # SCSI passthrough for aac (requires CAM)
141 device          ida             # Compaq Smart RAID
142 device          amr             # AMI MegaRAID
143 device          mlx             # Mylex DAC960 family
144 device          twe             # 3ware Escalade
145 device          pst             # Promise Supertrack
146
147 # atkbdc0 controls both the keyboard and the PS/2 mouse
148 device          atkbdc0 at isa? port IO_KBD
149 device          atkbd0  at atkbdc? irq 1 flags 0x1
150 device          psm0    at atkbdc? irq 12
151
152 device          vga0    at isa?
153
154 # splash screen/screen saver
155 pseudo-device   splash
156
157 # syscons is the default console driver, resembling an SCO console
158 device          sc0     at isa? flags 0x100
159
160 # Enable this and PCVT_FREEBSD for pcvt vt220 compatible console driver
161 #device         vt0     at isa?
162 #options        XSERVER                 # support for X server on a vt console
163 #options        FAT_CURSOR              # start with block cursor
164 # If you have a ThinkPAD, uncomment this along with the rest of the PCVT lines
165 #options        PCVT_SCANSET=2          # IBM keyboards are non-std
166
167 device          agp             # support several AGP chipsets
168
169 # Floating point support - do not disable.
170 device          npx0    at nexus? port IO_NPX irq 13
171
172 # Power management support (see LINT for more options)
173 device          apm0    at nexus? disable flags 0x20 # Advanced Power Management
174
175 # PCCARD (PCMCIA) support
176 device          card
177 device          pcic0   at isa? irq 0 port 0x3e0 iomem 0xd0000
178 device          pcic1   at isa? irq 0 port 0x3e2 iomem 0xd4000 disable
179
180 # Serial (COM) ports
181 device          sio0    at isa? port IO_COM1 flags 0x10 irq 4
182 device          sio1    at isa? port IO_COM2 irq 3
183 device          sio2    at isa? disable port IO_COM3 irq 5
184 device          sio3    at isa? disable port IO_COM4 irq 9
185
186 # Parallel port
187 device          ppc0    at isa? irq 7
188 device          ppbus           # Parallel port bus (required)
189 device          lpt             # Printer
190 device          plip            # TCP/IP over parallel
191 device          ppi             # Parallel port interface device
192 #device         vpo             # Requires scbus and da
193
194
195 # PCI Ethernet NICs.
196 device          de              # DEC/Intel DC21x4x (``Tulip'')
197 device          em              # Intel PRO/1000 adapter Gigabit Ethernet Card (``Wiseman'')
198 device          txp             # 3Com 3cR990 (``Typhoon'')
199 device          vx              # 3Com 3c590, 3c595 (``Vortex'')
200
201 # PCI Ethernet NICs that use the common MII bus controller code.
202 # NOTE: Be sure to keep the 'device miibus' line in order to use these NICs!
203 device          miibus          # MII bus support
204 device          dc              # DEC/Intel 21143 and various workalikes
205 device          fxp             # Intel EtherExpress PRO/100B (82557, 82558)
206 device          pcn             # AMD Am79C97x PCI 10/100 NICs
207 device          rl              # RealTek 8129/8139
208 device          sf              # Adaptec AIC-6915 (``Starfire'')
209 device          sis             # Silicon Integrated Systems SiS 900/SiS 7016
210 device          ste             # Sundance ST201 (D-Link DFE-550TX)
211 device          tl              # Texas Instruments ThunderLAN
212 device          tx              # SMC EtherPower II (83c170 ``EPIC'')
213 device          vr              # VIA Rhine, Rhine II
214 device          wb              # Winbond W89C840F
215 device          xl              # 3Com 3c90x (``Boomerang'', ``Cyclone'')
216 device          bge             # Broadcom BCM570x (``Tigon III'')
217
218 # ISA Ethernet NICs.
219 # 'device ed' requires 'device miibus'
220 device          ed0     at isa? disable port 0x280 irq 10 iomem 0xd8000
221 device          ex
222 device          ep
223 device          fe0     at isa? disable port 0x300
224 # Xircom Ethernet
225 device          xe
226 # PRISM I IEEE 802.11b wireless NIC.
227 device          awi
228 # WaveLAN/IEEE 802.11 wireless NICs. Note: the WaveLAN/IEEE really
229 # exists only as a PCMCIA device, so there is no ISA attachment needed
230 # and resources will always be dynamically assigned by the pccard code.
231 device          wi
232 # Aironet 4500/4800 802.11 wireless NICs. Note: the declaration below will
233 # work for PCMCIA and PCI cards, as well as ISA cards set to ISA PnP
234 # mode (the factory default). If you set the switches on your ISA
235 # card for a manually chosen I/O address and IRQ, you must specify
236 # those parameters here.
237 device          an
238 # The probe order of these is presently determined by i386/isa/isa_compat.c.
239 device          ie0     at isa? disable port 0x300 irq 10 iomem 0xd0000
240 #device         le0     at isa? disable port 0x300 irq 5 iomem 0xd0000
241 device          lnc0    at isa? disable port 0x280 irq 10 drq 0
242 device          cs0     at isa? disable port 0x300
243 device          sn0     at isa? disable port 0x300 irq 10
244
245 # Pseudo devices - the number indicates how many units to allocate.
246 pseudo-device   loop            # Network loopback
247 pseudo-device   ether           # Ethernet support
248 pseudo-device   sl      1       # Kernel SLIP
249 pseudo-device   ppp     1       # Kernel PPP
250 pseudo-device   tun             # Packet tunnel.
251 pseudo-device   pty             # Pseudo-ttys (telnet etc)
252 pseudo-device   md              # Memory "disks"
253 pseudo-device   gif             # IPv6 and IPv4 tunneling
254 pseudo-device   faith   1       # IPv6-to-IPv4 relaying (translation)
255
256 # The `bpf' pseudo-device enables the Berkeley Packet Filter.
257 # Be aware of the administrative consequences of enabling this!
258 pseudo-device   bpf             #Berkeley packet filter
259 #options                PFIL_HOOKS      #Packetfilter hooks
260
261 # USB support
262 device          uhci            # UHCI PCI->USB interface
263 device          ohci            # OHCI PCI->USB interface
264 device          usb             # USB Bus (required)
265 device          ugen            # Generic
266 device          uhid            # "Human Interface Devices"
267 device          ukbd            # Keyboard
268 device          ulpt            # Printer
269 device          umass           # Disks/Mass storage - Requires scbus and da
270 device          ums             # Mouse
271 device          uscanner        # Scanners
272 device          urio            # Diamond Rio MP3 Player
273 # USB Ethernet, requires mii
274 device          aue             # ADMtek USB ethernet
275 device          cue             # CATC USB ethernet
276 device          kue             # Kawasaki LSI USB ethernet
277
278 # FireWire support
279 device          firewire        # FireWire bus code
280 device          sbp             # SCSI over FireWire (Requires scbus and da)
281 device          fwe             # Ethernet over FireWire (non-standard!)