files.i386 revision 1.104
11.104Sthorpej#	$NetBSD: files.i386,v 1.104 1998/01/22 00:44:06 thorpej Exp $
21.2Scgd#
31.56Scgd# new style config file for i386 architecture
41.56Scgd#
51.56Scgd
61.56Scgd# maxpartitions must be first item in files.${ARCH}.newconf
71.56Scgdmaxpartitions 8
81.94Sthorpej
91.56Scgdmaxusers 2 16 64
101.100Sthorpej
111.100Sthorpej# Processor type options.
121.100Sthorpejdefopt	opt_cputype.h I386_CPU I486_CPU I586_CPU I686_CPU
131.101Sthorpej
141.101Sthorpej# VM86 emulation
151.101Sthorpejdefopt	VM86
161.102Sthorpej
171.102Sthorpej# Floating point emulation
181.102Sthorpejdefopt	MATH_EMULATE
191.103Sthorpej
201.103Sthorpej# User-settable LDT (used by WINE)
211.103Sthorpejdefopt	USER_LDT
221.104Sthorpej
231.104Sthorpej# Speed hack; make NOPs dummies (might break on some machines)
241.104Sthorpejdefopt	DUMMY_NOPS
251.98Sthorpej
261.56Scgdfile	arch/i386/i386/autoconf.c
271.56Scgdfile	arch/i386/i386/conf.c
281.56Scgdfile	arch/i386/i386/db_disasm.c	ddb
291.56Scgdfile	arch/i386/i386/db_interface.c	ddb
301.85Sthorpejfile	arch/i386/i386/db_memrw.c	ddb | kgdb
311.56Scgdfile	arch/i386/i386/db_trace.c	ddb
321.56Scgdfile	arch/i386/i386/disksubr.c	disk
331.60Smycroftfile	arch/i386/i386/gdt.c
341.74Smycroftfile	arch/i386/i386/in_cksum.s	inet
351.85Sthorpejfile	arch/i386/i386/kgdb_machdep.c	kgdb
361.56Scgdfile	arch/i386/i386/machdep.c
371.56Scgdfile	arch/i386/i386/math_emulate.c	math_emulate
381.56Scgdfile	arch/i386/i386/mem.c
391.56Scgdfile	arch/i386/i386/microtime.s
401.56Scgdfile	arch/i386/i386/ns_cksum.c	ns
411.56Scgdfile	arch/i386/i386/pmap.c
421.56Scgdfile	arch/i386/i386/process_machdep.c
431.56Scgdfile	arch/i386/i386/random.s
441.56Scgdfile	arch/i386/i386/sys_machdep.c
451.56Scgdfile	arch/i386/i386/trap.c
461.56Scgdfile	arch/i386/i386/vm_machdep.c
471.56Scgdfile	dev/cons.c
481.56Scgdmajor	{vnd = 14}
491.56Scgd
501.56Scgd#
511.56Scgd# Machine-independent SCSI drivers
521.56Scgd#
531.56Scgd
541.98Sthorpejinclude "dev/scsipi/files.scsipi"
551.56Scgdmajor	{sd = 4}
561.56Scgdmajor	{st = 5}
571.56Scgdmajor	{cd = 6}
581.69Sperry
591.97Scgd#
601.97Scgd# Machine-independent ATA drivers
611.97Scgd#
621.97Scgd
631.98Sthorpejinclude "dev/ata/files.ata"
641.97Scgdmajor	{wd = 0}
651.97Scgd
661.79Spk# Memory Disk for install floppy
671.79Spkfile arch/i386/i386/md_root.c	memory_disk_hooks
681.79Spkmajor	{md = 17}
691.56Scgd
701.56Scgd#
711.56Scgd# System bus types
721.56Scgd#
731.65Scgd
741.77Sjtkdefine mainbus { }
751.96Sthorpejdevice	mainbus class dull: isabus, eisabus, pcibus, mainbus
761.67Sthorpejattach	mainbus at root
771.65Scgdfile	arch/i386/i386/mainbus.c	mainbus
781.56Scgd
791.89Sjtk# attribute used to bring in BIOS trampoline code for real-mode probing
801.89Sjtk# of certain devices/BIOS features
811.89Sjtkdefine bioscall
821.89Sjtkfile	arch/i386/i386/bioscall.s	bioscall needs-flag
831.89Sjtk
841.56Scgd#device	mca at root {...}
851.56Scgd
861.55Smycroft#
871.64Scgd# PCI-only drivers
881.64Scgd# XXX MUST BE INCLUDED BEFORE files.isa, as long as files.isa attaches
891.64Scgd# XXX devices to 'pci'.
901.64Scgd#
911.64Scgd
921.98Sthorpejinclude "dev/pci/files.pci"
931.64Scgdfile	arch/i386/pci/pci_machdep.c	pci
941.78Sthorpej
951.78Sthorpej# PCI-Host bridge chipsets
961.96Sthorpejdevice	pchb class dull: pcibus
971.78Sthorpejattach	pchb at pci
981.78Sthorpejfile	arch/i386/pci/pchb.c		pchb
991.78Sthorpej
1001.78Sthorpej# PCI-ISA bridges
1011.96Sthorpejdevice	pcib class dull: isabus
1021.78Sthorpejattach	pcib at pci
1031.78Sthorpejfile	arch/i386/pci/pcib.c		pcib
1041.64Scgd
1051.64Scgd#
1061.55Smycroft# ISA and mixed ISA+EISA or ISA+PCI drivers
1071.55Smycroft#
1081.56Scgd
1091.98Sthorpejinclude "dev/isa/files.isa"
1101.56Scgdmajor	{mcd = 7}
1111.56Scgd#major	{scd = 15}
1121.56Scgdmajor	{wt = 3}
1131.56Scgd
1141.56Scgdfile	arch/i386/isa/isa_machdep.c	isa
1151.56Scgd
1161.56Scgd# PC clock
1171.56Scgdfile	arch/i386/isa/clock.c		isa
1181.56Scgd
1191.56Scgd# Numeric Processing Extension; Math Co-processor
1201.96Sthorpejdevice	npx class dull
1211.67Sthorpejattach	npx at isa
1221.56Scgdfile	arch/i386/isa/npx.c		npx needs-flag
1231.56Scgd
1241.66Sthorpej# attribute used to represent the "keyboard controller"
1251.66Sthorpej# XXX should be a real device
1261.68Sjtkdefine pckbd { [irq = -1], [port = -1] }
1271.66Sthorpej
1281.56Scgd# PC console support a la "pccons"
1291.96Sthorpejdevice	pc class tty: tty, pckbd
1301.67Sthorpejattach	pc at isa
1311.56Scgdfile	arch/i386/isa/pccons.c		pc needs-flag
1321.56Scgd
1331.56Scgd# PC console support a la "pcvt"
1341.96Sthorpejdevice	vt class tty: tty, pckbd
1351.67Sthorpejattach	vt at isa
1361.56Scgdfile	arch/i386/isa/pcvt/pcvt_drv.c	vt needs-flag
1371.56Scgdfile	arch/i386/isa/pcvt/pcvt_ext.c	vt needs-flag
1381.56Scgdfile	arch/i386/isa/pcvt/pcvt_kbd.c	vt needs-flag
1391.56Scgdfile	arch/i386/isa/pcvt/pcvt_out.c	vt needs-flag
1401.56Scgdfile	arch/i386/isa/pcvt/pcvt_sup.c	vt needs-flag
1411.56Scgdfile	arch/i386/isa/pcvt/pcvt_vtf.c	vt needs-flag
1421.56Scgd
1431.56Scgd# PC Mice; Logitech-style, Microsoft-style, and PS/2-style
1441.96Sthorpejdevice	lms class dull
1451.67Sthorpejattach	lms at isa
1461.56Scgdfile	arch/i386/isa/lms.c		lms needs-flag
1471.96Sthorpejdevice	mms class dull
1481.67Sthorpejattach	mms at isa
1491.56Scgdfile	arch/i386/isa/mms.c		mms needs-flag
1501.96Sthorpejdevice	pms class dull
1511.67Sthorpejattach	pms at pckbd
1521.56Scgdfile	arch/i386/isa/pms.c		pms needs-flag
1531.56Scgd
1541.56Scgd# Floppy disk controller
1551.96Sthorpejdevice	fdc class dull {drive = -1}
1561.67Sthorpejattach	fdc at isa
1571.96Sthorpejdevice	fd class disk: disk, isadma
1581.67Sthorpejattach	fd at fdc
1591.56Scgdfile	arch/i386/isa/fd.c		fdc needs-flag
1601.56Scgdmajor	{fd = 2}
1611.56Scgd
1621.56Scgd# PC speaker
1631.96Sthorpejdevice	spkr class dull: tty
1641.68Sjtkattach	spkr at pckbd
1651.62Sscottrfile	arch/i386/isa/spkr.c		spkr needs-flag
1661.71Sperry
1671.71Sperry# Game adapter (joystick)
1681.96Sthorpejdevice	joy class dull
1691.71Sperryfile	arch/i386/isa/joy.c		joy needs-flag
1701.76Ssoda
1711.80Schristosattach	joy at isa with joy_isa
1721.80Schristosfile	arch/i386/isa/joy_isa.c		joy_isa
1731.80Schristos
1741.76Ssoda# Adaptec AHA-284x VL SCSI controllers
1751.76Ssoda# device declaration in sys/conf/files
1761.76Ssodaattach	ahc at isa with ahc_isa
1771.76Ssodafile	arch/i386/isa/ahc_isa.c		ahc_isa
1781.56Scgd
1791.55Smycroft#
1801.55Smycroft# EISA-only drivers
1811.55Smycroft#
1821.56Scgd
1831.98Sthorpejinclude "dev/eisa/files.eisa"
1841.72Scgdfile	arch/i386/eisa/eisa_machdep.c	eisa
1851.77Sjtk
1861.80Schristos# ISA Plug 'n Play devices
1871.80Schristos# IT IS IMPORTANT THAT THIS IS INCLUDED AFTER ALL ISA DEVICES!
1881.80Schristos# DO NOT MOVE IT!  (Thanks, The Mgmt.)
1891.80Schristosinclude "dev/isapnp/files.isapnp"
1901.80Schristosfile	arch/i386/isa/isapnp_machdep.c	isapnp
1911.80Schristos
1921.80Schristosattach	joy at isapnp with joy_isapnp
1931.80Schristosfile	arch/i386/isa/joy_isapnp.c	joy_isapnp
1941.77Sjtk
1951.77Sjtk#
1961.77Sjtk# Other mainbus-attached devices
1971.77Sjtk#
1981.77Sjtk
1991.77Sjtk# Advanced Power Management support (APM)
2001.96Sthorpejdevice apm class dull: bioscall
2011.77Sjtkattach apm at mainbus
2021.77Sjtkfile	arch/i386/i386/apm.c		apm needs-count
2031.89Sjtkfile	arch/i386/i386/apmcall.s	apm
2041.56Scgd
2051.55Smycroft#
2061.55Smycroft# Compatibility modules
2071.55Smycroft#
2081.61Smycroft
2091.61Smycroft# VM86 mode
2101.61Smycroftfile	arch/i386/i386/vm86.c			vm86
2111.56Scgd
2121.59Smycroft# SVR4 binary compatibility (COMPAT_SVR4)
2131.98Sthorpejinclude "compat/svr4/files.svr4"
2141.59Smycroftfile	arch/i386/i386/svr4_machdep.c		compat_svr4
2151.56Scgd
2161.59Smycroft# iBCS-2 binary compatibility (COMPAT_IBCS2)
2171.98Sthorpejinclude "compat/ibcs2/files.ibcs2"
2181.88Smycroftfile	arch/i386/i386/ibcs2_machdep.c		compat_ibcs2
2191.56Scgd
2201.59Smycroft# Linux binary compatibility (COMPAT_LINUX)
2211.98Sthorpejinclude "compat/linux/files.linux"
2221.59Smycroftfile	arch/i386/i386/linux_machdep.c		compat_linux
2231.58Smycroft
2241.59Smycroft# FreeBSD binary compatibility (COMPAT_FREEBSD)
2251.98Sthorpejinclude "compat/freebsd/files.freebsd"
2261.58Smycroftfile	arch/i386/i386/freebsd_machdep.c	compat_freebsd
2271.82Saugustss
2281.82Saugustss# OSS audio driver compatibility
2291.98Sthorpejinclude "compat/ossaudio/files.ossaudio"
2301.91Sbouyer
2311.91Sbouyer# network devices MII bus
2321.98Sthorpejinclude "dev/mii/files.mii"
2331.90Sthorpej
2341.90Sthorpej# XXXX pcic here because it needs to be late.  The catch: pcic needs
2351.90Sthorpej# to be late, so devices which attach to it are attached late.  But it
2361.90Sthorpej# needs to be before its isa and pci attachments.  This answer is
2371.90Sthorpej# non-optimal, but I don't have a better answer right now.
2381.90Sthorpej
2391.90Sthorpej# PCIC pcmcia contoller
2401.90Sthorpej# XXX this needs to be done very late, so it's done here.  This feels
2411.90Sthorpej# like a kludge, but it might be for the best.
2421.93Sthorpej
2431.93Sthorpejdefopt	PCIC_ISA_ALLOC_IOBASE
2441.93Sthorpejdefopt	PCIC_ISA_ALLOC_IOSIZE
2451.93Sthorpejdefopt	PCIC_ISA_INTR_ALLOC_MASK
2461.93Sthorpej
2471.96Sthorpejdevice	pcic class dull {[controller = -1], [socket = -1]}
2481.92Sthorpejfile	dev/ic/i82365.c			pcic
2491.90Sthorpej
2501.90Sthorpej# PCIC pcmcia contoller
2511.90Sthorpejattach	pcic at isa with pcic_isa
2521.90Sthorpejfile	dev/isa/i82365_isa.c		pcic_isa
2531.90Sthorpej
2541.90Sthorpej# PCIC pcmcia contoller
2551.90Sthorpejattach	pcic at pci with pcic_pci
2561.90Sthorpejfile	dev/pci/i82365_pci.c		pcic_pci
2571.90Sthorpej
2581.90Sthorpej
2591.90Sthorpej# this wants to be probed as late as possible.
2601.90Sthorpej#
2611.90Sthorpej# Machine-independent PCMCIA drivers
2621.90Sthorpej#
2631.90Sthorpejinclude "dev/pcmcia/files.pcmcia"
2641.90Sthorpej
2651.90Sthorpej
266