1# $OpenBSD: files.i386,v 1.250 2023/07/08 08:01:10 tobhe Exp $ 2# 3# new style config file for i386 architecture 4# 5 6# maxpartitions must be first item in files.${ARCH} 7maxpartitions 16 8 9maxusers 2 16 100 10 11file arch/i386/i386/autoconf.c 12file arch/i386/i386/bus_space.c 13file arch/i386/i386/bus_dma.c 14file arch/i386/i386/conf.c 15file arch/i386/i386/db_disasm.c ddb 16file arch/i386/i386/db_interface.c ddb 17file arch/i386/i386/db_memrw.c ddb 18file arch/i386/i386/db_trace.c ddb 19file arch/i386/i386/disksubr.c disk 20file arch/i386/i386/est.c !small_kernel 21file arch/i386/i386/gdt.c 22file arch/i386/i386/in_cksum.s 23file arch/i386/i386/machdep.c 24file arch/i386/i386/hibernate_machdep.c hibernate 25file arch/i386/i386/via.c 26file arch/i386/i386/locore.s 27file arch/i386/i386/amd64errata.c !small_kernel 28file arch/i386/i386/longrun.c !small_kernel 29file arch/i386/i386/ucode.c !small_kernel 30file arch/i386/i386/mem.c 31file arch/i386/i386/i686_mem.c mtrr 32file arch/i386/i386/k6_mem.c mtrr 33file arch/i386/i386/mtrr.c mtrr 34file arch/i386/i386/p4tcc.c !small_kernel 35file arch/i386/i386/pmap.c 36file arch/i386/i386/pmapae.c 37file arch/i386/i386/powernow.c !small_kernel 38file arch/i386/i386/powernow-k7.c !small_kernel 39file arch/i386/i386/powernow-k8.c !small_kernel 40file arch/i386/i386/k1x-pstate.c !small_kernel 41file arch/i386/i386/process_machdep.c 42file arch/i386/i386/sys_machdep.c 43file arch/i386/i386/trap.c 44file arch/i386/i386/vm_machdep.c 45file arch/i386/i386/softintr.c 46file arch/i386/i386/dkcsum.c bios 47file dev/cninit.c 48file arch/i386/i386/mptramp.s multiprocessor 49file arch/i386/i386/mp_setperf.c multiprocessor 50file arch/i386/i386/ipifuncs.c multiprocessor 51file arch/i386/i386/db_mp.c multiprocessor & ddb 52file arch/i386/i386/wscons_machdep.c wsdisplay 53major {vnd = 14} 54 55include "dev/rasops/files.rasops" 56include "dev/wsfont/files.wsfont" 57 58# 59# Media Independent Interface (mii) 60# 61include "dev/mii/files.mii" 62 63# 64# Machine-independent SCSI drivers 65# 66 67include "scsi/files.scsi" 68major {sd = 4} 69major {st = 5} 70major {cd = 6} 71major {rd = 17} 72 73# 74# Machine-independent ATAPI drivers 75# 76 77include "dev/atapiscsi/files.atapiscsi" 78include "dev/ata/files.ata" 79 80# 81# System bus types 82# 83 84define mainbus {[apid = -1]} 85device mainbus: isabus, eisabus, pcibus, mainbus 86attach mainbus at root 87file arch/i386/i386/mainbus.c mainbus 88 89file arch/i386/i386/codepatch.c 90 91#device mca at root {...} 92 93# 94# Paravirtual device bus 95# 96include "dev/pv/files.pv" 97 98# 99# PCI-only drivers 100# XXX MUST BE INCLUDED BEFORE files.isa, as long as files.isa attaches 101# XXX devices to 'pci'. 102# 103 104include "dev/pci/files.pci" 105file arch/i386/pci/pci_machdep.c pci 106file arch/i386/pci/pciide_machdep.c pciide 107file arch/i386/pci/pcic_pci_machdep.c pcic_pci 108file arch/i386/pci/vga_post.c vga_pci & x86emu 109 110# PCI-Host bridge chipsets 111device pchb: pcibus, agpbus 112attach pchb at pci 113file arch/i386/pci/pchb.c pchb 114 115# AMAS AMD memory address switch 116device amas 117attach amas at pci 118file dev/pci/amas.c amas 119 120# AGP bridge support. most attach at pchb 121file arch/i386/pci/agp_machdep.c agp | inteldrm 122 123# Geode SC1100 124device geodesc 125attach geodesc at pci 126file arch/i386/pci/geodesc.c geodesc 127 128# AMD Geode LX series processor security block 129device glxsb 130attach glxsb at pci 131file arch/i386/pci/glxsb.c glxsb 132 133# National Semiconductor Geode SC1100 SMI/ACPI module 134device gscpm 135attach gscpm at pci 136file arch/i386/pci/gscpm.c gscpm 137 138# AMD Geode LX series MSR access 139device amdmsr 140attach amdmsr at mainbus 141file arch/i386/i386/amdmsr.c amdmsr needs-flag 142 143# PCI-ISA bridge chipsets 144device pcib: isabus 145attach pcib at pci 146file arch/i386/pci/pcib.c pcib | ichpcib | gscpcib | glxpcib | amdpcib | tcpcib 147 148# Intel ICHx/ICHx-M LPC bridges 149device ichpcib: isabus 150attach ichpcib at pci 151file arch/i386/pci/ichpcib.c ichpcib 152 153# National Semiconductor Geode SC1100 PCI-ISA bridge 154device gscpcib: isabus, gpiobus 155attach gscpcib at pci 156file arch/i386/pci/gscpcib.c gscpcib 157 158# AMD 8111 LPC bridge 159device amdpcib: isabus 160attach amdpcib at pci 161file dev/pci/amdpcib.c amdpcib 162 163# Intel Atom E600 LPC bridge 164device tcpcib: isabus 165attach tcpcib at pci 166file dev/pci/tcpcib.c tcpcib 167 168device hme: ether, ifnet, mii, ifmedia 169file dev/ic/hme.c hme 170attach hme at pci with hme_pci 171file dev/pci/if_hme_pci.c hme_pci 172 173# 174# ISA and mixed ISA+EISA or ISA+PCI or ISA+PCMCIA drivers 175# 176 177major {wd = 0} 178major {fd = 2} 179 180include "dev/isa/files.isa" 181file arch/i386/isa/isa_machdep.c isabus 182 183# PC clock 184file arch/i386/isa/clock.c isabus 185 186# Numeric Processing Extension; Math Co-processor 187device npx 188attach npx at isa 189file arch/i386/isa/npx.c npx needs-flag 190 191# attribute used to represent the "keyboard controller" 192# XXX should be a real device 193define pckbcport {[irq = -1], [port = -1]} 194 195# PC Mice; Logitech-style, Microsoft-style, and PS/2-style 196device lms: wsmousedev 197attach lms at isa 198file arch/i386/isa/lms.c lms needs-flag 199device mms: wsmousedev 200attach mms at isa 201file arch/i386/isa/mms.c mms needs-flag 202 203include "dev/wscons/files.wscons" 204include "dev/pckbc/files.pckbc" 205 206# Adaptec AHA-284x VL SCSI controllers 207# device declaration in sys/conf/files 208attach ahc at isa with ahc_isa 209file arch/i386/isa/ahc_isa.c ahc_isa 210 211# Soekris GPIO & LEDs driver 212device skgpio: gpiobus 213attach skgpio at isa 214file dev/isa/skgpio.c skgpio 215 216# Pentium performance counters 217pseudo-device pctr 218file arch/i386/i386/pctr.c pctr needs-flag 219 220pseudo-device nvram 221file arch/i386/i386/nvram.c nvram needs-flag 222 223# 224# EISA-only drivers 225# 226 227include "dev/eisa/files.eisa" 228file arch/i386/eisa/eisa_machdep.c eisa 229 230# 231# ISA PnP 232# 233 234include "dev/isa/files.isapnp" 235file arch/i386/isa/isapnp_machdep.c isapnp 236 237# Game adapter (joystick) 238device joy 239file arch/i386/isa/joy.c joy needs-flag 240attach joy at isa with joy_isa 241file arch/i386/isa/joy_isa.c joy_isa 242attach joy at isapnp with joy_isapnp 243file arch/i386/isa/joy_isapnp.c joy_isapnp 244 245# 246# Compatibility modules 247# 248 249device bios {} 250attach bios at mainbus 251file arch/i386/i386/bios.c bios needs-count 252 253device apm 254attach apm at bios 255file arch/i386/i386/apm.c apm needs-count 256file arch/i386/i386/apmcall.S apm 257 258file arch/i386/i386/acpiapm.c 259 260# Intel SMP specification 1.4 261define mpbios 262device mpbios 263attach mpbios at bios 264file arch/i386/i386/mpbios.c mpbios needs-flag 265file arch/i386/i386/mpbios_intr_fixup.c mpbios & pci 266 267# CPUS 268define cpu {[apid = -1]} 269device cpu 270attach cpu at mainbus 271file arch/i386/i386/cpu.c cpu 272 273# Common APIC support routines 274file arch/i386/i386/apic.c ioapic | lapic 275 276# Local APIC (required for multiprocessor) 277define lapic 278file arch/i386/i386/lapic.c lapic needs-flag 279 280# I/O APICs 281device ioapic: mpbios, lapic 282attach ioapic at mainbus 283file arch/i386/i386/ioapic.c ioapic needs-flag 284 285device pcibios 286attach pcibios at bios 287file arch/i386/pci/pcibios.c pcibios needs-count 288file arch/i386/pci/pci_intr_fixup.c pcibios 289file arch/i386/pci/pci_bus_fixup.c pcibios 290file arch/i386/pci/pci_addr_fixup.c pcibios 291file arch/i386/pci/opti82c558.c pcibios 292file arch/i386/pci/opti82c700.c pcibios 293file arch/i386/pci/piix.c pcibios 294file arch/i386/pci/rccosb4.c pcibios 295file arch/i386/pci/sis85c503.c pcibios 296file arch/i386/pci/via82c586.c pcibios 297file arch/i386/pci/via8231.c pcibios 298file arch/i386/pci/amd756.c pcibios 299file arch/i386/pci/ali1543.c pcibios 300 301# 302# CARDBUS 303# 304include "dev/cardbus/files.cardbus" 305file arch/i386/i386/rbus_machdep.c cardbus 306 307# XXXX pcic here because it needs to be late. The catch: pcic needs 308# to be late, so devices which attach to it are attached late. But it 309# needs to be before its isa and pci attachments. This answer is 310# non-optimal, but I don't have a better answer right now. 311 312# PCIC pcmcia controller 313# XXX this needs to be done very late, so it's done here. This feels 314# like a kludge, but it might be for the best. 315 316device pcic: pcmciabus 317file dev/ic/i82365.c pcic 318 319# PCIC pcmcia controller on ISA bus. 320attach pcic at isa with pcic_isa 321file dev/isa/i82365_isa.c pcic_isa 322 323# PCIC pcmcia controller on PCI bus. 324attach pcic at pci with pcic_pci 325file dev/pci/i82365_pci.c pcic_pci 326 327# PCIC pcmcia controller on PnP board 328attach pcic at isapnp with pcic_isapnp 329file dev/isa/i82365_isapnp.c pcic_isapnp 330 331# Code common to ISA and ISAPnP attachments 332file dev/isa/i82365_isasubr.c pcic_isa | pcic_isapnp | pcic_pci 333 334# Databook TCIC/2 pcmcia/isa bridge 335device tcic: pcmciabus 336file dev/ic/tcic2.c tcic 337attach tcic at isa with tcic_isa 338file dev/isa/tcic2_isa.c tcic_isa 339 340# 341# Machine-independent PCMCIA drivers 342# 343include "dev/pcmcia/files.pcmcia" 344 345# 346# Machine-independent HID support 347# 348include "dev/hid/files.hid" 349 350# 351# Machine-independent USB drivers 352# 353include "dev/usb/files.usb" 354 355# 356# Machine-independent I2C drivers 357# 358include "dev/i2c/files.i2c" 359 360# 361# Machine-independent GPIO drivers 362# 363include "dev/gpio/files.gpio" 364 365# 366# Machine-independent 1-Wire drivers 367# 368include "dev/onewire/files.onewire" 369 370# 371# Machine-independent SD/MMC drivers 372# 373include "dev/sdmmc/files.sdmmc" 374 375include "dev/acpi/files.acpi" 376attach acpi at bios 377file arch/i386/i386/acpi_machdep.c acpi 378file arch/i386/i386/acpi_wakecode.S acpi & !small_kernel 379file dev/acpi/acpi_x86.c acpi & suspend & !small_kernel 380file dev/acpi/acpi_apm.c acpi 381 382# 383# IPMI 384# 385attach ipmi at mainbus 386 387# Dell Embedded Systems Management 388device esm 389attach esm at mainbus 390file arch/i386/i386/esm.c esm needs-flag 391 392# quad support is necessary for 32 bit architectures 393file lib/libkern/adddi3.c 394file lib/libkern/anddi3.c 395file lib/libkern/ashldi3.c 396file lib/libkern/ashrdi3.c 397file lib/libkern/cmpdi2.c 398file lib/libkern/divdi3.c 399file lib/libkern/iordi3.c 400file lib/libkern/lshldi3.c 401file lib/libkern/lshrdi3.c 402file lib/libkern/moddi3.c 403file lib/libkern/muldi3.c 404file lib/libkern/negdi2.c 405file lib/libkern/notdi2.c 406file lib/libkern/qdivrem.c 407file lib/libkern/subdi3.c 408file lib/libkern/ucmpdi2.c 409file lib/libkern/udivdi3.c 410file lib/libkern/umoddi3.c 411file lib/libkern/xordi3.c 412