files.i386 revision 1.135
1#	$NetBSD: files.i386,v 1.135 1999/07/28 01:57:05 mellon Exp $
2#
3# new style config file for i386 architecture
4#
5
6# maxpartitions must be first item in files.${ARCH}.newconf
7maxpartitions 8
8
9maxusers 2 16 64
10
11# APM options
12defopt	opt_apm.h APM_DISABLE APM_FORCE_64K_SEGMENTS APM_NO_IDLE
13	APM_NO_STANDBY APM_V10_ONLY APMDEBUG APMDEBUG_VALUE
14
15# Processor type options.
16defopt	opt_cputype.h I386_CPU I486_CPU I586_CPU I686_CPU
17
18# delay before cpu_reset() for reboot.
19defopt CPURESET_DELAY
20
21# VM86 emulation
22defopt	VM86
23
24# Floating point emulation
25defopt	MATH_EMULATE
26
27# User-settable LDT (used by WINE)
28defopt	USER_LDT
29
30# Speed hack; make NOPs dummies (might break on some machines)
31defopt	DUMMY_NOPS
32
33# X server support in console drivers
34defopt	opt_xserver.h XSERVER XSERVER_DDB
35
36file	arch/i386/i386/autoconf.c
37file	arch/i386/i386/conf.c
38file	arch/i386/i386/db_dbgreg.s	ddb
39file	arch/i386/i386/db_disasm.c	ddb
40file	arch/i386/i386/db_interface.c	ddb
41file	arch/i386/i386/db_memrw.c	ddb | kgdb
42file	arch/i386/i386/db_trace.c	ddb
43file	arch/i386/i386/disksubr.c	disk
44file	arch/i386/i386/gdt.c
45file	arch/i386/i386/in_cksum.s	inet
46file	arch/i386/i386/kgdb_machdep.c	kgdb
47file	arch/i386/i386/machdep.c
48file	arch/i386/i386/math_emulate.c	math_emulate
49file	arch/i386/i386/mem.c
50file	arch/i386/i386/microtime.s
51file	arch/i386/i386/ns_cksum.c	ns
52file	arch/i386/i386/pmap.c
53file	arch/i386/i386/process_machdep.c
54file	arch/i386/i386/sys_machdep.c
55file	arch/i386/i386/trap.c
56file	arch/i386/i386/vm_machdep.c
57file	dev/cons.c
58
59#
60# Machine-independent SCSI drivers
61#
62
63include "dev/scsipi/files.scsipi"
64major	{sd = 4}
65major	{cd = 6}
66
67#
68# Machine-independent ATA drivers
69#
70
71include "dev/ata/files.ata"
72major	{wd = 0}
73
74# Memory Disk for install floppy
75file arch/i386/i386/md_root.c	memory_disk_hooks
76major	{md = 17}
77
78#
79# System bus types
80#
81
82define mainbus { }
83device	mainbus: isabus, eisabus, pcibus, mainbus
84attach	mainbus at root
85file	arch/i386/i386/mainbus.c	mainbus
86
87# attribute used to bring in BIOS trampoline code for real-mode probing
88# of certain devices/BIOS features
89define bioscall
90file	arch/i386/i386/bioscall.s	bioscall needs-flag
91
92#device	mca at root {...}
93
94#
95# PCI-only drivers
96# XXX MUST BE INCLUDED BEFORE files.isa, as long as files.isa attaches
97# XXX devices to 'pci'.
98#
99
100include "dev/pci/files.pci"
101file	arch/i386/pci/pci_machdep.c	pci
102defopt PCI_CONF_MODE
103file	arch/i386/pci/pciide_machdep.c	pciide
104file	arch/i386/pci/pcic_pci_machdep.c	pcic_pci
105
106# PCI-Host bridge chipsets
107device	pchb: pcibus
108attach	pchb at pci
109file	arch/i386/pci/pchb.c		pchb
110
111# PCI-EISA bridges
112device	pceb: eisabus, isabus
113attach	pceb at pci
114file	arch/i386/pci/pceb.c		pceb
115
116# PCI-ISA bridges
117device	pcib: isabus
118attach	pcib at pci
119file	arch/i386/pci/pcib.c		pcib
120
121#
122# ISA and mixed ISA+EISA or ISA+PCI drivers
123#
124
125include "dev/isa/files.isa"
126major	{mcd = 7}
127#major	{scd = 15}
128
129# XXX THE FOLLOWING BLOCK SHOULD GO INTO dev/pci/files.pci, BUT CANNOT
130# XXX BECAUSE NOT 'lpt' IS DEFINED IN files.isa, RATHER THAN files.
131# XXX (when the conf/files and files.isa bogons are fixed, this can
132# XXX be fixed as well.)
133
134attach	lpt at puc with lpt_puc
135file	dev/pci/lpt_puc.c	lpt_puc
136
137file	arch/i386/isa/isa_machdep.c	isa
138
139# PC clock
140file	arch/i386/isa/clock.c		isa
141file	dev/clock_subr.c		isa
142
143# Numeric Processing Extension; Math Co-processor
144device	npx
145attach	npx at isa
146file	arch/i386/isa/npx.c		npx needs-flag
147
148# attribute used to represent the "keyboard controller"
149# XXX should be a real device
150define pckbcport { [irq = -1], [port = -1] }
151
152# PC console support a la "pccons"
153device	pc: tty, pckbcport
154attach	pc at isa
155device	pcconskbd
156attach	pcconskbd at pckbc
157file	arch/i386/isa/pccons.c		pc | pcconskbd needs-flag
158
159# PC console support a la "pcvt"
160device	vt: tty, pckbcport
161attach	vt at isa
162file	arch/i386/isa/pcvt/pcvt_drv.c	vt needs-flag
163file	arch/i386/isa/pcvt/pcvt_ext.c	vt needs-flag
164file	arch/i386/isa/pcvt/pcvt_kbd.c	vt needs-flag
165file	arch/i386/isa/pcvt/pcvt_out.c	vt needs-flag
166file	arch/i386/isa/pcvt/pcvt_sup.c	vt needs-flag
167file	arch/i386/isa/pcvt/pcvt_vtf.c	vt needs-flag
168
169# PC Mice; Logitech-style, Microsoft-style, and PS/2-style
170device	olms
171attach	olms at isa
172file	arch/i386/isa/olms.c		olms needs-flag
173device	lms: wsmousedev
174attach	lms at isa
175file	arch/i386/isa/lms.c		lms
176device	omms
177attach	omms at isa
178file	arch/i386/isa/omms.c		omms needs-flag
179device	mms: wsmousedev
180attach	mms at isa
181file	arch/i386/isa/mms.c		mms
182device	opms
183attach	opms at pckbcport with opms_hack
184attach	opms at pckbc with opms_pckbc
185file	arch/i386/isa/pms.c		opms | opms_hack | opms_pckbc needs-flag
186
187include "dev/wscons/files.wscons"
188
189include "dev/pckbc/files.pckbc"
190
191device sysbeep
192attach sysbeep at pcppi
193
194# Floppy disk controller
195device	fdc {drive = -1}
196attach	fdc at isa
197device	fd: disk, isadma
198attach	fd at fdc
199file	arch/i386/isa/fd.c		fdc needs-flag
200major	{fd = 2}
201
202# Game adapter (joystick)
203device	joy
204file	arch/i386/isa/joy.c		joy needs-flag
205
206attach	joy at isa with joy_isa
207file	arch/i386/isa/joy_isa.c		joy_isa
208
209# Adaptec AHA-284x VL SCSI controllers
210# device declaration in sys/conf/files
211attach	ahc at isa with ahc_isa
212file	arch/i386/isa/ahc_isa.c		ahc_isa
213
214#
215# EISA-only drivers
216#
217
218include "dev/eisa/files.eisa"
219file	arch/i386/eisa/eisa_machdep.c	eisa
220
221# ISA Plug 'n Play devices
222file	arch/i386/isa/isapnp_machdep.c	isapnp
223
224attach	joy at isapnp with joy_isapnp
225file	arch/i386/isa/joy_isapnp.c	joy_isapnp
226
227#
228# VME support
229#
230include "dev/vme/files.vme"
231
232#
233# Other mainbus-attached devices
234#
235
236# Advanced Power Management support (APM)
237device apm: bioscall
238attach apm at mainbus
239file	arch/i386/i386/apm.c		apm needs-count
240file	arch/i386/i386/apmcall.s	apm
241
242#
243# Compatibility modules
244#
245
246# VM86 mode
247file	arch/i386/i386/vm86.c			vm86
248
249# Binary compatibility with previous NetBSD releases (COMPAT_XX)
250file	arch/i386/i386/compat_13_machdep.c	compat_13 | compat_aout
251
252# SVR4 binary compatibility (COMPAT_SVR4)
253include "compat/svr4/files.svr4"
254file	arch/i386/i386/svr4_machdep.c		compat_svr4
255
256# iBCS-2 binary compatibility (COMPAT_IBCS2)
257include "compat/ibcs2/files.ibcs2"
258file	arch/i386/i386/ibcs2_machdep.c		compat_ibcs2
259
260# Linux binary compatibility (COMPAT_LINUX)
261include "compat/linux/files.linux"
262include "compat/linux/arch/i386/files.linux_i386"
263
264# FreeBSD binary compatibility (COMPAT_FREEBSD)
265include "compat/freebsd/files.freebsd"
266file	arch/i386/i386/freebsd_machdep.c	compat_freebsd
267
268# a.out binary compatibility (COMPAT_AOUT)
269include "compat/aout/files.aout"
270
271# OSS audio driver compatibility
272include "compat/ossaudio/files.ossaudio"
273
274# network devices MII bus
275include "dev/mii/files.mii"
276
277# XXXX pcic here because it needs to be late.  The catch: pcic needs
278# to be late, so devices which attach to it are attached late.  But it
279# needs to be before its isa and pci attachments.  This answer is
280# non-optimal, but I don't have a better answer right now.
281
282# PCIC pcmcia contoller
283# XXX this needs to be done very late, so it's done here.  This feels
284# like a kludge, but it might be for the best.
285
286defopt	PCIC_ISA_ALLOC_IOBASE
287defopt	PCIC_ISA_ALLOC_IOSIZE
288defopt	PCIC_ISA_INTR_ALLOC_MASK
289
290device	pcic: pcmciabus
291file	dev/ic/i82365.c			pcic
292
293# PCIC pcmcia controller on ISA bus.
294attach	pcic at isa with pcic_isa
295file	dev/isa/i82365_isa.c		pcic_isa
296
297# PCIC pcmcia controller on PCI bus.
298attach	pcic at pci with pcic_pci
299file	dev/pci/i82365_pci.c		pcic_pci
300
301# PCIC pcmcia controller on PnP board
302attach pcic at isapnp with pcic_isapnp
303file	dev/isapnp/i82365_isapnp.c	pcic_isapnp
304
305# Code common to ISA and ISAPnP attachments
306file	dev/isa/i82365_isasubr.c	pcic_isa | pcic_isapnp | pcic_pci
307
308# XXXX tcic here because it needs to be late.  The catch: tcic needs
309# to be late, so devices which attach to it are attached late.  But it
310# needs to be before its isa and pci attachments.  This answer is
311# non-optimal, but I don't have a better answer right now.
312
313# TCIC pcmcia contoller
314# XXX this needs to be done very late, so it's done here.  This feels
315# like a kludge, but it might be for the best.
316
317defopt	TCIC_ISA_ALLOC_IOBASE
318defopt	TCIC_ISA_ALLOC_IOSIZE
319defopt	TCIC_ISA_INTR_ALLOC_MASK
320
321device	tcic: pcmciabus
322file	dev/ic/tcic2.c			tcic
323
324# TCIC pcmcia contoller
325attach	tcic at isa with tcic_isa
326file	dev/isa/tcic2_isa.c		tcic_isa
327
328# this wants to be probed as late as possible.
329#
330# Machine-independent PCMCIA drivers
331#
332include "dev/pcmcia/files.pcmcia"
333
334
335include "dev/usb/files.usb"
336