# $NetBSD: files.x86,v 1.107.4.1 2020/07/15 17:25:08 martin Exp $
# options for MP configuration through the MP spec
defflag opt_mpbios.h MPBIOS MPDEBUG MPBIOS_SCANPCI
defparam opt_mpbios.h MPVERBOSE
# MTRR support
defflag MTRR
# Interrupt debug
defflag opt_intrdebug.h INTRDEBUG
# PCI fixup options
defflag opt_pcifixup.h PCI_ADDR_FIXUP PCI_BUS_FIXUP
PCI_INTR_FIXUP PCI_INTR_FIXUP_FORCE
# To be able to test for NetBSD/xen in shared files
defflag opt_xen.h DO_NOT_DEFINE
# Option to have a static kernel memory layout
defflag opt_kaslr.h NO_X86_ASLR
defflag SVS
define cpubus { [apid = -1] }
define cpufeaturebus {}
define ioapicbus { [apid = -1] }
# BIOS32 routines
define bios32
file arch/x86/x86/bios32.c bios32 needs-flag
#
# CPU features
#
device cpu: cpufeaturebus
attach cpu at cpubus
file arch/x86/x86/cpu.c cpu
file arch/x86/x86/cpu_rng.c cpu
device acpicpu: acpi
attach acpicpu at cpufeaturebus
file dev/acpi/acpi_cpu.c acpicpu
file dev/acpi/acpi_cpu_cstate.c acpicpu
file dev/acpi/acpi_cpu_pstate.c acpicpu
file dev/acpi/acpi_cpu_tstate.c acpicpu
file arch/x86/acpi/acpi_cpu_md.c acpicpu
device coretemp: sysmon_envsys
attach coretemp at cpufeaturebus
file arch/x86/x86/coretemp.c coretemp
device est
attach est at cpufeaturebus
file arch/x86/x86/est.c est
file arch/x86/x86/intel_busclock.c est
device odcm
attach odcm at cpufeaturebus
file arch/x86/x86/odcm.c odcm
device padlock: opencrypto
attach padlock at cpufeaturebus
file arch/x86/x86/via_padlock.c padlock
device powernow
attach powernow at cpufeaturebus
file arch/x86/x86/powernow.c powernow
device viac7temp: sysmon_envsys
attach viac7temp at cpufeaturebus
file arch/x86/x86/viac7temp.c viac7temp
device vmt: sysmon_power, sysmon_taskq
attach vmt at cpufeaturebus
file arch/x86/x86/vmt.c vmt
device hyperv
attach hyperv at cpufeaturebus
file arch/x86/x86/hyperv.c hyperv needs-flag
file arch/x86/x86/apic.c ioapic | lapic
file arch/x86/x86/bus_dma.c machdep
file arch/x86/x86/bus_space.c machdep
file arch/x86/x86/consinit.c machdep
file arch/x86/x86/core_machdep.c coredump
file arch/x86/x86/cpu_topology.c machdep
file arch/x86/x86/db_memrw.c ddb | kgdb
file arch/x86/x86/db_trace.c ddb
file arch/x86/x86/efi.c machdep
file arch/x86/x86/errata.c machdep
file arch/x86/x86/genfb_machdep.c machdep
file arch/x86/x86/identcpu.c machdep
file arch/x86/x86/identcpu_subr.c machdep
file arch/x86/x86/i8259.c machdep
file arch/x86/x86/intr.c machdep
file arch/x86/x86/kgdb_machdep.c kgdb
file arch/x86/x86/nmi.c machdep
file arch/x86/x86/idt.c machdep
file arch/x86/x86/ipi.c machdep
file arch/x86/x86/mtrr_i686.c mtrr
file arch/x86/x86/patch.c machdep
file arch/x86/x86/platform.c machdep
file arch/x86/x86/pmap.c machdep
file arch/x86/x86/x86_tlb.c machdep
file arch/x86/x86/procfs_machdep.c procfs
file arch/x86/x86/svs.c machdep & svs
file arch/x86/x86/sys_machdep.c machdep
file arch/x86/x86/syscall.c machdep
file arch/x86/x86/tsc.c machdep
file arch/x86/x86/vm_machdep.c machdep
file arch/x86/x86/x86_autoconf.c machdep
file arch/x86/x86/x86_userconf.c userconf
file arch/x86/x86/x86_machdep.c machdep
file uvm/pmap/pmap_pvt.c machdep
file arch/x86/x86/cpu_ucode.c cpu_ucode needs-flag
file arch/x86/x86/cpu_ucode_amd.c cpu_ucode needs-flag
file arch/x86/x86/cpu_ucode_intel.c cpu_ucode needs-flag
file arch/x86/x86/compat_60_cpu_ucode.c compat_60 & cpu_ucode
define lapic
file arch/x86/x86/lapic.c lapic needs-flag
device ioapic: lapic
attach ioapic at ioapicbus
file arch/x86/x86/ioapic.c ioapic needs-flag
# MP configuration using Intel SMP specification 1.4
file arch/x86/x86/mpbios.c mpbios
# MP configuration using either ACPI or Intel SMP specification 1.4
file arch/x86/x86/mp.c acpi | mpbios
# MP configuration using ACPI
file arch/x86/x86/mpacpi.c acpi
file arch/x86/acpi/acpi_pdc.c acpi
file arch/x86/acpi/acpi_wakeup.c acpi
file arch/x86/acpi/acpi_machdep.c acpi
file arch/x86/isa/isa_machdep.c
# PC clock
file arch/x86/isa/clock.c
file arch/x86/isa/rtc.c
# Stubs for x86 routines not included in the system
file arch/x86/x86/x86_stub.c
# IPMI device
file arch/x86/x86/x86_ipmi.c ipmi needs-flag
file arch/x86/x86/vga_post.c vga_post
file arch/x86/pci/pci_machdep.c pci
#file arch/x86/pci/pci_ranges.c pci
file arch/x86/pci/pci_intr_machdep.c pci
file arch/x86/pci/pci_msi_machdep.c pci & ! no_pci_msi_msix
file arch/x86/pci/msipic.c pci & ! no_pci_msi_msix
file arch/x86/pci/pciide_machdep.c pciide_common
file arch/x86/pci/pci_bus_fixup.c pci_bus_fixup
file arch/x86/pci/pci_addr_fixup.c pci_addr_fixup