files.i386 revision 1.128
11.128Sdrochner#	$NetBSD: files.i386,v 1.128 1999/01/23 15:09:55 drochner 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.125Sthorpej
111.125Sthorpej# APM options
121.125Sthorpejdefopt	opt_apm.h APM_DISABLE APM_FORCE_64K_SEGMENTS APM_NO_IDLE
131.125Sthorpej	APM_NO_STANDBY APM_V10_ONLY APMDEBUG APMDEBUG_VALUE
141.100Sthorpej
151.100Sthorpej# Processor type options.
161.100Sthorpejdefopt	opt_cputype.h I386_CPU I486_CPU I586_CPU I686_CPU
171.124Sbouyer
181.124Sbouyer# delay before cpu_reset() for reboot.
191.124Sbouyerdefopt CPURESET_DELAY
201.101Sthorpej
211.101Sthorpej# VM86 emulation
221.101Sthorpejdefopt	VM86
231.102Sthorpej
241.102Sthorpej# Floating point emulation
251.102Sthorpejdefopt	MATH_EMULATE
261.103Sthorpej
271.103Sthorpej# User-settable LDT (used by WINE)
281.103Sthorpejdefopt	USER_LDT
291.104Sthorpej
301.104Sthorpej# Speed hack; make NOPs dummies (might break on some machines)
311.104Sthorpejdefopt	DUMMY_NOPS
321.105Sthorpej
331.105Sthorpej# X server support in console drivers
341.118Srvbdefopt	opt_xserver.h XSERVER XSERVER_DDB
351.98Sthorpej
361.56Scgdfile	arch/i386/i386/autoconf.c
371.56Scgdfile	arch/i386/i386/conf.c
381.119Srvbfile	arch/i386/i386/db_dbgreg.s	ddb
391.56Scgdfile	arch/i386/i386/db_disasm.c	ddb
401.56Scgdfile	arch/i386/i386/db_interface.c	ddb
411.85Sthorpejfile	arch/i386/i386/db_memrw.c	ddb | kgdb
421.56Scgdfile	arch/i386/i386/db_trace.c	ddb
431.56Scgdfile	arch/i386/i386/disksubr.c	disk
441.60Smycroftfile	arch/i386/i386/gdt.c
451.74Smycroftfile	arch/i386/i386/in_cksum.s	inet
461.85Sthorpejfile	arch/i386/i386/kgdb_machdep.c	kgdb
471.56Scgdfile	arch/i386/i386/machdep.c
481.56Scgdfile	arch/i386/i386/math_emulate.c	math_emulate
491.56Scgdfile	arch/i386/i386/mem.c
501.56Scgdfile	arch/i386/i386/microtime.s
511.56Scgdfile	arch/i386/i386/ns_cksum.c	ns
521.106Smrgfile	arch/i386/i386/pmap.c		!pmap_new
531.106Smrgfile	arch/i386/i386/pmap.new.c	pmap_new
541.56Scgdfile	arch/i386/i386/process_machdep.c
551.56Scgdfile	arch/i386/i386/sys_machdep.c
561.56Scgdfile	arch/i386/i386/trap.c
571.56Scgdfile	arch/i386/i386/vm_machdep.c
581.56Scgdfile	dev/cons.c
591.56Scgdmajor	{vnd = 14}
601.56Scgd
611.56Scgd#
621.56Scgd# Machine-independent SCSI drivers
631.56Scgd#
641.56Scgd
651.98Sthorpejinclude "dev/scsipi/files.scsipi"
661.56Scgdmajor	{sd = 4}
671.56Scgdmajor	{st = 5}
681.56Scgdmajor	{cd = 6}
691.69Sperry
701.97Scgd#
711.97Scgd# Machine-independent ATA drivers
721.97Scgd#
731.97Scgd
741.98Sthorpejinclude "dev/ata/files.ata"
751.97Scgdmajor	{wd = 0}
761.97Scgd
771.79Spk# Memory Disk for install floppy
781.79Spkfile arch/i386/i386/md_root.c	memory_disk_hooks
791.79Spkmajor	{md = 17}
801.56Scgd
811.56Scgd#
821.56Scgd# System bus types
831.56Scgd#
841.65Scgd
851.77Sjtkdefine mainbus { }
861.108Sthorpejdevice	mainbus: isabus, eisabus, pcibus, mainbus
871.67Sthorpejattach	mainbus at root
881.65Scgdfile	arch/i386/i386/mainbus.c	mainbus
891.56Scgd
901.89Sjtk# attribute used to bring in BIOS trampoline code for real-mode probing
911.89Sjtk# of certain devices/BIOS features
921.89Sjtkdefine bioscall
931.89Sjtkfile	arch/i386/i386/bioscall.s	bioscall needs-flag
941.89Sjtk
951.56Scgd#device	mca at root {...}
961.56Scgd
971.55Smycroft#
981.64Scgd# PCI-only drivers
991.64Scgd# XXX MUST BE INCLUDED BEFORE files.isa, as long as files.isa attaches
1001.64Scgd# XXX devices to 'pci'.
1011.64Scgd#
1021.64Scgd
1031.98Sthorpejinclude "dev/pci/files.pci"
1041.64Scgdfile	arch/i386/pci/pci_machdep.c	pci
1051.110Scgdfile	arch/i386/pci/pciide_machdep.c	pciide
1061.127Snathanwfile	arch/i386/pci/pcic_pci_machdep.c	pcic_pci
1071.78Sthorpej
1081.78Sthorpej# PCI-Host bridge chipsets
1091.108Sthorpejdevice	pchb: pcibus
1101.78Sthorpejattach	pchb at pci
1111.78Sthorpejfile	arch/i386/pci/pchb.c		pchb
1121.107Sthorpej
1131.107Sthorpej# PCI-EISA bridges
1141.108Sthorpejdevice	pceb: eisabus, isabus
1151.107Sthorpejattach	pceb at pci
1161.107Sthorpejfile	arch/i386/pci/pceb.c		pceb
1171.78Sthorpej
1181.78Sthorpej# PCI-ISA bridges
1191.108Sthorpejdevice	pcib: isabus
1201.78Sthorpejattach	pcib at pci
1211.78Sthorpejfile	arch/i386/pci/pcib.c		pcib
1221.64Scgd
1231.64Scgd#
1241.55Smycroft# ISA and mixed ISA+EISA or ISA+PCI drivers
1251.55Smycroft#
1261.56Scgd
1271.98Sthorpejinclude "dev/isa/files.isa"
1281.56Scgdmajor	{mcd = 7}
1291.56Scgd#major	{scd = 15}
1301.56Scgdmajor	{wt = 3}
1311.115Scgd
1321.115Scgd# XXX THE FOLLOWING BLOCK SHOULD GO INTO dev/pci/files.pci, BUT CANNOT
1331.115Scgd# XXX BECAUSE NOT 'lpt' IS DEFINED IN files.isa, RATHER THAN files.
1341.115Scgd# XXX (when the conf/files and files.isa bogons are fixed, this can
1351.115Scgd# XXX be fixed as well.)
1361.115Scgd
1371.115Scgdattach	lpt at puc with lpt_puc
1381.115Scgdfile	dev/pci/lpt_puc.c	lpt_puc
1391.56Scgd
1401.56Scgdfile	arch/i386/isa/isa_machdep.c	isa
1411.56Scgd
1421.56Scgd# PC clock
1431.56Scgdfile	arch/i386/isa/clock.c		isa
1441.56Scgd
1451.56Scgd# Numeric Processing Extension; Math Co-processor
1461.108Sthorpejdevice	npx
1471.67Sthorpejattach	npx at isa
1481.56Scgdfile	arch/i386/isa/npx.c		npx needs-flag
1491.56Scgd
1501.66Sthorpej# attribute used to represent the "keyboard controller"
1511.66Sthorpej# XXX should be a real device
1521.111Sdrochnerdefine pckbcport { [irq = -1], [port = -1] }
1531.66Sthorpej
1541.56Scgd# PC console support a la "pccons"
1551.111Sdrochnerdevice	pc: tty, pckbcport
1561.67Sthorpejattach	pc at isa
1571.111Sdrochnerdevice	pcconskbd
1581.111Sdrochnerattach	pcconskbd at pckbc
1591.111Sdrochnerfile	arch/i386/isa/pccons.c		pc | pcconskbd needs-flag
1601.56Scgd
1611.56Scgd# PC console support a la "pcvt"
1621.111Sdrochnerdevice	vt: tty, pckbcport
1631.67Sthorpejattach	vt at isa
1641.56Scgdfile	arch/i386/isa/pcvt/pcvt_drv.c	vt needs-flag
1651.56Scgdfile	arch/i386/isa/pcvt/pcvt_ext.c	vt needs-flag
1661.56Scgdfile	arch/i386/isa/pcvt/pcvt_kbd.c	vt needs-flag
1671.56Scgdfile	arch/i386/isa/pcvt/pcvt_out.c	vt needs-flag
1681.56Scgdfile	arch/i386/isa/pcvt/pcvt_sup.c	vt needs-flag
1691.56Scgdfile	arch/i386/isa/pcvt/pcvt_vtf.c	vt needs-flag
1701.56Scgd
1711.56Scgd# PC Mice; Logitech-style, Microsoft-style, and PS/2-style
1721.128Sdrochnerdevice	olms
1731.128Sdrochnerattach	olms at isa
1741.128Sdrochnerfile	arch/i386/isa/olms.c		olms needs-flag
1751.128Sdrochnerdevice	lms: wsmousedev
1761.67Sthorpejattach	lms at isa
1771.128Sdrochnerfile	arch/i386/isa/lms.c		lms
1781.128Sdrochnerdevice	omms
1791.128Sdrochnerattach	omms at isa
1801.128Sdrochnerfile	arch/i386/isa/omms.c		omms needs-flag
1811.128Sdrochnerdevice	mms: wsmousedev
1821.67Sthorpejattach	mms at isa
1831.128Sdrochnerfile	arch/i386/isa/mms.c		mms
1841.128Sdrochnerdevice	opms
1851.128Sdrochnerattach	opms at pckbcport with opms_hack
1861.128Sdrochnerattach	opms at pckbc with opms_pckbc
1871.128Sdrochnerfile	arch/i386/isa/pms.c		opms | opms_hack | opms_pckbc needs-flag
1881.111Sdrochner
1891.111Sdrochnerinclude "dev/wscons/files.wscons"
1901.111Sdrochner
1911.111Sdrochnerinclude "dev/pckbc/files.pckbc"
1921.113Sdrochner
1931.113Sdrochnerdevice sysbeep
1941.113Sdrochnerattach sysbeep at pcppi
1951.111Sdrochner
1961.56Scgd# Floppy disk controller
1971.108Sthorpejdevice	fdc {drive = -1}
1981.67Sthorpejattach	fdc at isa
1991.108Sthorpejdevice	fd: disk, isadma
2001.67Sthorpejattach	fd at fdc
2011.56Scgdfile	arch/i386/isa/fd.c		fdc needs-flag
2021.56Scgdmajor	{fd = 2}
2031.71Sperry
2041.71Sperry# Game adapter (joystick)
2051.108Sthorpejdevice	joy
2061.71Sperryfile	arch/i386/isa/joy.c		joy needs-flag
2071.76Ssoda
2081.80Schristosattach	joy at isa with joy_isa
2091.80Schristosfile	arch/i386/isa/joy_isa.c		joy_isa
2101.80Schristos
2111.76Ssoda# Adaptec AHA-284x VL SCSI controllers
2121.76Ssoda# device declaration in sys/conf/files
2131.76Ssodaattach	ahc at isa with ahc_isa
2141.76Ssodafile	arch/i386/isa/ahc_isa.c		ahc_isa
2151.56Scgd
2161.55Smycroft#
2171.55Smycroft# EISA-only drivers
2181.55Smycroft#
2191.56Scgd
2201.98Sthorpejinclude "dev/eisa/files.eisa"
2211.72Scgdfile	arch/i386/eisa/eisa_machdep.c	eisa
2221.77Sjtk
2231.80Schristos# ISA Plug 'n Play devices
2241.80Schristosfile	arch/i386/isa/isapnp_machdep.c	isapnp
2251.80Schristos
2261.80Schristosattach	joy at isapnp with joy_isapnp
2271.80Schristosfile	arch/i386/isa/joy_isapnp.c	joy_isapnp
2281.77Sjtk
2291.77Sjtk#
2301.77Sjtk# Other mainbus-attached devices
2311.77Sjtk#
2321.77Sjtk
2331.77Sjtk# Advanced Power Management support (APM)
2341.108Sthorpejdevice apm: bioscall
2351.77Sjtkattach apm at mainbus
2361.77Sjtkfile	arch/i386/i386/apm.c		apm needs-count
2371.89Sjtkfile	arch/i386/i386/apmcall.s	apm
2381.56Scgd
2391.55Smycroft#
2401.55Smycroft# Compatibility modules
2411.55Smycroft#
2421.61Smycroft
2431.61Smycroft# VM86 mode
2441.61Smycroftfile	arch/i386/i386/vm86.c			vm86
2451.120Smycroft
2461.120Smycroft# Binary compatibility with previous NetBSD releases (COMPAT_XX)
2471.120Smycroftfile	arch/i386/i386/compat_13_machdep.c	compat_13
2481.56Scgd
2491.59Smycroft# SVR4 binary compatibility (COMPAT_SVR4)
2501.98Sthorpejinclude "compat/svr4/files.svr4"
2511.59Smycroftfile	arch/i386/i386/svr4_machdep.c		compat_svr4
2521.56Scgd
2531.59Smycroft# iBCS-2 binary compatibility (COMPAT_IBCS2)
2541.98Sthorpejinclude "compat/ibcs2/files.ibcs2"
2551.88Smycroftfile	arch/i386/i386/ibcs2_machdep.c		compat_ibcs2
2561.56Scgd
2571.59Smycroft# Linux binary compatibility (COMPAT_LINUX)
2581.98Sthorpejinclude "compat/linux/files.linux"
2591.122Sfvdlinclude "compat/linux/arch/i386/files.linux_i386"
2601.58Smycroft
2611.59Smycroft# FreeBSD binary compatibility (COMPAT_FREEBSD)
2621.98Sthorpejinclude "compat/freebsd/files.freebsd"
2631.58Smycroftfile	arch/i386/i386/freebsd_machdep.c	compat_freebsd
2641.82Saugustss
2651.82Saugustss# OSS audio driver compatibility
2661.98Sthorpejinclude "compat/ossaudio/files.ossaudio"
2671.91Sbouyer
2681.91Sbouyer# network devices MII bus
2691.98Sthorpejinclude "dev/mii/files.mii"
2701.90Sthorpej
2711.90Sthorpej# XXXX pcic here because it needs to be late.  The catch: pcic needs
2721.90Sthorpej# to be late, so devices which attach to it are attached late.  But it
2731.90Sthorpej# needs to be before its isa and pci attachments.  This answer is
2741.90Sthorpej# non-optimal, but I don't have a better answer right now.
2751.90Sthorpej
2761.90Sthorpej# PCIC pcmcia contoller
2771.90Sthorpej# XXX this needs to be done very late, so it's done here.  This feels
2781.90Sthorpej# like a kludge, but it might be for the best.
2791.93Sthorpej
2801.93Sthorpejdefopt	PCIC_ISA_ALLOC_IOBASE
2811.93Sthorpejdefopt	PCIC_ISA_ALLOC_IOSIZE
2821.93Sthorpejdefopt	PCIC_ISA_INTR_ALLOC_MASK
2831.93Sthorpej
2841.126Spkdevice	pcic: pcmciabus
2851.92Sthorpejfile	dev/ic/i82365.c			pcic
2861.90Sthorpej
2871.114Ssommerfe# PCIC pcmcia controller on ISA bus.
2881.90Sthorpejattach	pcic at isa with pcic_isa
2891.90Sthorpejfile	dev/isa/i82365_isa.c		pcic_isa
2901.90Sthorpej
2911.114Ssommerfe# PCIC pcmcia controller on PCI bus.
2921.90Sthorpejattach	pcic at pci with pcic_pci
2931.90Sthorpejfile	dev/pci/i82365_pci.c		pcic_pci
2941.90Sthorpej
2951.114Ssommerfe# PCIC pcmcia controller on PnP board
2961.114Ssommerfeattach pcic at isapnp with pcic_isapnp
2971.114Ssommerfefile	dev/isapnp/i82365_isapnp.c	pcic_isapnp
2981.114Ssommerfe
2991.114Ssommerfe# Code common to ISA and ISAPnP attachments
3001.127Snathanwfile	dev/isa/i82365_isasubr.c	pcic_isa | pcic_isapnp | pcic_pci
3011.90Sthorpej
3021.90Sthorpej# this wants to be probed as late as possible.
3031.90Sthorpej#
3041.90Sthorpej# Machine-independent PCMCIA drivers
3051.90Sthorpej#
3061.90Sthorpejinclude "dev/pcmcia/files.pcmcia"
3071.90Sthorpej
3081.90Sthorpej
3091.116Saugustssinclude "dev/usb/files.usb"
310