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