xref: /freebsd/sys/i386/conf/GENERIC (revision 521c57eb699f3a2ca79cbc0306e01bd61c6fa288)
1677060b4SPoul-Henning Kamp#
297555463SGary Palmer# GENERIC -- Generic machine with WD/AHx/NCR/BTx family disks
3677060b4SPoul-Henning Kamp#
4d571daa0SJordan K. Hubbard# For more information on this file, please read the handbook section on
5d571daa0SJordan K. Hubbard# Kernel Configuration Files:
6d571daa0SJordan K. Hubbard#
7d571daa0SJordan K. Hubbard#    http://www.freebsd.org/handbook/kernelconfig-config.html
8d571daa0SJordan K. Hubbard#
9d571daa0SJordan K. Hubbard# The handbook is also available locally in /usr/share/doc/handbook
10d571daa0SJordan K. Hubbard# if you've installed the doc distribution, otherwise always see the
11d571daa0SJordan K. Hubbard# FreeBSD World Wide Web server (http://www.FreeBSD.ORG/) for the
12d571daa0SJordan K. Hubbard# latest information.
13677060b4SPoul-Henning Kamp#
148830dd31SWolfram Schneider# An exhaustive list of options and more detailed explanations of the
15d571daa0SJordan K. Hubbard# device lines is also present in the ./LINT configuration file. If you are
168830dd31SWolfram Schneider# in doubt as to the purpose or necessity of a line, check first in LINT.
178830dd31SWolfram Schneider#
18c3aac50fSPeter Wemm# $FreeBSD$
19677060b4SPoul-Henning Kamp
205895e3c8SPeter Wemmmachine		i386
215895e3c8SPeter Wemmcpu		I386_CPU
225895e3c8SPeter Wemmcpu		I486_CPU
235895e3c8SPeter Wemmcpu		I586_CPU
245895e3c8SPeter Wemmcpu		I686_CPU
25677060b4SPoul-Henning Kampident		GENERIC
2614b1f190SMike Smithmaxusers	32
27677060b4SPoul-Henning Kamp
285895e3c8SPeter Wemm#makeoptions	DEBUG=-g		#Build kernel with gdb(1) debug symbols
2911290483SPeter Wemm
30cec9e91fSJustin T. Gibbsoptions 	MATH_EMULATE		#Support for x87 emulation
31677060b4SPoul-Henning Kampoptions 	INET			#InterNETworking
324525c93eSJordan K. Hubbardoptions 	FFS			#Berkeley Fast Filesystem
337b778b5eSEivind Eklundoptions 	FFS_ROOT		#FFS usable as root device [keep this!]
3471e4fff8SPoul-Henning Kampoptions 	MD_ROOT			#MD is a potential root device
35cbe7e088SJordan K. Hubbardoptions 	MFS			#Memory Filesystem
36a788bdc4SDavid E. O'Brienoptions 	NFS			#Network Filesystem
37a788bdc4SDavid E. O'Brienoptions 	NFS_ROOT		#NFS usable as root device, "NFS" req'ed
38a788bdc4SDavid E. O'Brienoptions 	MSDOSFS			#MSDOS Filesystem
395895e3c8SPeter Wemmoptions 	CD9660			#ISO 9660 Filesystem
405895e3c8SPeter Wemmoptions 	CD9660_ROOT		#CD-ROM usable as root. "CD9660" req'ed
41677060b4SPoul-Henning Kampoptions 	PROCFS			#Process filesystem
425895e3c8SPeter Wemmoptions 	COMPAT_43		#Compatible with BSD 4.3 [KEEP THIS!]
43700daf5eSJustin T. Gibbsoptions 	SCSI_DELAY=15000	#Be pessimistic about Joe SCSI device
440dd1eea1SJordan K. Hubbardoptions 	UCONSOLE		#Allow users to grab the console
4596fc6efbSPoul-Henning Kampoptions 	USERCONFIG		#boot -c editor
4696fc6efbSPoul-Henning Kampoptions 	VISUAL_USERCONFIG	#visual boot -c editor
471f06573dSPeter Wemmoptions 	KTRACE			#ktrace(1) syscall trace support
481f06573dSPeter Wemmoptions 	SYSVSHM			#SYSV-style shared memory
491f06573dSPeter Wemmoptions 	SYSVMSG			#SYSV-style message queues
501f06573dSPeter Wemmoptions 	SYSVSEM			#SYSV-style semaphores
51677060b4SPoul-Henning Kamp
528fab58d8SPoul-Henning Kamp# To make an SMP kernel, the next two are needed
538fab58d8SPoul-Henning Kamp#options 	SMP			# Symmetric MultiProcessor Kernel
548fab58d8SPoul-Henning Kamp#options 	APIC_IO			# Symmetric (APIC) I/O
558fab58d8SPoul-Henning Kamp# Optionally these may need tweaked, (defaults shown):
568fab58d8SPoul-Henning Kamp#options 	NCPU=2			# number of CPUs
578fab58d8SPoul-Henning Kamp#options 	NBUS=4			# number of busses
588fab58d8SPoul-Henning Kamp#options 	NAPIC=1			# number of IO APICs
598fab58d8SPoul-Henning Kamp#options 	NINTR=24		# number of INTs
608fab58d8SPoul-Henning Kamp
61f71c851cSPeter Wemmcontroller	isa0
62f71c851cSPeter Wemmcontroller	pnp0			# PnP support for ISA
63f71c851cSPeter Wemmcontroller	eisa0
64f71c851cSPeter Wemmcontroller	pci0
65677060b4SPoul-Henning Kamp
661f06573dSPeter Wemm# Floppy drives
675895e3c8SPeter Wemmcontroller	fdc0	at isa? port IO_FD1 irq 6 drq 2
6851124de7SPeter Wemmdevice		fd0	at fdc0 drive 0
6951124de7SPeter Wemmdevice		fd1	at fdc0 drive 1
70677060b4SPoul-Henning Kamp
711f06573dSPeter Wemm# IDE controller and disks
725895e3c8SPeter Wemmcontroller	wdc0	at isa? port IO_WD1 irq 14
7351124de7SPeter Wemmdevice		wd0	at wdc0 drive 0
7451124de7SPeter Wemmdevice		wd1	at wdc0 drive 1
75677060b4SPoul-Henning Kamp
765895e3c8SPeter Wemmcontroller	wdc1	at isa? port IO_WD2 irq 15
7751124de7SPeter Wemmdevice		wd2	at wdc1 drive 0
7851124de7SPeter Wemmdevice		wd3	at wdc1 drive 1
79677060b4SPoul-Henning Kamp
805895e3c8SPeter Wemm# ATAPI devices on wdc?
81d99434fbSSøren Schmidtdevice		wcd0		#IDE CD-ROM
82aaf86206SPaul Trainadevice		wfd0		#IDE Floppy (e.g. LS-120)
835895e3c8SPeter Wemmdevice		wst0		#IDE Tape (e.g. Travan)
846788ce49SJordan K. Hubbard
8561677ebbSDavid E. O'Brien# The 'ATA' driver supports all ATA and ATAPI devices.
8661677ebbSDavid E. O'Brien# It can reuse the majors of wd.c for booting purposes.
8761677ebbSDavid E. O'Brien# You only need one "controller ata0" for it to find all
8861677ebbSDavid E. O'Brien# PCI ATA/ATAPI devices on modern machines.
8961677ebbSDavid E. O'Brien#controller	ata0
9061677ebbSDavid E. O'Brien#device		atadisk0	# ATA disk drives
9161677ebbSDavid E. O'Brien#device		atapicd0	# ATAPI CDROM drives
9261677ebbSDavid E. O'Brien#device		atapifd0	# ATAPI floppy drives
9361677ebbSDavid E. O'Brien#device		atapist0	# ATAPI tape drives
9461677ebbSDavid E. O'Brien#options 	ATA_STATIC_ID		#Static dev number like old `wd' driver
9561677ebbSDavid E. O'Brien#options 	ATA_ENABLE_ATAPI_DMA	#Enable DMA on ATAPI devices
9661677ebbSDavid E. O'Brien
971f06573dSPeter Wemm# SCSI Controllers
98521c57ebSDavid E. O'Brien# A single entry for any of these controllers (ahb, ahc, amd, ncr, etc...) is
9956ecc382SStefan Eßer# sufficient for any number of installed devices.
1001f06573dSPeter Wemmcontroller	ahb0		# EISA AHA1742 family
1011f06573dSPeter Wemmcontroller	ahc0		# AHA2940 and onboard AIC7xxx devices
1020e985713SJustin T. Gibbscontroller	amd0		# AMD 53C974 (Teckram DC-390(T))
1031f06573dSPeter Wemmcontroller	dpt0		# DPT Smartcache - See LINT for options!
104521c57ebSDavid E. O'Briencontroller	isp0		# Qlogic family
105521c57ebSDavid E. O'Briencontroller	ncr0		# NCR/Symbios Logic
106521c57ebSDavid E. O'Brien#controller	sym0		# NCR/Symbios Logic (do not mix with ncr, it conflicts)
10710004708SJordan K. Hubbard
10836d9945dSPeter Wemmcontroller	adv0	at isa? port ? irq ?
109859244a6SJustin T. Gibbscontroller	adw0
11036d9945dSPeter Wemmcontroller	bt0	at isa? port ? irq ?
11136d9945dSPeter Wemmcontroller	aha0	at isa? port ? irq ?
1120dd1eea1SJordan K. Hubbard
1131f06573dSPeter Wemm# SCSI peripherals
1141f06573dSPeter Wemm# Only one of each of these is needed, they are dynamically allocated.
1151f06573dSPeter Wemmcontroller	scbus0		# SCSI bus (required)
1161f06573dSPeter Wemmdevice		da0		# Direct Access (disks)
1171f06573dSPeter Wemmdevice		sa0		# Sequential Access (tape etc)
1181f06573dSPeter Wemmdevice		cd0		# CD
1191f06573dSPeter Wemmdevice		pass0		# Passthrough device (direct SCSI access)
120677060b4SPoul-Henning Kamp
1211f06573dSPeter Wemm# Proprietary or custom CD-ROM Interfaces
12236d9945dSPeter Wemmdevice		wt0	at isa? port 0x300 irq 5 drq 1
12336d9945dSPeter Wemmdevice		mcd0	at isa? port 0x300 irq 10
1241f06573dSPeter Wemmdevice		matcd0	at isa? port 0x230
12536d9945dSPeter Wemmdevice		scd0	at isa? port 0x230
126f1780a6cSJordan K. Hubbard
12723f7bd17SBrian Somers# atkbdc0 controls both the keyboard and the PS/2 mouse
1286182fdbdSPeter Wemmcontroller	atkbdc0	at isa? port IO_KBD
12936d9945dSPeter Wemmdevice		atkbd0	at atkbdc? irq 1
13036d9945dSPeter Wemmdevice		psm0	at atkbdc? irq 12
1312ad872c5SKazutaka YOKOTA
1322ad872c5SKazutaka YOKOTAdevice		vga0	at isa? port ? conflicts
1332ad872c5SKazutaka YOKOTA
1342ad872c5SKazutaka YOKOTA# splash screen/screen saver
1352ad872c5SKazutaka YOKOTApseudo-device	splash
1362ad872c5SKazutaka YOKOTA
137c19da41eSPeter Wemm# syscons is the default console driver, resembling an SCO console
13836d9945dSPeter Wemmdevice		sc0	at isa?
1395895e3c8SPeter Wemm
140c19da41eSPeter Wemm# Enable this and PCVT_FREEBSD for pcvt vt220 compatible console driver
14136d9945dSPeter Wemm#device		vt0	at isa?
142c19da41eSPeter Wemm#options 	XSERVER			# support for X server
143c19da41eSPeter Wemm#options 	FAT_CURSOR		# start with block cursor
144c19da41eSPeter Wemm# If you have a ThinkPAD, uncomment this along with the rest of the PCVT lines
145c19da41eSPeter Wemm#options 	PCVT_SCANSET=2		# IBM keyboards are non-std
146c851c2f0SJoerg Wunsch
1471f06573dSPeter Wemm# Floating point support - do not disable.
1486182fdbdSPeter Wemmdevice		npx0	at nexus? port IO_NPX irq 13
149677060b4SPoul-Henning Kamp
1501f06573dSPeter Wemm# Power management support (see LINT for more options)
1516182fdbdSPeter Wemmdevice		apm0    at nexus? disable flags 0x31 # Advanced Power Management
1523d4d8fe9SPoul-Henning Kamp
15392d38a13SNate Williams# PCCARD (PCMCIA) support
154e7e437dbSNate Williams#controller	card0
155d1eb1e4fSNick Hibma#device		pcic0	at isa?
156d1eb1e4fSNick Hibma#device		pcic1	at isa?
157e597b497SNate Williams
1581f06573dSPeter Wemm# Serial (COM) ports
1595895e3c8SPeter Wemmdevice		sio0	at isa? port IO_COM1 flags 0x10 irq 4
1605895e3c8SPeter Wemmdevice		sio1	at isa? port IO_COM2 irq 3
1615895e3c8SPeter Wemmdevice		sio2	at isa? disable port IO_COM3 irq 5
1625895e3c8SPeter Wemmdevice		sio3	at isa? disable port IO_COM4 irq 9
163677060b4SPoul-Henning Kamp
16404e83575SJoseph Koshy# Parallel port
1653574d12dSMike Smithdevice		ppc0	at isa? port? flags 0x40 irq 7
1661f06573dSPeter Wemmcontroller	ppbus0		# Parallel port bus (required)
1671f06573dSPeter Wemmdevice		lpt0		# Printer
1681f06573dSPeter Wemmdevice		plip0		# TCP/IP over parallel
1691f06573dSPeter Wemmdevice		ppi0		# Parallel port interface device
1701f06573dSPeter Wemm#controller	vpo0		# Requires scbus and da0
171677060b4SPoul-Henning Kamp
17223e4757cSBill Paul
1731f06573dSPeter Wemm# PCI Ethernet NICs.
17429c6a10bSGarrett Wollmandevice		ax0		# ASIX AX88140A
17529c6a10bSGarrett Wollmandevice		de0		# DEC/Intel DC21x4x (``Tulip'')
17629c6a10bSGarrett Wollmandevice		fxp0		# Intel EtherExpress PRO/100B (82557, 82558)
17729c6a10bSGarrett Wollmandevice		pn0		# Lite-On 82c168/82c169 (``PNIC'')
178c6a5d1a6SPeter Wemmdevice		tx0		# SMC 9432TX (83c170 ``EPIC'')
179c6a5d1a6SPeter Wemmdevice		vx0		# 3Com 3c590, 3c595 (``Vortex'')
180c6a5d1a6SPeter Wemm
181c6a5d1a6SPeter Wemm# PCI Ethernet NICs that use the common MII bus controller code.
182c6a5d1a6SPeter Wemmcontroller	miibus0		# MII bus support
1831088f6c7SBill Pauldevice		al0		# ADMtek AL981/AN985 (``Comet''/``Centaur'')
184c6a5d1a6SPeter Wemmdevice		dm0		# Davicom DM9100/DM9102
185ed8c6514SBill Pauldevice		mx0		# Macronix 98713/98715/98725 (``PMAC'')
18629c6a10bSGarrett Wollmandevice		rl0		# RealTek 8129/8139
187691c1528SBill Pauldevice		sf0		# Adaptec AIC-6915 (``Starfire'')
1889555e59aSBill Pauldevice		sis0		# Silicon Integrated Systems SiS 900/SiS 7016
18923e4757cSBill Pauldevice		ste0		# Sundance ST201 (D-Link DFE-550TX)
19029c6a10bSGarrett Wollmandevice		tl0		# Texas Instruments ThunderLAN
191ae3b8c19SBill Pauldevice		vr0		# VIA Rhine, Rhine II
19229c6a10bSGarrett Wollmandevice		wb0		# Winbond W89C840F
19329c6a10bSGarrett Wollmandevice		xl0		# 3Com 3c90x (``Boomerang'', ``Cyclone'')
19429c6a10bSGarrett Wollman
1951f06573dSPeter Wemm# ISA Ethernet NICs.
19636d9945dSPeter Wemmdevice		ed0	at isa? port 0x280 irq 10 iomem 0xd8000
19736d9945dSPeter Wemmdevice		ex0	at isa? port? irq?
198e72032e9SMatthew N. Dodddevice		ep0
199e72032e9SMatthew N. Dodd# The probe order of these is presently determined by i386/isa/isa_compat.c.
200e72032e9SMatthew N. Dodddevice		ie0	at isa? port 0x300 irq 10 iomem 0xd0000
20136d9945dSPeter Wemmdevice		fe0	at isa? port 0x300 irq ?
20236d9945dSPeter Wemmdevice		le0	at isa? port 0x300 irq 5 iomem 0xd0000
20336d9945dSPeter Wemmdevice		lnc0	at isa? port 0x280 irq 10 drq 0
2041f06573dSPeter Wemmdevice		cs0	at isa? port 0x300 irq ?
205a6c6cfcdSDavid E. O'Brien# requires PCCARD (PCMCIA) support to be activated
206a6c6cfcdSDavid E. O'Brien#device		xe0	at isa? port? irq ?
2071f06573dSPeter Wemm
2081f06573dSPeter Wemm# PCCARD NIC drivers.
2091f06573dSPeter Wemm# ze and zp take over the pcic and cannot coexist with generic pccard
2101f06573dSPeter Wemm# support, nor the ed and ep drivers they replace.
21136d9945dSPeter Wemm#device		ze0	at isa? port 0x300 irq 10 iomem 0xd8000
21236d9945dSPeter Wemm#device		zp0	at isa? port 0x300 irq 10 iomem 0xd8000
213677060b4SPoul-Henning Kamp
2141f06573dSPeter Wemm# Pseudo devices - the number indicates how many units to allocated.
2151f06573dSPeter Wemmpseudo-device	loop		# Network loopback
2161f06573dSPeter Wemmpseudo-device	ether		# Ethernet support
2171f06573dSPeter Wemmpseudo-device	sl	1	# Kernel SLIP
2181f06573dSPeter Wemmpseudo-device	ppp	1	# Kernel PPP
2193dd1fb66SJordan K. Hubbardpseudo-device	tun		# Packet tunnel.
220ef40c561SPoul-Henning Kamppseudo-device	pty		# Pseudo-ttys (telnet etc)
221d3628763SRodney W. Grimespseudo-device	gzip		# Exec gzipped a.out's
22271e4fff8SPoul-Henning Kamppseudo-device	md		# Memory "disks"
223c683ac7cSJoerg Wunsch
2246b5ca0d8SDag-Erling Smørgrav# The `bpf' pseudo-device enables the Berkeley Packet Filter.
2250a729622SJordan K. Hubbard# Be aware of the administrative consequences of enabling this!
226bd3a5320SPoul-Henning Kamppseudo-device	bpf		#Berkeley packet filter
2270cec007cSNick Hibma
2280cec007cSNick Hibma# USB support
2291f06573dSPeter Wemm#controller	uhci0		# UHCI PCI->USB interface
2301f06573dSPeter Wemm#controller	ohci0		# OHCI PCI->USB interface
2311f06573dSPeter Wemm#controller	usb0		# USB Bus (required)
2321f06573dSPeter Wemm#device		ugen0		# Generic
2331f06573dSPeter Wemm#device		uhid0		# "Human Interface Devices"
2341f06573dSPeter Wemm#device		ukbd0		# Keyboard
2351f06573dSPeter Wemm#device		ulpt0		# Printer
2361f06573dSPeter Wemm#controller	umass0		# Disks/Mass storage - Requires scbus and da0
2371f06573dSPeter Wemm#device		ums0		# Mouse
238