xref: /netbsd-src/sys/arch/amd64/conf/files.amd64 (revision d41b2b9c593e5a1831f2664af6581432664cec89)
1*d41b2b9cSimil#	$NetBSD: files.amd64,v 1.124 2025/01/02 10:34:33 imil Exp $
281918bf8Sfvdl#
381918bf8Sfvdl# new style config file for amd64 architecture
481918bf8Sfvdl#
581918bf8Sfvdl
681918bf8Sfvdl# maxpartitions must be first item in files.${ARCH}.newconf
781918bf8Sfvdlmaxpartitions 16
881918bf8Sfvdl
981918bf8Sfvdlmaxusers 2 16 128
1081918bf8Sfvdl
1181918bf8Sfvdl# delay before cpu_reset() for reboot.
1281918bf8Sfvdldefparam		CPURESET_DELAY
1381918bf8Sfvdl
1481918bf8Sfvdl# The REAL{BASE,EXT}MEM options
1581918bf8Sfvdldefparam opt_realmem.h	REALBASEMEM REALEXTMEM
1681918bf8Sfvdl
17df634e50Sandvar# The PHYSMEM_MAX_{SIZE,ADDR} options
182b35d82fSjoergdefparam opt_physmem.h	PHYSMEM_MAX_ADDR PHYSMEM_MAX_SIZE
192b35d82fSjoerg
2006e46981Smrg# Enable GCC spectre V2 mitigation options
2106e46981Smrgdefflag opt_spectre.h	SPECTRE_V2_GCC_MITIGATION
2206e46981Smrg
239754ab85Smanu# Enable kernel self-relocation at bootstrap
249754ab85Smanudefflag opt_selfreloc.h SELFRELOC
259754ab85Smanu
2681918bf8Sfvdl#
2781918bf8Sfvdl# XXX these are just here at the moment so that we can share files
2881918bf8Sfvdl# with the i386 (they include the opt_*.h for these)
2981918bf8Sfvdl#
3081918bf8Sfvdl
3181918bf8Sfvdldefflag			USER_LDT
32b5233cbfSfvdldefflag eisa.h		EISA
3381918bf8Sfvdl
34557615f4Suebayasi# Start code
35557615f4Suebayasifile	arch/amd64/amd64/locore.S		machdep
36557615f4Suebayasifile	arch/amd64/amd64/vector.S		machdep
37557615f4Suebayasifile	arch/amd64/amd64/copy.S			machdep
38557615f4Suebayasifile	arch/amd64/amd64/spl.S			machdep
39557615f4Suebayasi
40368ba357Smaxvfile	arch/amd64/amd64/amd64_trap.S		machdep
41c24c993fSbouyerfile	arch/amd64/amd64/autoconf.c		machdep & !xenpv
4246d7be3cSuebayasifile	arch/amd64/amd64/busfunc.S		machdep
4375d2bd46Sjoergfile	arch/amd64/amd64/cpu_in_cksum.S		(inet | inet6) & cpu_in_cksum
4446d7be3cSuebayasifile	arch/amd64/amd64/cpufunc.S		machdep
4581918bf8Sfvdlfile	arch/amd64/amd64/db_disasm.c		ddb
4681918bf8Sfvdlfile	arch/amd64/amd64/db_interface.c		ddb
47a640264eSchristosfile	arch/amd64/amd64/db_machdep.c		ddb
480805a941Sadfile	arch/amd64/amd64/kobj_machdep.c		modular
49c43b3542Sfvdlfile	kern/subr_disk_mbr.c			disk
5046d7be3cSuebayasifile	arch/amd64/amd64/gdt.c			machdep
5146d7be3cSuebayasifile	arch/amd64/amd64/machdep.c		machdep
52e8221aeaSmaxvfile	arch/amd64/amd64/prekern.c		kaslr
534d9da7b2Schristosfile	arch/amd64/amd64/process_machdep.c	machdep
5446d7be3cSuebayasifile	arch/amd64/amd64/trap.c			machdep
5546d7be3cSuebayasifile	arch/x86/x86/fpu.c			machdep
56241cf91dSkamilfile	arch/x86/x86/dbregs.c			machdep
5722898a83Smgornyfile	arch/x86/x86/convert_xmm_s87.c		machdep
58c24c993fSbouyerfile	arch/x86/x86/spectre.c			machdep & !xenpv
5946d7be3cSuebayasifile	arch/amd64/amd64/lock_stubs.S		machdep
6046d7be3cSuebayasifile	dev/cons.c				machdep
6181918bf8Sfvdl
62c24c993fSbouyerfile	arch/amd64/amd64/mptramp.S        multiprocessor & !xenpv
6381918bf8Sfvdl
6481918bf8Sfvdl#
65c0135b01Salnsn# Stack-less Just-In-Time compiler
66c0135b01Salnsn#
67c0135b01Salnsn
68c0135b01Salnsninclude	"external/bsd/sljit/conf/files.sljit"
69c0135b01Salnsn
70c0135b01Salnsn#
7181918bf8Sfvdl# Machine-independent SCSI drivers
7281918bf8Sfvdl#
7381918bf8Sfvdl
7481918bf8Sfvdlinclude	"dev/scsipi/files.scsipi"
7581918bf8Sfvdl
7681918bf8Sfvdl#
7781918bf8Sfvdl# Machine-independent ATA drivers
7881918bf8Sfvdl#
7981918bf8Sfvdl
8081918bf8Sfvdlinclude	"dev/ata/files.ata"
8181918bf8Sfvdl
8281918bf8Sfvdl# Memory Disk for install floppy
8381918bf8Sfvdlfile	dev/md_root.c			memory_disk_hooks
8481918bf8Sfvdl
8581918bf8Sfvdl#
8681918bf8Sfvdl# Machine-independent I2O drivers
8781918bf8Sfvdl#
8881918bf8Sfvdl
8981918bf8Sfvdlinclude	"dev/i2o/files.i2o"
9081918bf8Sfvdl
9181918bf8Sfvdl#
9281918bf8Sfvdl# System bus types
9381918bf8Sfvdl#
9481918bf8Sfvdl
9581918bf8Sfvdl# XXX BIOS32 only if something that uses it is configured!
96c24c993fSbouyerdevice	mainbus: isabus, pcibus, bios32, acpibus, cpubus, ioapicbus,
97*d41b2b9cSimil	ipmibus, hypervisorbus, pvbus
9881918bf8Sfvdlattach	mainbus at root
99c24c993fSbouyerfile	arch/amd64/amd64/amd64_mainbus.c	mainbus & !xenpv
1003355a42fScherryfile	arch/x86/x86/mainbus.c			mainbus
10181918bf8Sfvdl
10281918bf8Sfvdl#
10381918bf8Sfvdl# PCI-only drivers
10481918bf8Sfvdl# XXX MUST BE INCLUDED BEFORE files.isa, as long as files.isa attaches
10581918bf8Sfvdl# XXX devices to 'pci'.
10681918bf8Sfvdl#
10781918bf8Sfvdl
10881918bf8Sfvdlinclude	"dev/pci/files.pci"
10981918bf8Sfvdldefparam			PCI_CONF_MODE
1108e5125c9Schristosinclude "dev/pci/files.agp"
11181918bf8Sfvdl
1123338a139Sxtraeme# x86 specific PCI hardware
1133338a139Sxtraemeinclude "arch/x86/pci/files.pci"
11481918bf8Sfvdl
11581918bf8Sfvdl#
11681918bf8Sfvdl# ISA or ISA+PCI drivers
11781918bf8Sfvdl#
11881918bf8Sfvdl
11981918bf8Sfvdlinclude	"dev/isa/files.isa"
12081918bf8Sfvdl
12181918bf8Sfvdl# attribute used to represent the "keyboard controller"
12281918bf8Sfvdl# XXX should be a real device
12381918bf8Sfvdldefine	pckbcport { [irq = -1], [port = -1] }
12481918bf8Sfvdl
125dff5222dSbjh21include	"dev/pckbport/files.pckbport"
12681918bf8Sfvdl
12781918bf8Sfvdldevice	sysbeep
12881918bf8Sfvdlattach	sysbeep at pcppi
12981918bf8Sfvdl
13081918bf8Sfvdl# Floppy disk controller
13181918bf8Sfvdldevice	fdc {drive = -1}: isadma
13281918bf8Sfvdlfile	dev/isa/fd.c				fdc needs-flag
13381918bf8Sfvdl
13481918bf8Sfvdlattach	fdc at isa with fdc_isa
13581918bf8Sfvdlfile	dev/isa/fdc_isa.c			fdc_isa
13681918bf8Sfvdl
13781918bf8Sfvdldevice	fd: disk
13881918bf8Sfvdlattach	fd at fdc
13981918bf8Sfvdl
14081918bf8Sfvdl#
14181918bf8Sfvdl# Compatibility modules
14281918bf8Sfvdl#
1433c4b22dcSchristos# Binary compatibility with previous NetBSD releases (COMPAT_XX)
14471e437efSchristosfile	arch/amd64/amd64/compat_13_machdep.c	compat_13
145647dbd6fSchristosfile	arch/amd64/amd64/compat_16_machdep.c	compat_16
14681918bf8Sfvdl
14781918bf8Sfvdl# NetBSD/i386 32-bit binary compatibility (COMPAT_NETBSD32)
14881918bf8Sfvdlinclude "compat/netbsd32/files.netbsd32"
14981918bf8Sfvdlfile	arch/amd64/amd64/netbsd32_machdep.c	compat_netbsd32
150d91f98a8Spgoyettefile	arch/amd64/amd64/netbsd32_machdep_13.c	compat_netbsd32 & compat_13
151d91f98a8Spgoyettefile	arch/amd64/amd64/netbsd32_machdep_16.c	compat_netbsd32 & compat_16
15288a4abdbSdrochnerfile	arch/amd64/amd64/netbsd32_sigcode.S	compat_netbsd32 & compat_16
15381918bf8Sfvdlfile	arch/amd64/amd64/netbsd32_syscall.c	compat_netbsd32
15481918bf8Sfvdl
1557d913666Sfvdl# Linux compatibility (COMPAT_LINUX)
1567d913666Sfvdlinclude "compat/linux/files.linux"
1577d913666Sfvdlinclude "compat/linux/arch/amd64/files.linux_amd64"
1587d913666Sfvdlfile	arch/amd64/amd64/linux_sigcode.S		compat_linux
1597d913666Sfvdlfile	arch/amd64/amd64/linux_syscall.c		compat_linux
160631e44f4Sfvdlfile	arch/x86/x86/linux_trap.c			compat_linux
1617d913666Sfvdl
162ee0c5b44Smanu# Linux 32 bit compatibility (COMPAT_LINUX32)
163ee0c5b44Smanuinclude "compat/linux32/files.linux32"
164ee0c5b44Smanuinclude "compat/linux32/arch/amd64/files.linux32_amd64"
165ee0c5b44Smanufile	arch/amd64/amd64/linux32_sigcode.S		compat_linux32
166ee0c5b44Smanufile	arch/amd64/amd64/linux32_syscall.c		compat_linux32
167ee0c5b44Smanu
16881918bf8Sfvdl# OSS audio driver compatibility
16981918bf8Sfvdlinclude	"compat/ossaudio/files.ossaudio"
17081918bf8Sfvdl
17146eed28bSrjs#
17246eed28bSrjs# CARDBUS
17346eed28bSrjs#
17446eed28bSrjsinclude	"dev/cardbus/files.cardbus"
17546eed28bSrjsfile	arch/amd64/amd64/rbus_machdep.c	cardbus
17646eed28bSrjs
17746eed28bSrjs# this wants to be probed as late as possible.
17846eed28bSrjs#
17946eed28bSrjs# Machine-independent PCMCIA drivers
18046eed28bSrjs#
18146eed28bSrjsinclude	"dev/pcmcia/files.pcmcia"
18246eed28bSrjs
18381918bf8Sfvdlinclude	"dev/usb/files.usb"
18481918bf8Sfvdl
185af7c4775Splunkyinclude "dev/bluetooth/files.bluetooth"
186af7c4775Splunky
187e0297d1eSnonakainclude "dev/sdmmc/files.sdmmc"
188e0297d1eSnonaka
18981918bf8Sfvdlinclude "dev/ieee1394/files.ieee1394"
19086c579f9Schristosinclude "dev/apm/files.apm"
19159f5ef76Sfvdlinclude "dev/acpi/files.acpi"
192c24c993fSbouyerfile	arch/amd64/acpi/acpi_wakeup_low.S	acpi & !xenpv
19359f5ef76Sfvdl
19450517e57Snonaka# Microsoft Hyper-V
19550517e57Snonakainclude "dev/hyperv/files.hyperv"
19650517e57Snonaka
19750517e57Snonakaattach	vmbus at acpinodebus with vmbus_acpi
19850517e57Snonakafile	dev/acpi/vmbus_acpi.c			vmbus_acpi
19950517e57Snonaka
2004637e22eSthorpej# VMEbus support
2014637e22eSthorpejinclude "dev/vme/files.vme"
2024637e22eSthorpej
203*d41b2b9cSimil# PVbus support
204*d41b2b9cSimilinclude "arch/x86/pv/files.pv"
205*d41b2b9cSimil
20681918bf8Sfvdlinclude	"arch/amd64/conf/majors.amd64"
207