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