GENERIC revision 45813
1130803Smarcel#
2130803Smarcel# GENERIC -- Generic machine with WD/AHx/NCR/BTx family disks
3130803Smarcel#
4130803Smarcel# For more information read the handbook part System Administration -> 
5130803Smarcel# Configuring the FreeBSD Kernel -> The Configuration File. 
6130803Smarcel# The handbook is available in /usr/share/doc/handbook or online as
7130803Smarcel# latest version from the FreeBSD World Wide Web server 
8130803Smarcel# <URL:http://www.FreeBSD.ORG/>
9130803Smarcel#
10130803Smarcel# An exhaustive list of options and more detailed explanations of the 
11130803Smarcel# device lines is present in the ./LINT configuration file. If you are 
12130803Smarcel# in doubt as to the purpose or necessity of a line, check first in LINT.
13130803Smarcel#
14130803Smarcel#	$Id: GENERIC,v 1.162 1999/04/16 21:22:07 peter Exp $
15130803Smarcel
16130803Smarcelmachine		"i386"
17130803Smarcelcpu		"I386_CPU"
18130803Smarcelcpu		"I486_CPU"
19130803Smarcelcpu		"I586_CPU"
20130803Smarcelcpu		"I686_CPU"
21130803Smarcelident		GENERIC
22130803Smarcelmaxusers	32
23130803Smarcel
24130803Smarcel#makeoptions	DEBUG="-g"		#Build kernel with gdb(1) debug symbols
25130803Smarcel
26130803Smarceloptions		MATH_EMULATE		#Support for x87 emulation
27130803Smarceloptions		INET			#InterNETworking
28130803Smarceloptions		FFS			#Berkeley Fast Filesystem
29130803Smarceloptions		FFS_ROOT		#FFS usable as root device [keep this!]
30130803Smarceloptions		MFS			#Memory Filesystem
31130803Smarceloptions		MFS_ROOT		#MFS usable as root device, "MFS" req'ed
32130803Smarceloptions		NFS			#Network Filesystem
33130803Smarceloptions		NFS_ROOT		#NFS usable as root device, "NFS" req'ed
34130803Smarceloptions		MSDOSFS			#MSDOS Filesystem
35130803Smarceloptions		"CD9660"		#ISO 9660 Filesystem
36130803Smarceloptions		"CD9660_ROOT"		#CD-ROM usable as root. "CD9660" req'ed
37130803Smarceloptions		PROCFS			#Process filesystem
38130803Smarceloptions		"COMPAT_43"		#Compatible with BSD 4.3 [KEEP THIS!]
39130803Smarceloptions		SCSI_DELAY=15000	#Be pessimistic about Joe SCSI device
40130803Smarceloptions		UCONSOLE		#Allow users to grab the console
41130803Smarceloptions		FAILSAFE		#Be conservative
42130803Smarceloptions		USERCONFIG		#boot -c editor
43130803Smarceloptions		VISUAL_USERCONFIG	#visual boot -c editor
44130803Smarcel
45130803Smarcelconfig		kernel	root on wd0
46130803Smarcel
47130803Smarcel# To make an SMP kernel, the next two are needed
48130803Smarcel#options	SMP			# Symmetric MultiProcessor Kernel
49130803Smarcel#options	APIC_IO			# Symmetric (APIC) I/O
50130803Smarcel# Optionally these may need tweaked, (defaults shown):
51130803Smarcel#options	NCPU=2			# number of CPUs
52130803Smarcel#options	NBUS=4			# number of busses
53130803Smarcel#options	NAPIC=1			# number of IO APICs
54130803Smarcel#options	NINTR=24		# number of INTs
55130803Smarcel
56130803Smarcelcontroller	isa0	at nexus?
57130803Smarcel#controller	pnp0			# PnP support for ISA
58130803Smarcel#controller	eisa0
59130803Smarcelcontroller	pci0	at nexus?
60130803Smarcel
61130803Smarcelcontroller	fdc0	at isa? port "IO_FD1" bio irq 6 drq 2
62130803Smarceldisk		fd0	at fdc0 drive 0
63130803Smarceldisk		fd1	at fdc0 drive 1
64130803Smarcel
65130803Smarcelcontroller	wdc0	at isa? port "IO_WD1" bio irq 14
66130803Smarceldisk		wd0	at wdc0 drive 0
67130803Smarceldisk		wd1	at wdc0 drive 1
68130803Smarcel
69130803Smarcelcontroller	wdc1	at isa? port "IO_WD2" bio irq 15
70130803Smarceldisk		wd2	at wdc1 drive 0
71130803Smarceldisk		wd3	at wdc1 drive 1
72130803Smarcel
73130803Smarceldevice		wcd0		#IDE CD-ROM
74130803Smarceldevice		wfd0		#IDE Floppy (e.g. LS-120)
75130803Smarcel
76130803Smarcel# A single entry for any of these controllers (ncr, ahb, ahc) is
77130803Smarcel# sufficient for any number of installed devices.
78130803Smarcelcontroller	ncr0
79130803Smarcelcontroller	ahb0
80130803Smarcelcontroller	ahc0
81130803Smarcelcontroller	isp0
82130803Smarcel
83130803Smarcel# This controller offers a number of configuration options, too many to
84130803Smarcel# document here  - see the LINT file in this directory and look up the
85130803Smarcel# dpt0 entry there for much fuller documentation on this.
86130803Smarcelcontroller      dpt0
87130803Smarcel
88130803Smarcelcontroller	adv0	at isa? port ? cam irq ?
89130803Smarcelcontroller	adw0
90130803Smarcelcontroller	bt0	at isa? port ? cam irq ?
91130803Smarcelcontroller	aha0	at isa? port ? cam irq ?
92130803Smarcel
93130803Smarcelcontroller	scbus0
94130803Smarcel
95130803Smarceldevice		da0
96130803Smarcel
97130803Smarceldevice		sa0
98130803Smarcel
99130803Smarceldevice		pass0
100130803Smarcel
101130803Smarceldevice		cd0	#Only need one of these, the code dynamically grows
102130803Smarcel
103130803Smarceldevice		wt0	at isa? port 0x300 bio irq 5 drq 1
104130803Smarceldevice		mcd0	at isa? port 0x300 bio irq 10
105130803Smarcel
106130803Smarcelcontroller	matcd0	at isa? port 0x230 bio
107130803Smarcel
108130803Smarceldevice		scd0	at isa? port 0x230 bio
109130803Smarcel
110130803Smarcel# atkbdc0 controls both the keyboard and the PS/2 mouse
111130803Smarcelcontroller	atkbdc0	at isa? port IO_KBD
112130803Smarceldevice		atkbd0	at atkbdc? tty irq 1
113130803Smarceldevice		psm0	at atkbdc? tty irq 12
114130803Smarcel
115130803Smarceldevice		vga0	at isa? port ? conflicts
116130803Smarcel
117130803Smarcel# splash screen/screen saver
118130803Smarcelpseudo-device	splash
119130803Smarcel
120130803Smarcel# syscons is the default console driver, resembling an SCO console
121130803Smarceldevice		sc0	at isa? tty
122130803Smarcel# Enable this and PCVT_FREEBSD for pcvt vt220 compatible console driver
123130803Smarcel#device		vt0	at isa? tty
124130803Smarcel#options		XSERVER			# support for X server
125130803Smarcel#options		FAT_CURSOR		# start with block cursor
126130803Smarcel# If you have a ThinkPAD, uncomment this along with the rest of the PCVT lines
127130803Smarcel#options		PCVT_SCANSET=2		# IBM keyboards are non-std
128130803Smarcel
129130803Smarceldevice		npx0	at nexus? port IO_NPX irq 13
130130803Smarcel
131130803Smarcel#
132130803Smarcel# Laptop support (see LINT for more options)
133130803Smarcel#
134130803Smarceldevice		apm0    at nexus? disable flags 0x31 # Advanced Power Management
135130803Smarcel
136130803Smarcel# PCCARD (PCMCIA) support
137130803Smarcel#controller	card0
138130803Smarcel#device		pcic0	at card?
139130803Smarcel#device		pcic1	at card?
140130803Smarcel
141130803Smarceldevice		sio0	at isa? port "IO_COM1" flags 0x10 tty irq 4
142130803Smarceldevice		sio1	at isa? port "IO_COM2" tty irq 3
143130803Smarceldevice		sio2	at isa? disable port "IO_COM3" tty irq 5
144130803Smarceldevice		sio3	at isa? disable port "IO_COM4" tty irq 9
145130803Smarcel
146130803Smarcel# Parallel port
147130803Smarceldevice		ppc0	at isa? port? tty irq 7
148130803Smarcelcontroller	ppbus0
149130803Smarceldevice		lpt0	at ppbus?
150130803Smarceldevice		plip0	at ppbus?
151130803Smarceldevice		ppi0	at ppbus?
152130803Smarcel#controller	vpo0	at ppbus?
153130803Smarcel
154130803Smarcel#
155130803Smarcel# The following Ethernet NICs are all PCI devices.
156130803Smarcel#
157130803Smarceldevice ax0		# ASIX AX88140A
158130803Smarceldevice de0		# DEC/Intel DC21x4x (``Tulip'')
159130803Smarceldevice fxp0		# Intel EtherExpress PRO/100B (82557, 82558)
160130803Smarceldevice mx0		# Macronix 98713/98715/98725 (``PMAC'')
161130803Smarceldevice pn0		# Lite-On 82c168/82c169 (``PNIC'')
162130803Smarceldevice rl0		# RealTek 8129/8139
163130803Smarceldevice tl0		# Texas Instruments ThunderLAN
164130803Smarceldevice tx0		# SMC 9432TX (83c170 ``EPIC'')
165130803Smarceldevice vr0		# VIA Rhine, Rhine II
166130803Smarceldevice vx0		# 3Com 3c590, 3c595 (``Vortex'')
167130803Smarceldevice wb0		# Winbond W89C840F
168130803Smarceldevice xl0		# 3Com 3c90x (``Boomerang'', ``Cyclone'')
169130803Smarcel
170130803Smarcel# Order is important here due to intrusive probes, do *not* alphabetize
171130803Smarcel# this list of network interfaces until the probes have been fixed.
172130803Smarcel# Right now it appears that the ie0 must be probed before ep0. See
173130803Smarcel# revision 1.20 of this file.
174130803Smarceldevice ed0 at isa? port 0x280 net irq 10 iomem 0xd8000
175130803Smarceldevice ie0 at isa? port 0x300 net irq 10 iomem 0xd0000
176130803Smarceldevice ep0 at isa? port 0x300 net irq 10
177130803Smarceldevice ex0 at isa? port? net irq?
178130803Smarceldevice fe0 at isa? port 0x300 net irq ?
179130803Smarceldevice le0 at isa? port 0x300 net irq 5 iomem 0xd0000
180130803Smarceldevice lnc0 at isa? port 0x280 net irq 10 drq 0
181130803Smarcel#device ze0 at isa? port 0x300 net irq 10 iomem 0xd8000
182130803Smarcel#device zp0 at isa? port 0x300 net irq 10 iomem 0xd8000
183130803Smarceldevice cs0 at isa? port 0x300 net irq ?
184130803Smarcel
185130803Smarcelpseudo-device	loop
186130803Smarcelpseudo-device	ether
187130803Smarcelpseudo-device	sl	1
188130803Smarcelpseudo-device	ppp	1
189130803Smarcelpseudo-device	tun	1
190130803Smarcelpseudo-device	pty	16
191130803Smarcelpseudo-device	gzip		# Exec gzipped a.out's
192130803Smarcel
193130803Smarcel# KTRACE enables the system-call tracing facility ktrace(2).
194130803Smarcel# This adds 4 KB bloat to your kernel, and slightly increases
195130803Smarcel# the costs of each syscall.
196130803Smarceloptions		KTRACE		#kernel tracing
197130803Smarcel
198130803Smarcel# This provides support for System V shared memory and message queues.
199130803Smarcel#
200130803Smarceloptions         SYSVSHM
201130803Smarceloptions         SYSVMSG
202130803Smarceloptions         SYSVSEM
203130803Smarcel
204130803Smarcel
205130803Smarcel#  The `bpfilter' pseudo-device enables the Berkeley Packet Filter.  Be
206130803Smarcel#  aware of the legal and administrative consequences of enabling this
207130803Smarcel#  option.  The number of devices determines the maximum number of
208130803Smarcel#  simultaneous BPF clients programs runnable.
209130803Smarcel#pseudo-device	bpfilter 4	#Berkeley packet filter
210130803Smarcel
211130803Smarcel
212130803Smarcel# USB support
213130803Smarcel#controller    uhci0
214130803Smarcel#controller    ohci0
215130803Smarcel#controller    usb0
216130803Smarcel#
217130803Smarcel# for the moment we have to specify the priorities of the device
218130803Smarcel# drivers explicitly by the ordering in the list below. This will
219130803Smarcel# be changed in the future.
220130803Smarcel#
221130803Smarcel#device        ums0
222130803Smarcel#device        ukbd0
223130803Smarcel#device        ulpt0
224130803Smarcel#device        uhid0
225130803Smarcel#device        ugen0
226130803Smarcel