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