1# $NetBSD: files.amd64,v 1.123 2024/02/23 22:10:39 andvar Exp $ 2# 3# new style config file for amd64 architecture 4# 5 6# maxpartitions must be first item in files.${ARCH}.newconf 7maxpartitions 16 8 9maxusers 2 16 128 10 11# delay before cpu_reset() for reboot. 12defparam CPURESET_DELAY 13 14# The REAL{BASE,EXT}MEM options 15defparam opt_realmem.h REALBASEMEM REALEXTMEM 16 17# The PHYSMEM_MAX_{SIZE,ADDR} options 18defparam opt_physmem.h PHYSMEM_MAX_ADDR PHYSMEM_MAX_SIZE 19 20# Enable GCC spectre V2 mitigation options 21defflag opt_spectre.h SPECTRE_V2_GCC_MITIGATION 22 23# Enable kernel self-relocation at bootstrap 24defflag opt_selfreloc.h SELFRELOC 25 26# 27# XXX these are just here at the moment so that we can share files 28# with the i386 (they include the opt_*.h for these) 29# 30 31defflag USER_LDT 32defflag eisa.h EISA 33 34# Start code 35file arch/amd64/amd64/locore.S machdep 36file arch/amd64/amd64/vector.S machdep 37file arch/amd64/amd64/copy.S machdep 38file arch/amd64/amd64/spl.S machdep 39 40file arch/amd64/amd64/amd64_trap.S machdep 41file arch/amd64/amd64/autoconf.c machdep & !xenpv 42file arch/amd64/amd64/busfunc.S machdep 43file arch/amd64/amd64/cpu_in_cksum.S (inet | inet6) & cpu_in_cksum 44file arch/amd64/amd64/cpufunc.S machdep 45file arch/amd64/amd64/db_disasm.c ddb 46file arch/amd64/amd64/db_interface.c ddb 47file arch/amd64/amd64/db_machdep.c ddb 48file arch/amd64/amd64/kobj_machdep.c modular 49file kern/subr_disk_mbr.c disk 50file arch/amd64/amd64/gdt.c machdep 51file arch/amd64/amd64/machdep.c machdep 52file arch/amd64/amd64/prekern.c kaslr 53file arch/amd64/amd64/process_machdep.c machdep 54file arch/amd64/amd64/trap.c machdep 55file arch/x86/x86/fpu.c machdep 56file arch/x86/x86/dbregs.c machdep 57file arch/x86/x86/convert_xmm_s87.c machdep 58file arch/x86/x86/spectre.c machdep & !xenpv 59file arch/amd64/amd64/lock_stubs.S machdep 60file dev/cons.c machdep 61 62file arch/amd64/amd64/mptramp.S multiprocessor & !xenpv 63 64# 65# Stack-less Just-In-Time compiler 66# 67 68include "external/bsd/sljit/conf/files.sljit" 69 70# 71# Machine-independent SCSI drivers 72# 73 74include "dev/scsipi/files.scsipi" 75 76# 77# Machine-independent ATA drivers 78# 79 80include "dev/ata/files.ata" 81 82# Memory Disk for install floppy 83file dev/md_root.c memory_disk_hooks 84 85# 86# Machine-independent I2O drivers 87# 88 89include "dev/i2o/files.i2o" 90 91# 92# System bus types 93# 94 95# XXX BIOS32 only if something that uses it is configured! 96device mainbus: isabus, pcibus, bios32, acpibus, cpubus, ioapicbus, 97 ipmibus, hypervisorbus 98attach mainbus at root 99file arch/amd64/amd64/amd64_mainbus.c mainbus & !xenpv 100file arch/x86/x86/mainbus.c mainbus 101 102# 103# PCI-only drivers 104# XXX MUST BE INCLUDED BEFORE files.isa, as long as files.isa attaches 105# XXX devices to 'pci'. 106# 107 108include "dev/pci/files.pci" 109defparam PCI_CONF_MODE 110include "dev/pci/files.agp" 111 112# x86 specific PCI hardware 113include "arch/x86/pci/files.pci" 114 115# 116# ISA or ISA+PCI drivers 117# 118 119include "dev/isa/files.isa" 120 121# attribute used to represent the "keyboard controller" 122# XXX should be a real device 123define pckbcport { [irq = -1], [port = -1] } 124 125include "dev/pckbport/files.pckbport" 126 127device sysbeep 128attach sysbeep at pcppi 129 130# Floppy disk controller 131device fdc {drive = -1}: isadma 132file dev/isa/fd.c fdc needs-flag 133 134attach fdc at isa with fdc_isa 135file dev/isa/fdc_isa.c fdc_isa 136 137device fd: disk 138attach fd at fdc 139 140# 141# Compatibility modules 142# 143# Binary compatibility with previous NetBSD releases (COMPAT_XX) 144file arch/amd64/amd64/compat_13_machdep.c compat_13 145file arch/amd64/amd64/compat_16_machdep.c compat_16 146 147# NetBSD/i386 32-bit binary compatibility (COMPAT_NETBSD32) 148include "compat/netbsd32/files.netbsd32" 149file arch/amd64/amd64/netbsd32_machdep.c compat_netbsd32 150file arch/amd64/amd64/netbsd32_machdep_13.c compat_netbsd32 & compat_13 151file arch/amd64/amd64/netbsd32_machdep_16.c compat_netbsd32 & compat_16 152file arch/amd64/amd64/netbsd32_sigcode.S compat_netbsd32 & compat_16 153file arch/amd64/amd64/netbsd32_syscall.c compat_netbsd32 154 155# Linux compatibility (COMPAT_LINUX) 156include "compat/linux/files.linux" 157include "compat/linux/arch/amd64/files.linux_amd64" 158file arch/amd64/amd64/linux_sigcode.S compat_linux 159file arch/amd64/amd64/linux_syscall.c compat_linux 160file arch/x86/x86/linux_trap.c compat_linux 161 162# Linux 32 bit compatibility (COMPAT_LINUX32) 163include "compat/linux32/files.linux32" 164include "compat/linux32/arch/amd64/files.linux32_amd64" 165file arch/amd64/amd64/linux32_sigcode.S compat_linux32 166file arch/amd64/amd64/linux32_syscall.c compat_linux32 167 168# OSS audio driver compatibility 169include "compat/ossaudio/files.ossaudio" 170 171# 172# CARDBUS 173# 174include "dev/cardbus/files.cardbus" 175file arch/amd64/amd64/rbus_machdep.c cardbus 176 177# this wants to be probed as late as possible. 178# 179# Machine-independent PCMCIA drivers 180# 181include "dev/pcmcia/files.pcmcia" 182 183include "dev/usb/files.usb" 184 185include "dev/bluetooth/files.bluetooth" 186 187include "dev/sdmmc/files.sdmmc" 188 189include "dev/ieee1394/files.ieee1394" 190include "dev/apm/files.apm" 191include "dev/acpi/files.acpi" 192file arch/amd64/acpi/acpi_wakeup_low.S acpi & !xenpv 193 194# Microsoft Hyper-V 195include "dev/hyperv/files.hyperv" 196 197attach vmbus at acpinodebus with vmbus_acpi 198file dev/acpi/vmbus_acpi.c vmbus_acpi 199 200# VMEbus support 201include "dev/vme/files.vme" 202 203include "arch/amd64/conf/majors.amd64" 204