# $NetBSD: files.i386,v 1.408 2024/02/23 22:10:39 andvar Exp $ # # new style config file for i386 architecture # # maxpartitions must be first item in files.${ARCH}.newconf maxpartitions 8 maxusers 2 16 128 defparam opt_kernbase.h KERNBASE # delay before cpu_reset() for reboot. defparam CPURESET_DELAY # Obsolete Xbox support obsolete defflag XBOX # User-settable LDT (used by WINE) defflag USER_LDT # X server support in console drivers defflag opt_xserver.h XSERVER XSERVER_DDB # The REAL{BASE,EXT}MEM options defparam opt_realmem.h REALBASEMEM REALEXTMEM # The PHYSMEM_MAX_{SIZE,ADDR} options defparam opt_physmem.h PHYSMEM_MAX_ADDR PHYSMEM_MAX_SIZE # PCI BIOS options defflag opt_pcibios.h PCIBIOS PCIBIOSVERBOSE PCIBIOS_INTR_GUESS PCIINTR_DEBUG defparam opt_pcibios.h PCIBIOS_IRQS_HINT # splraise()/spllower() debug defflag opt_spldebug.h SPLDEBUG # Enable GCC spectre V2 mitigation options defflag opt_spectre.h SPECTRE_V2_GCC_MITIGATION # Beep on halt defflag opt_beep.h BEEP_ONHALT defparam opt_beep.h BEEP_ONHALT_COUNT=3 defparam opt_beep.h BEEP_ONHALT_PITCH=1500 defparam opt_beep.h BEEP_ONHALT_PERIOD=250 # Multiboot support defflag opt_multiboot.h MULTIBOOT obsolete defparam MULTIBOOT_SYMTAB_SPACE file arch/i386/i386/multiboot.c multiboot file arch/x86/x86/multiboot2.c multiboot file arch/i386/i386/autoconf.c !xenpv file arch/i386/i386/aout_machdep.c exec_aout file arch/i386/i386/busfunc.S file arch/i386/i386/cpufunc.S file arch/i386/i386/cpu_in_cksum.S (inet | inet6) & cpu_in_cksum file arch/i386/i386/db_disasm.c ddb file arch/i386/i386/db_interface.c ddb file arch/i386/i386/db_machdep.c ddb file arch/i386/i386/dumpsys.c file kern/subr_disk_mbr.c disk file kern/subr_spldebug.c spldebug file arch/i386/i386/gdt.c file arch/i386/i386/i386func.S !xenpv file arch/i386/i386/kobj_machdep.c modular file arch/i386/i386/machdep.c file arch/i386/i386/longrun.c file arch/i386/i386/mtrr_k6.c mtrr file arch/i386/i386/process_machdep.c file arch/x86/x86/convert_xmm_s87.c file arch/i386/i386/trap.c file dev/cons.c file arch/x86/x86/fpu.c file arch/x86/x86/dbregs.c file arch/x86/x86/spectre.c file arch/i386/i386/mptramp.S multiprocessor & ! xenpv file crypto/des/arch/i386/des_enc.S des file crypto/des/arch/i386/des_cbc.S des file crypto/blowfish/arch/i386/bf_enc.S blowfish file crypto/blowfish/arch/i386/bf_cbc.S blowfish & !i386_cpu # # Stack-less Just-In-Time compiler # include "external/bsd/sljit/conf/files.sljit" # # Machine-independent SCSI drivers # include "dev/scsipi/files.scsipi" # # Machine-independent ATA drivers # include "dev/ata/files.ata" # Memory Disk for install floppy file dev/md_root.c memory_disk_hooks & md # # Machine-independent I2O drivers # include "dev/i2o/files.i2o" # attribute used to bring in BIOS trampoline code for real-mode probing # of certain devices/BIOS features define bioscall file arch/i386/i386/bioscall.S bioscall needs-flag # i386 specific mainbus attributes define apmbus {} define pnpbiosbus {} # # System bus types # # XXX BIOS32 only if something that uses it is configured! device mainbus: isabus, eisabus, mcabus, pcibus, bios32, acpibus, cpubus, ioapicbus, apmbus, pnpbiosbus, ipmibus, bioscall, hypervisorbus attach mainbus at root file arch/i386/i386/i386_mainbus.c mainbus & !xenpv file arch/x86/x86/mainbus.c mainbus # # PCI-only drivers # XXX MUST BE INCLUDED BEFORE files.isa, as long as files.isa attaches # XXX devices to 'pci'. # include "dev/pci/files.pci" include "dev/pci/files.agp" file arch/i386/pci/pcibios.c pcibios file arch/i386/pci/pci_intr_fixup.c pcibios & pci_intr_fixup file arch/i386/pci/piix.c pcibios & pci_intr_fixup file arch/i386/pci/opti82c558.c pcibios & pci_intr_fixup file arch/i386/pci/opti82c700.c pcibios & pci_intr_fixup file arch/i386/pci/sis85c503.c pcibios & pci_intr_fixup file arch/i386/pci/via82c586.c pcibios & pci_intr_fixup file arch/i386/pci/via8231.c pcibios & pci_intr_fixup file arch/i386/pci/amd756.c pcibios & pci_intr_fixup file arch/i386/pci/ali1543.c pcibios & pci_intr_fixup defparam PCI_CONF_MODE file arch/i386/pci/pcic_pci_machdep.c pcic_pci # x86 specific PCI hardware include "arch/x86/pci/files.pci" # AMD Elan SC520 System Controller (PCI-Host bridge) define elanparbus { } define elanpexbus { } device elansc: sysmon_wdog, gpiobus, elanparbus, elanpexbus, pcibus attach elansc at pcibus file arch/i386/pci/elan520.c elansc device elanpar attach elanpar at elanparbus device elanpex attach elanpex at elanpexbus # AMD Geode CS5535 Companion IDE controller device gcscide: ata, ata_dma, ata_udma, pciide_common, wdc_common attach gcscide at pci file arch/i386/pci/gcscide.c gcscide # AMD Geode CS5536 Companion EHCI device gcscehci: usbus attach gcscehci at pci file arch/i386/pci/gcscehci.c gcscehci # AMD Geode SC1100 GCB area device geodegcb {} attach geodegcb at pci file arch/i386/pci/geode.c geodegcb # AMD Geode SC1100 Watchdog Timer device geodewdog: sysmon_wdog, geodegcb attach geodewdog at geodegcb file arch/i386/pci/geodewdg.c geodewdog # AMD Geode SC1100 high resolution counter device geodecntr: geodegcb attach geodecntr at geodegcb file arch/i386/pci/geodecntr.c geodecntr # PCI-EISA bridges device pceb: eisabus, isabus attach pceb at pci file arch/i386/pci/pceb.c pceb # PCI-ISA bridges device gscpcib: isabus, gpiobus attach gscpcib at pci file arch/i386/pci/gscpcib.c gscpcib # AMD Geode CS5535/CS5536 PCI-ISA bridge device gcscpcib: isabus, sysmon_wdog, gpiobus attach gcscpcib at pci with gcscpcib_pci file arch/i386/pci/gcscpcib_pci.c gcscpcib_pci file dev/ic/gcscpcib.c gcscpcib device piixpcib: isabus, bioscall attach piixpcib at pci file arch/i386/pci/piixpcib.c piixpcib device viapcib: isabus, i2cbus attach viapcib at pci file arch/i386/pci/viapcib.c viapcib # PCI-MCA bridges device pcmb: mcabus attach pcmb at pci file arch/i386/pci/pcmb.c pcmb device p64h2apic attach p64h2apic at pci file arch/i386/pci/p64h2apic.c p64h2apic # # ISA and mixed ISA+EISA or ISA+PCI drivers # include "dev/isa/files.isa" # Protech PS3100 cash drawer device ptcd: gpiobus attach ptcd at isa file dev/isa/ptcd.c ptcd # PC Mice: Logitech-style and Microsoft-style device lms: wsmousedev attach lms at isa file arch/i386/isa/lms.c lms device mms: wsmousedev attach mms at isa file arch/i386/isa/mms.c mms include "dev/pckbport/files.pckbport" device sysbeep attach sysbeep at pcppi # Floppy disk controller device fdc {drive = -1}: isadma file dev/isa/fd.c fdc needs-flag attach fdc at isa with fdc_isa file dev/isa/fdc_isa.c fdc_isa device fd: disk attach fd at fdc # Adaptec AHA-284x VL SCSI controllers # device declaration in sys/conf/files attach ahc at isa with ahc_isa: ahc_aic77xx, smc93cx6 file arch/i386/isa/ahc_isa.c ahc_isa # # EISA-only drivers # include "dev/eisa/files.eisa" file arch/i386/eisa/eisa_machdep.c eisa # # MCA-only drivers # device mca {[slot = -1]} : bioscall include "dev/mca/files.mca" file arch/i386/mca/mca_machdep.c mca # ISA Plug 'n Play devices file arch/i386/isa/isapnp_machdep.c isapnp # # VME support # include "dev/vme/files.vme" # # GPIB support # include "dev/gpib/files.gpib" # # CMOS RAM # defpseudo cmos file arch/i386/isa/cmos.c cmos needs-flag # # Other mainbus-attached devices # include "dev/apm/files.apm" # # Compatibility modules # # Binary compatibility with previous NetBSD releases (COMPAT_XX) file arch/i386/i386/compat_13_machdep.c compat_13 file arch/i386/i386/compat_16_machdep.c compat_16 # Linux binary compatibility (COMPAT_LINUX) include "compat/linux/files.linux" include "compat/linux/arch/i386/files.linux_i386" file arch/i386/i386/linux_sigcode.S compat_linux file arch/i386/i386/linux_syscall.c compat_linux file arch/x86/x86/linux_trap.c compat_linux # FreeBSD binary compatibility (COMPAT_FREEBSD) include "compat/freebsd/files.freebsd" # OSS audio driver compatibility include "compat/ossaudio/files.ossaudio" # # CARDBUS # include "dev/cardbus/files.cardbus" file arch/i386/i386/rbus_machdep.c cardbus # XXXX pcic here because it needs to be late. The catch: pcic needs # to be late, so devices which attach to it are attached late. But it # needs to be before its isa and pci attachments. This answer is # non-optimal, but I don't have a better answer right now. # PCIC pcmcia controller # XXX this needs to be done very late, so it's done here. This feels # like a kludge, but it might be for the best. defparam PCIC_ISA_ALLOC_IOBASE defparam PCIC_ISA_ALLOC_IOSIZE defparam PCIC_ISA_INTR_ALLOC_MASK device pcic: pcmciabus file dev/ic/i82365.c pcic # PCIC pcmcia controller on ISA bus. attach pcic at isa with pcic_isa file dev/isa/i82365_isa.c pcic_isa # PCIC pcmcia controller on PCI bus. attach pcic at pci with pcic_pci file dev/pci/i82365_pci.c pcic_pci # PCIC pcmcia controller on PnP board attach pcic at isapnp with pcic_isapnp file dev/isapnp/i82365_isapnp.c pcic_isapnp # Code common to ISA and ISAPnP attachments file dev/isa/i82365_isasubr.c pcic_isa | pcic_isapnp | pcic_pci # XXXX tcic here because it needs to be late. The catch: tcic needs # to be late, so devices which attach to it are attached late. But it # needs to be before its isa and pci attachments. This answer is # non-optimal, but I don't have a better answer right now. # TCIC pcmcia controller # XXX this needs to be done very late, so it's done here. This feels # like a kludge, but it might be for the best. defparam TCIC_ISA_ALLOC_IOBASE defparam TCIC_ISA_ALLOC_IOSIZE defparam TCIC_ISA_INTR_ALLOC_MASK device tcic: pcmciabus file dev/ic/tcic2.c tcic # TCIC pcmcia controller attach tcic at isa with tcic_isa file dev/isa/tcic2_isa.c tcic_isa # this wants to be probed as late as possible. # # Machine-independent PCMCIA drivers # include "dev/pcmcia/files.pcmcia" include "dev/usb/files.usb" include "dev/bluetooth/files.bluetooth" include "dev/sdmmc/files.sdmmc" include "dev/ieee1394/files.ieee1394" include "arch/i386/pnpbios/files.pnpbios" include "dev/acpi/files.acpi" file arch/i386/acpi/acpi_wakeup_low.S acpi & !xenpv # Microsoft Hyper-V include "dev/hyperv/files.hyperv" attach vmbus at acpinodebus with vmbus_acpi file dev/acpi/vmbus_acpi.c vmbus_acpi # Obsolete vesabios/vesafb flags obsolete defflag opt_vesabios.h VESABIOSVERBOSE obsolete defparam opt_vesafb.h VESAFB_WIDTH VESAFB_HEIGHT VESAFB_DEPTH obsolete defflag opt_vesafb.h VESAFB_PM # AMD Geode LX Security Block device glxsb: opencrypto attach glxsb at pci file arch/i386/pci/glxsb.c glxsb include "arch/i386/conf/majors.i386"