files.i386 revision 1.173
1# $NetBSD: files.i386,v 1.173 2000/11/26 11:18:20 jdolecek 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 APM_NO_V12 APMDEBUG APMDEBUG_VALUE 14 APM_POWER_PRINT APM_DISABLE_INTERRUPTS APM_ALLOW_BOGUS_SEGMENTS 15 16# Processor type options. 17defopt opt_cputype.h I386_CPU I486_CPU I586_CPU I686_CPU 18 19# delay before cpu_reset() for reboot. 20defopt CPURESET_DELAY 21 22# VM86 emulation 23defopt VM86 24 25# Floating point emulation 26defopt MATH_EMULATE 27 28# User-settable LDT (used by WINE) 29defopt USER_LDT 30 31# Speed hack; make NOPs dummies (might break on some machines) 32defopt DUMMY_NOPS 33 34# Performance counter support 35defopt PERFCTRS 36 37# X server support in console drivers 38defopt opt_xserver.h XSERVER XSERVER_DDB 39 40# understand boot device passed by pre-1.3 bootblocks 41defopt COMPAT_OLDBOOT 42 43# PCI BIOS options 44defopt opt_pcibios.h PCIBIOS PCIBIOSVERBOSE 45 PCIBIOS_ADDR_FIXUP PCIBIOS_BUS_FIXUP 46 PCIBIOS_INTR_FIXUP PCIBIOS_INTR_FIXUP_FORCE 47 PCIBIOS_INTR_GUESS PCIBIOS_IRQS_HINT PCIINTR_DEBUG 48 49# Large page size 50defopt LARGEPAGES 51 52file arch/i386/i386/autoconf.c 53file arch/i386/i386/bus_machdep.c 54file arch/i386/i386/conf.c 55file arch/i386/i386/consinit.c 56file arch/i386/i386/db_dbgreg.s ddb 57file arch/i386/i386/db_disasm.c ddb 58file arch/i386/i386/db_interface.c ddb 59file arch/i386/i386/db_memrw.c ddb | kgdb 60file arch/i386/i386/db_trace.c ddb 61file arch/i386/i386/disksubr.c disk 62file arch/i386/i386/gdt.c 63file arch/i386/i386/in_cksum.s inet 64file netinet/in4_cksum.c inet 65file arch/i386/i386/ipkdb_glue.c ipkdb 66file arch/i386/i386/kgdb_machdep.c kgdb 67file arch/i386/i386/machdep.c 68file arch/i386/i386/math_emulate.c math_emulate 69file arch/i386/i386/mem.c 70file arch/i386/i386/microtime.s 71file netns/ns_cksum.c ns 72file arch/i386/i386/pmap.c 73file arch/i386/i386/process_machdep.c 74file arch/i386/i386/sys_machdep.c 75file arch/i386/i386/trap.c 76file arch/i386/i386/vm_machdep.c 77file dev/cons.c 78 79file arch/i386/i386/pmc.c perfctrs 80 81# 82# Machine-independent SCSI drivers 83# 84 85include "dev/scsipi/files.scsipi" 86major {sd = 4} 87major {cd = 6} 88 89# 90# Machine-independent ATA drivers 91# 92 93include "dev/ata/files.ata" 94major {wd = 0} 95 96# Memory Disk for install floppy 97file arch/i386/i386/md_root.c memory_disk_hooks 98major {md = 17} 99 100# RAIDframe 101major {raid = 18} 102 103# Logical storage units 104major {lsu = 19} 105 106# 107# Machine-independent I2O drivers 108# 109 110include "dev/i2o/files.i2o" 111 112# attribute used to bring in BIOS trampoline code for real-mode probing 113# of certain devices/BIOS features 114define bioscall 115file arch/i386/i386/bioscall.s bioscall needs-flag 116 117# BIOS32 routines 118define bios32 119file arch/i386/i386/bios32.c bios32 needs-flag 120 121# 122# System bus types 123# 124 125define mainbus { } 126# XXX BIOS32 only if something that uses it is configured! 127device mainbus: isabus, eisabus, mcabus, pcibus, mainbus, bios32 128attach mainbus at root 129file arch/i386/i386/mainbus.c mainbus 130 131# 132# PCI-only drivers 133# XXX MUST BE INCLUDED BEFORE files.isa, as long as files.isa attaches 134# XXX devices to 'pci'. 135# 136 137include "dev/pci/files.pci" 138file arch/i386/pci/pci_machdep.c pci 139file arch/i386/pci/pcibios.c pcibios 140file arch/i386/pci/pci_intr_fixup.c pcibios & pcibios_intr_fixup 141file arch/i386/pci/piix.c pcibios & pcibios_intr_fixup 142file arch/i386/pci/opti82c558.c pcibios & pcibios_intr_fixup 143file arch/i386/pci/opti82c700.c pcibios & pcibios_intr_fixup 144file arch/i386/pci/sis85c503.c pcibios & pcibios_intr_fixup 145file arch/i386/pci/via82c586.c pcibios & pcibios_intr_fixup 146file arch/i386/pci/pci_bus_fixup.c pcibios & pcibios_bus_fixup 147file arch/i386/pci/pci_addr_fixup.c pcibios & pcibios_addr_fixup 148defopt PCI_CONF_MODE 149file arch/i386/pci/pciide_machdep.c pciide 150file arch/i386/pci/pcic_pci_machdep.c pcic_pci 151 152# PCI-Host bridge chipsets 153device pchb: pcibus 154attach pchb at pci 155file arch/i386/pci/pchb.c pchb 156file arch/i386/pci/pchb_rnd.c pchb & rnd 157 158# PCI-EISA bridges 159device pceb: eisabus, isabus 160attach pceb at pci 161file arch/i386/pci/pceb.c pceb 162 163# PCI-ISA bridges 164device pcib: isabus 165attach pcib at pci 166file arch/i386/pci/pcib.c pcib 167 168# Game adapter (joystick) 169device joy 170file arch/i386/isa/joy.c joy needs-flag 171 172# PCI joysticks 173attach joy at pci with pci_joy 174file arch/i386/pci/joy_pci.c pci_joy 175 176# 177# ISA and mixed ISA+EISA or ISA+PCI drivers 178# 179 180include "dev/isa/files.isa" 181major {mcd = 7} 182#major {scd = 15} 183 184# XXX THE FOLLOWING BLOCK SHOULD GO INTO dev/pci/files.pci, BUT CANNOT 185# XXX BECAUSE NOT 'lpt' IS DEFINED IN files.isa, RATHER THAN files. 186# XXX (when the conf/files and files.isa bogons are fixed, this can 187# XXX be fixed as well.) 188 189attach lpt at puc with lpt_puc 190file dev/pci/lpt_puc.c lpt_puc 191 192file arch/i386/isa/isa_machdep.c isa 193 194# PC clock 195file arch/i386/isa/clock.c isa 196file dev/clock_subr.c isa 197 198# Numeric Processing Extension; Math Co-processor 199device npx 200file arch/i386/isa/npx.c npx needs-flag 201 202attach npx at isa with npx_isa 203file arch/i386/isa/npx_isa.c npx_isa 204 205# attribute used to represent the "keyboard controller" 206# XXX should be a real device 207define pckbcport { [irq = -1], [port = -1] } 208 209# PC console support a la "pccons" 210device pc: tty, pckbcport 211attach pc at isa 212device pcconskbd 213attach pcconskbd at pckbc 214file arch/i386/isa/pccons.c pc | pcconskbd needs-flag 215 216# PC Mice; Logitech-style, Microsoft-style, and PS/2-style 217device olms 218attach olms at isa 219file arch/i386/isa/olms.c olms needs-flag 220device lms: wsmousedev 221attach lms at isa 222file arch/i386/isa/lms.c lms 223device omms 224attach omms at isa 225file arch/i386/isa/omms.c omms needs-flag 226device mms: wsmousedev 227attach mms at isa 228file arch/i386/isa/mms.c mms 229device opms 230attach opms at pckbcport with opms_hack 231attach opms at pckbc with opms_pckbc 232file arch/i386/isa/pms.c opms | opms_hack | opms_pckbc needs-flag 233 234include "dev/wscons/files.wscons" 235 236include "dev/pckbc/files.pckbc" 237 238device sysbeep 239attach sysbeep at pcppi 240 241# Floppy disk controller 242device fdc {drive = -1}: isadma 243file dev/isa/fd.c fdc needs-flag 244 245attach fdc at isa with fdc_isa 246file dev/isa/fdc_isa.c fdc_isa 247 248device fd: disk 249attach fd at fdc 250major {fd = 2} 251 252attach joy at isa with joy_isa 253file arch/i386/isa/joy_isa.c joy_isa 254 255# Adaptec AHA-284x VL SCSI controllers 256# device declaration in sys/conf/files 257attach ahc at isa with ahc_isa: ahc_aic77xx, smc93cx6 258file arch/i386/isa/ahc_isa.c ahc_isa 259 260# 261# EISA-only drivers 262# 263 264include "dev/eisa/files.eisa" 265file arch/i386/eisa/eisa_machdep.c eisa 266 267# 268# MCA-only drivers 269# 270 271device mca {[slot = -1]} : bioscall 272include "dev/mca/files.mca" 273file arch/i386/mca/mca_machdep.c mca 274 275# ISA Plug 'n Play devices 276file arch/i386/isa/isapnp_machdep.c isapnp 277 278attach joy at isapnp with joy_isapnp 279file arch/i386/isa/joy_isapnp.c joy_isapnp 280 281# 282# VME support 283# 284include "dev/vme/files.vme" 285 286# 287# Other mainbus-attached devices 288# 289 290# Advanced Power Management support (APM) 291device apm: bioscall 292attach apm at mainbus 293file arch/i386/i386/apm.c apm needs-count 294file arch/i386/i386/apmcall.s apm 295 296# 297# Compatibility modules 298# 299 300# VM86 mode 301file arch/i386/i386/vm86.c vm86 302 303# Binary compatibility with previous NetBSD releases (COMPAT_XX) 304file arch/i386/i386/compat_13_machdep.c compat_13 | compat_aout 305 306# SVR4 binary compatibility (COMPAT_SVR4) 307include "compat/svr4/files.svr4" 308file arch/i386/i386/svr4_machdep.c compat_svr4 309file arch/i386/i386/svr4_sigcode.s compat_svr4 310 311# iBCS-2 binary compatibility (COMPAT_IBCS2) 312include "compat/ibcs2/files.ibcs2" 313file arch/i386/i386/ibcs2_machdep.c compat_ibcs2 314file arch/i386/i386/ibcs2_sigcode.s compat_ibcs2 315file arch/i386/i386/ibcs2_syscall.c compat_ibcs2 316 317# Linux binary compatibility (COMPAT_LINUX) 318include "compat/linux/files.linux" 319include "compat/linux/arch/i386/files.linux_i386" 320file arch/i386/i386/linux_sigcode.s compat_linux 321file arch/i386/i386/linux_syscall.c compat_linux 322 323# FreeBSD binary compatibility (COMPAT_FREEBSD) 324include "compat/freebsd/files.freebsd" 325file arch/i386/i386/freebsd_machdep.c compat_freebsd 326file arch/i386/i386/freebsd_sigcode.s compat_freebsd 327 328# a.out binary compatibility (COMPAT_AOUT) 329include "compat/aout/files.aout" 330 331# Win32 binary compatibility (COMPAT_PECOFF) 332include "compat/pecoff/files.pecoff" 333 334# OSS audio driver compatibility 335include "compat/ossaudio/files.ossaudio" 336 337# network devices MII bus 338include "dev/mii/files.mii" 339 340# 341# CARDBUS 342# 343include "dev/cardbus/files.cardbus" 344file arch/i386/i386/rbus_machdep.c cardbus 345 346# XXXX pcic here because it needs to be late. The catch: pcic needs 347# to be late, so devices which attach to it are attached late. But it 348# needs to be before its isa and pci attachments. This answer is 349# non-optimal, but I don't have a better answer right now. 350 351# PCIC pcmcia controller 352# XXX this needs to be done very late, so it's done here. This feels 353# like a kludge, but it might be for the best. 354 355defopt PCIC_ISA_ALLOC_IOBASE 356defopt PCIC_ISA_ALLOC_IOSIZE 357defopt PCIC_ISA_INTR_ALLOC_MASK 358 359device pcic: pcmciabus 360file dev/ic/i82365.c pcic 361 362# PCIC pcmcia controller on ISA bus. 363attach pcic at isa with pcic_isa 364file dev/isa/i82365_isa.c pcic_isa 365 366# PCIC pcmcia controller on PCI bus. 367attach pcic at pci with pcic_pci 368file dev/pci/i82365_pci.c pcic_pci 369 370# PCIC pcmcia controller on PnP board 371attach pcic at isapnp with pcic_isapnp 372file dev/isapnp/i82365_isapnp.c pcic_isapnp 373 374# Code common to ISA and ISAPnP attachments 375file dev/isa/i82365_isasubr.c pcic_isa | pcic_isapnp | pcic_pci 376 377# XXXX tcic here because it needs to be late. The catch: tcic needs 378# to be late, so devices which attach to it are attached late. But it 379# needs to be before its isa and pci attachments. This answer is 380# non-optimal, but I don't have a better answer right now. 381 382# TCIC pcmcia controller 383# XXX this needs to be done very late, so it's done here. This feels 384# like a kludge, but it might be for the best. 385 386defopt TCIC_ISA_ALLOC_IOBASE 387defopt TCIC_ISA_ALLOC_IOSIZE 388defopt TCIC_ISA_INTR_ALLOC_MASK 389 390device tcic: pcmciabus 391file dev/ic/tcic2.c tcic 392 393# TCIC pcmcia controller 394attach tcic at isa with tcic_isa 395file dev/isa/tcic2_isa.c tcic_isa 396 397# this wants to be probed as late as possible. 398# 399# Machine-independent PCMCIA drivers 400# 401include "dev/pcmcia/files.pcmcia" 402 403 404include "dev/usb/files.usb" 405 406include "dev/ieee1394/files.ieee1394" 407 408include "arch/i386/pnpbios/files.pnpbios" 409