files.i386 revision 1.141
11.140Sdrochner#	$NetBSD: files.i386,v 1.141 1999/11/12 18:40:07 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.136Sdrochner	APM_NO_STANDBY APM_V10_ONLY APM_NO_V12 APMDEBUG APMDEBUG_VALUE
141.138Sitohy	APM_NO_POWER_PRINT
151.100Sthorpej
161.100Sthorpej# Processor type options.
171.100Sthorpejdefopt	opt_cputype.h I386_CPU I486_CPU I586_CPU I686_CPU
181.124Sbouyer
191.124Sbouyer# delay before cpu_reset() for reboot.
201.124Sbouyerdefopt CPURESET_DELAY
211.101Sthorpej
221.101Sthorpej# VM86 emulation
231.101Sthorpejdefopt	VM86
241.102Sthorpej
251.102Sthorpej# Floating point emulation
261.102Sthorpejdefopt	MATH_EMULATE
271.103Sthorpej
281.103Sthorpej# User-settable LDT (used by WINE)
291.103Sthorpejdefopt	USER_LDT
301.104Sthorpej
311.104Sthorpej# Speed hack; make NOPs dummies (might break on some machines)
321.104Sthorpejdefopt	DUMMY_NOPS
331.105Sthorpej
341.105Sthorpej# X server support in console drivers
351.118Srvbdefopt	opt_xserver.h XSERVER XSERVER_DDB
361.140Sdrochner
371.140Sdrochner# understand boot device passed by pre-1.3 bootblocks
381.140Sdrochnerdefopt	COMPAT_OLDBOOT
391.98Sthorpej
401.56Scgdfile	arch/i386/i386/autoconf.c
411.56Scgdfile	arch/i386/i386/conf.c
421.119Srvbfile	arch/i386/i386/db_dbgreg.s	ddb
431.56Scgdfile	arch/i386/i386/db_disasm.c	ddb
441.56Scgdfile	arch/i386/i386/db_interface.c	ddb
451.85Sthorpejfile	arch/i386/i386/db_memrw.c	ddb | kgdb
461.56Scgdfile	arch/i386/i386/db_trace.c	ddb
471.56Scgdfile	arch/i386/i386/disksubr.c	disk
481.60Smycroftfile	arch/i386/i386/gdt.c
491.74Smycroftfile	arch/i386/i386/in_cksum.s	inet
501.85Sthorpejfile	arch/i386/i386/kgdb_machdep.c	kgdb
511.56Scgdfile	arch/i386/i386/machdep.c
521.56Scgdfile	arch/i386/i386/math_emulate.c	math_emulate
531.56Scgdfile	arch/i386/i386/mem.c
541.56Scgdfile	arch/i386/i386/microtime.s
551.56Scgdfile	arch/i386/i386/ns_cksum.c	ns
561.134Sthorpejfile	arch/i386/i386/pmap.c
571.56Scgdfile	arch/i386/i386/process_machdep.c
581.56Scgdfile	arch/i386/i386/sys_machdep.c
591.56Scgdfile	arch/i386/i386/trap.c
601.56Scgdfile	arch/i386/i386/vm_machdep.c
611.56Scgdfile	dev/cons.c
621.56Scgd
631.56Scgd#
641.56Scgd# Machine-independent SCSI drivers
651.56Scgd#
661.56Scgd
671.98Sthorpejinclude "dev/scsipi/files.scsipi"
681.56Scgdmajor	{sd = 4}
691.56Scgdmajor	{cd = 6}
701.69Sperry
711.97Scgd#
721.97Scgd# Machine-independent ATA drivers
731.97Scgd#
741.97Scgd
751.98Sthorpejinclude "dev/ata/files.ata"
761.97Scgdmajor	{wd = 0}
771.97Scgd
781.79Spk# Memory Disk for install floppy
791.79Spkfile arch/i386/i386/md_root.c	memory_disk_hooks
801.79Spkmajor	{md = 17}
811.56Scgd
821.56Scgd#
831.56Scgd# System bus types
841.56Scgd#
851.65Scgd
861.77Sjtkdefine mainbus { }
871.108Sthorpejdevice	mainbus: isabus, eisabus, pcibus, mainbus
881.67Sthorpejattach	mainbus at root
891.65Scgdfile	arch/i386/i386/mainbus.c	mainbus
901.56Scgd
911.89Sjtk# attribute used to bring in BIOS trampoline code for real-mode probing
921.89Sjtk# of certain devices/BIOS features
931.89Sjtkdefine bioscall
941.89Sjtkfile	arch/i386/i386/bioscall.s	bioscall needs-flag
951.89Sjtk
961.56Scgd#device	mca at root {...}
971.56Scgd
981.55Smycroft#
991.64Scgd# PCI-only drivers
1001.64Scgd# XXX MUST BE INCLUDED BEFORE files.isa, as long as files.isa attaches
1011.64Scgd# XXX devices to 'pci'.
1021.64Scgd#
1031.64Scgd
1041.98Sthorpejinclude "dev/pci/files.pci"
1051.64Scgdfile	arch/i386/pci/pci_machdep.c	pci
1061.129Sdrochnerdefopt PCI_CONF_MODE
1071.110Scgdfile	arch/i386/pci/pciide_machdep.c	pciide
1081.127Snathanwfile	arch/i386/pci/pcic_pci_machdep.c	pcic_pci
1091.78Sthorpej
1101.78Sthorpej# PCI-Host bridge chipsets
1111.108Sthorpejdevice	pchb: pcibus
1121.78Sthorpejattach	pchb at pci
1131.78Sthorpejfile	arch/i386/pci/pchb.c		pchb
1141.107Sthorpej
1151.107Sthorpej# PCI-EISA bridges
1161.108Sthorpejdevice	pceb: eisabus, isabus
1171.107Sthorpejattach	pceb at pci
1181.107Sthorpejfile	arch/i386/pci/pceb.c		pceb
1191.78Sthorpej
1201.78Sthorpej# PCI-ISA bridges
1211.108Sthorpejdevice	pcib: isabus
1221.78Sthorpejattach	pcib at pci
1231.78Sthorpejfile	arch/i386/pci/pcib.c		pcib
1241.64Scgd
1251.64Scgd#
1261.55Smycroft# ISA and mixed ISA+EISA or ISA+PCI drivers
1271.55Smycroft#
1281.56Scgd
1291.98Sthorpejinclude "dev/isa/files.isa"
1301.56Scgdmajor	{mcd = 7}
1311.56Scgd#major	{scd = 15}
1321.115Scgd
1331.115Scgd# XXX THE FOLLOWING BLOCK SHOULD GO INTO dev/pci/files.pci, BUT CANNOT
1341.115Scgd# XXX BECAUSE NOT 'lpt' IS DEFINED IN files.isa, RATHER THAN files.
1351.115Scgd# XXX (when the conf/files and files.isa bogons are fixed, this can
1361.115Scgd# XXX be fixed as well.)
1371.115Scgd
1381.115Scgdattach	lpt at puc with lpt_puc
1391.115Scgdfile	dev/pci/lpt_puc.c	lpt_puc
1401.56Scgd
1411.56Scgdfile	arch/i386/isa/isa_machdep.c	isa
1421.56Scgd
1431.56Scgd# PC clock
1441.56Scgdfile	arch/i386/isa/clock.c		isa
1451.130Sdrochnerfile	dev/clock_subr.c		isa
1461.56Scgd
1471.56Scgd# Numeric Processing Extension; Math Co-processor
1481.108Sthorpejdevice	npx
1491.67Sthorpejattach	npx at isa
1501.56Scgdfile	arch/i386/isa/npx.c		npx needs-flag
1511.56Scgd
1521.66Sthorpej# attribute used to represent the "keyboard controller"
1531.66Sthorpej# XXX should be a real device
1541.111Sdrochnerdefine pckbcport { [irq = -1], [port = -1] }
1551.66Sthorpej
1561.56Scgd# PC console support a la "pccons"
1571.111Sdrochnerdevice	pc: tty, pckbcport
1581.67Sthorpejattach	pc at isa
1591.111Sdrochnerdevice	pcconskbd
1601.111Sdrochnerattach	pcconskbd at pckbc
1611.111Sdrochnerfile	arch/i386/isa/pccons.c		pc | pcconskbd needs-flag
1621.56Scgd
1631.56Scgd# PC console support a la "pcvt"
1641.111Sdrochnerdevice	vt: tty, pckbcport
1651.67Sthorpejattach	vt at isa
1661.56Scgdfile	arch/i386/isa/pcvt/pcvt_drv.c	vt needs-flag
1671.56Scgdfile	arch/i386/isa/pcvt/pcvt_ext.c	vt needs-flag
1681.56Scgdfile	arch/i386/isa/pcvt/pcvt_kbd.c	vt needs-flag
1691.56Scgdfile	arch/i386/isa/pcvt/pcvt_out.c	vt needs-flag
1701.56Scgdfile	arch/i386/isa/pcvt/pcvt_sup.c	vt needs-flag
1711.56Scgdfile	arch/i386/isa/pcvt/pcvt_vtf.c	vt needs-flag
1721.56Scgd
1731.56Scgd# PC Mice; Logitech-style, Microsoft-style, and PS/2-style
1741.128Sdrochnerdevice	olms
1751.128Sdrochnerattach	olms at isa
1761.128Sdrochnerfile	arch/i386/isa/olms.c		olms needs-flag
1771.128Sdrochnerdevice	lms: wsmousedev
1781.67Sthorpejattach	lms at isa
1791.128Sdrochnerfile	arch/i386/isa/lms.c		lms
1801.128Sdrochnerdevice	omms
1811.128Sdrochnerattach	omms at isa
1821.128Sdrochnerfile	arch/i386/isa/omms.c		omms needs-flag
1831.128Sdrochnerdevice	mms: wsmousedev
1841.67Sthorpejattach	mms at isa
1851.128Sdrochnerfile	arch/i386/isa/mms.c		mms
1861.128Sdrochnerdevice	opms
1871.128Sdrochnerattach	opms at pckbcport with opms_hack
1881.128Sdrochnerattach	opms at pckbc with opms_pckbc
1891.128Sdrochnerfile	arch/i386/isa/pms.c		opms | opms_hack | opms_pckbc needs-flag
1901.111Sdrochner
1911.111Sdrochnerinclude "dev/wscons/files.wscons"
1921.111Sdrochner
1931.111Sdrochnerinclude "dev/pckbc/files.pckbc"
1941.113Sdrochner
1951.113Sdrochnerdevice sysbeep
1961.113Sdrochnerattach sysbeep at pcppi
1971.111Sdrochner
1981.56Scgd# Floppy disk controller
1991.108Sthorpejdevice	fdc {drive = -1}
2001.67Sthorpejattach	fdc at isa
2011.108Sthorpejdevice	fd: disk, isadma
2021.67Sthorpejattach	fd at fdc
2031.56Scgdfile	arch/i386/isa/fd.c		fdc needs-flag
2041.56Scgdmajor	{fd = 2}
2051.71Sperry
2061.71Sperry# Game adapter (joystick)
2071.108Sthorpejdevice	joy
2081.71Sperryfile	arch/i386/isa/joy.c		joy needs-flag
2091.76Ssoda
2101.80Schristosattach	joy at isa with joy_isa
2111.80Schristosfile	arch/i386/isa/joy_isa.c		joy_isa
2121.80Schristos
2131.76Ssoda# Adaptec AHA-284x VL SCSI controllers
2141.76Ssoda# device declaration in sys/conf/files
2151.76Ssodaattach	ahc at isa with ahc_isa
2161.76Ssodafile	arch/i386/isa/ahc_isa.c		ahc_isa
2171.56Scgd
2181.55Smycroft#
2191.55Smycroft# EISA-only drivers
2201.55Smycroft#
2211.56Scgd
2221.98Sthorpejinclude "dev/eisa/files.eisa"
2231.72Scgdfile	arch/i386/eisa/eisa_machdep.c	eisa
2241.77Sjtk
2251.80Schristos# ISA Plug 'n Play devices
2261.80Schristosfile	arch/i386/isa/isapnp_machdep.c	isapnp
2271.80Schristos
2281.80Schristosattach	joy at isapnp with joy_isapnp
2291.80Schristosfile	arch/i386/isa/joy_isapnp.c	joy_isapnp
2301.130Sdrochner
2311.130Sdrochner#
2321.130Sdrochner# VME support
2331.130Sdrochner#
2341.130Sdrochnerinclude "dev/vme/files.vme"
2351.77Sjtk
2361.77Sjtk#
2371.77Sjtk# Other mainbus-attached devices
2381.77Sjtk#
2391.77Sjtk
2401.77Sjtk# Advanced Power Management support (APM)
2411.108Sthorpejdevice apm: bioscall
2421.77Sjtkattach apm at mainbus
2431.77Sjtkfile	arch/i386/i386/apm.c		apm needs-count
2441.89Sjtkfile	arch/i386/i386/apmcall.s	apm
2451.56Scgd
2461.55Smycroft#
2471.55Smycroft# Compatibility modules
2481.55Smycroft#
2491.61Smycroft
2501.61Smycroft# VM86 mode
2511.61Smycroftfile	arch/i386/i386/vm86.c			vm86
2521.120Smycroft
2531.120Smycroft# Binary compatibility with previous NetBSD releases (COMPAT_XX)
2541.135Smellonfile	arch/i386/i386/compat_13_machdep.c	compat_13 | compat_aout
2551.56Scgd
2561.59Smycroft# SVR4 binary compatibility (COMPAT_SVR4)
2571.98Sthorpejinclude "compat/svr4/files.svr4"
2581.59Smycroftfile	arch/i386/i386/svr4_machdep.c		compat_svr4
2591.56Scgd
2601.59Smycroft# iBCS-2 binary compatibility (COMPAT_IBCS2)
2611.98Sthorpejinclude "compat/ibcs2/files.ibcs2"
2621.88Smycroftfile	arch/i386/i386/ibcs2_machdep.c		compat_ibcs2
2631.56Scgd
2641.59Smycroft# Linux binary compatibility (COMPAT_LINUX)
2651.98Sthorpejinclude "compat/linux/files.linux"
2661.122Sfvdlinclude "compat/linux/arch/i386/files.linux_i386"
2671.58Smycroft
2681.59Smycroft# FreeBSD binary compatibility (COMPAT_FREEBSD)
2691.98Sthorpejinclude "compat/freebsd/files.freebsd"
2701.58Smycroftfile	arch/i386/i386/freebsd_machdep.c	compat_freebsd
2711.131Schristos
2721.131Schristos# a.out binary compatibility (COMPAT_AOUT)
2731.131Schristosinclude "compat/aout/files.aout"
2741.82Saugustss
2751.82Saugustss# OSS audio driver compatibility
2761.98Sthorpejinclude "compat/ossaudio/files.ossaudio"
2771.91Sbouyer
2781.91Sbouyer# network devices MII bus
2791.98Sthorpejinclude "dev/mii/files.mii"
2801.139Shaya
2811.139Shaya#
2821.139Shaya# CARDBUS
2831.139Shaya#
2841.139Shayainclude "dev/cardbus/files.cardbus"
2851.139Shayafile	arch/i386/i386/rbus_machdep.c	cardbus
2861.90Sthorpej
2871.90Sthorpej# XXXX pcic here because it needs to be late.  The catch: pcic needs
2881.90Sthorpej# to be late, so devices which attach to it are attached late.  But it
2891.90Sthorpej# needs to be before its isa and pci attachments.  This answer is
2901.90Sthorpej# non-optimal, but I don't have a better answer right now.
2911.90Sthorpej
2921.90Sthorpej# PCIC pcmcia contoller
2931.90Sthorpej# XXX this needs to be done very late, so it's done here.  This feels
2941.90Sthorpej# like a kludge, but it might be for the best.
2951.93Sthorpej
2961.93Sthorpejdefopt	PCIC_ISA_ALLOC_IOBASE
2971.93Sthorpejdefopt	PCIC_ISA_ALLOC_IOSIZE
2981.93Sthorpejdefopt	PCIC_ISA_INTR_ALLOC_MASK
2991.93Sthorpej
3001.126Spkdevice	pcic: pcmciabus
3011.92Sthorpejfile	dev/ic/i82365.c			pcic
3021.90Sthorpej
3031.114Ssommerfe# PCIC pcmcia controller on ISA bus.
3041.90Sthorpejattach	pcic at isa with pcic_isa
3051.90Sthorpejfile	dev/isa/i82365_isa.c		pcic_isa
3061.90Sthorpej
3071.114Ssommerfe# PCIC pcmcia controller on PCI bus.
3081.90Sthorpejattach	pcic at pci with pcic_pci
3091.90Sthorpejfile	dev/pci/i82365_pci.c		pcic_pci
3101.90Sthorpej
3111.114Ssommerfe# PCIC pcmcia controller on PnP board
3121.114Ssommerfeattach pcic at isapnp with pcic_isapnp
3131.114Ssommerfefile	dev/isapnp/i82365_isapnp.c	pcic_isapnp
3141.114Ssommerfe
3151.114Ssommerfe# Code common to ISA and ISAPnP attachments
3161.127Snathanwfile	dev/isa/i82365_isasubr.c	pcic_isa | pcic_isapnp | pcic_pci
3171.132Sbad
3181.132Sbad# XXXX tcic here because it needs to be late.  The catch: tcic needs
3191.132Sbad# to be late, so devices which attach to it are attached late.  But it
3201.132Sbad# needs to be before its isa and pci attachments.  This answer is
3211.132Sbad# non-optimal, but I don't have a better answer right now.
3221.132Sbad
3231.132Sbad# TCIC pcmcia contoller
3241.132Sbad# XXX this needs to be done very late, so it's done here.  This feels
3251.132Sbad# like a kludge, but it might be for the best.
3261.132Sbad
3271.132Sbaddefopt	TCIC_ISA_ALLOC_IOBASE
3281.132Sbaddefopt	TCIC_ISA_ALLOC_IOSIZE
3291.132Sbaddefopt	TCIC_ISA_INTR_ALLOC_MASK
3301.132Sbad
3311.132Sbaddevice	tcic: pcmciabus
3321.132Sbadfile	dev/ic/tcic2.c			tcic
3331.132Sbad
3341.132Sbad# TCIC pcmcia contoller
3351.132Sbadattach	tcic at isa with tcic_isa
3361.132Sbadfile	dev/isa/tcic2_isa.c		tcic_isa
3371.90Sthorpej
3381.90Sthorpej# this wants to be probed as late as possible.
3391.90Sthorpej#
3401.90Sthorpej# Machine-independent PCMCIA drivers
3411.90Sthorpej#
3421.90Sthorpejinclude "dev/pcmcia/files.pcmcia"
3431.90Sthorpej
3441.90Sthorpej
3451.116Saugustssinclude "dev/usb/files.usb"
3461.141Sdrochner
3471.141Sdrochnerinclude "arch/i386/pnpbios/files.pnpbios"
348