files.i386 revision 1.171
1# $NetBSD: files.i386,v 1.171 2000/11/08 19:49:09 ad 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 309 310# iBCS-2 binary compatibility (COMPAT_IBCS2) 311include "compat/ibcs2/files.ibcs2" 312file arch/i386/i386/ibcs2_machdep.c compat_ibcs2 313 314# Linux binary compatibility (COMPAT_LINUX) 315include "compat/linux/files.linux" 316include "compat/linux/arch/i386/files.linux_i386" 317 318# FreeBSD binary compatibility (COMPAT_FREEBSD) 319include "compat/freebsd/files.freebsd" 320file arch/i386/i386/freebsd_machdep.c compat_freebsd 321 322# a.out binary compatibility (COMPAT_AOUT) 323include "compat/aout/files.aout" 324 325# Win32 binary compatibility (COMPAT_PECOFF) 326include "compat/pecoff/files.pecoff" 327 328# OSS audio driver compatibility 329include "compat/ossaudio/files.ossaudio" 330 331# network devices MII bus 332include "dev/mii/files.mii" 333 334# 335# CARDBUS 336# 337include "dev/cardbus/files.cardbus" 338file arch/i386/i386/rbus_machdep.c cardbus 339 340# XXXX pcic here because it needs to be late. The catch: pcic needs 341# to be late, so devices which attach to it are attached late. But it 342# needs to be before its isa and pci attachments. This answer is 343# non-optimal, but I don't have a better answer right now. 344 345# PCIC pcmcia controller 346# XXX this needs to be done very late, so it's done here. This feels 347# like a kludge, but it might be for the best. 348 349defopt PCIC_ISA_ALLOC_IOBASE 350defopt PCIC_ISA_ALLOC_IOSIZE 351defopt PCIC_ISA_INTR_ALLOC_MASK 352 353device pcic: pcmciabus 354file dev/ic/i82365.c pcic 355 356# PCIC pcmcia controller on ISA bus. 357attach pcic at isa with pcic_isa 358file dev/isa/i82365_isa.c pcic_isa 359 360# PCIC pcmcia controller on PCI bus. 361attach pcic at pci with pcic_pci 362file dev/pci/i82365_pci.c pcic_pci 363 364# PCIC pcmcia controller on PnP board 365attach pcic at isapnp with pcic_isapnp 366file dev/isapnp/i82365_isapnp.c pcic_isapnp 367 368# Code common to ISA and ISAPnP attachments 369file dev/isa/i82365_isasubr.c pcic_isa | pcic_isapnp | pcic_pci 370 371# XXXX tcic here because it needs to be late. The catch: tcic needs 372# to be late, so devices which attach to it are attached late. But it 373# needs to be before its isa and pci attachments. This answer is 374# non-optimal, but I don't have a better answer right now. 375 376# TCIC pcmcia controller 377# XXX this needs to be done very late, so it's done here. This feels 378# like a kludge, but it might be for the best. 379 380defopt TCIC_ISA_ALLOC_IOBASE 381defopt TCIC_ISA_ALLOC_IOSIZE 382defopt TCIC_ISA_INTR_ALLOC_MASK 383 384device tcic: pcmciabus 385file dev/ic/tcic2.c tcic 386 387# TCIC pcmcia controller 388attach tcic at isa with tcic_isa 389file dev/isa/tcic2_isa.c tcic_isa 390 391# this wants to be probed as late as possible. 392# 393# Machine-independent PCMCIA drivers 394# 395include "dev/pcmcia/files.pcmcia" 396 397 398include "dev/usb/files.usb" 399 400include "dev/ieee1394/files.ieee1394" 401 402include "arch/i386/pnpbios/files.pnpbios" 403