summaryrefslogtreecommitdiff
path: root/sys/arch/amd64/conf/files.amd64
blob: c4f4123e59606cf94c848c6ee114b808cbb03c21 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
#	$NetBSD: files.amd64,v 1.121 2023/05/05 00:34:41 manu Exp $
#
# new style config file for amd64 architecture
#

# maxpartitions must be first item in files.${ARCH}.newconf
maxpartitions 16

maxusers 2 16 128

# delay before cpu_reset() for reboot.
defparam		CPURESET_DELAY

# The REAL{BASE,EXT}MEM options
defparam opt_realmem.h	REALBASEMEM REALEXTMEM

# The PHYSMEM_MAX_{SIZE,ADDR} optionms
defparam opt_physmem.h	PHYSMEM_MAX_ADDR PHYSMEM_MAX_SIZE

# Enable GCC spectre V2 mitigation options
defflag opt_spectre.h	SPECTRE_V2_GCC_MITIGATION

# Enable kernel self-relocation at bootstrap
defflag opt_selfreloc.h SELFRELOC

#
# XXX these are just here at the moment so that we can share files
# with the i386 (they include the opt_*.h for these)
#

defflag			USER_LDT
defflag eisa.h		EISA

# Start code
file	arch/amd64/amd64/locore.S		machdep
file	arch/amd64/amd64/vector.S		machdep
file	arch/amd64/amd64/copy.S			machdep
file	arch/amd64/amd64/spl.S			machdep

file	arch/amd64/amd64/amd64_trap.S		machdep
file	arch/amd64/amd64/autoconf.c		machdep & !xenpv
file	arch/amd64/amd64/busfunc.S		machdep
file	arch/amd64/amd64/cpu_in_cksum.S		(inet | inet6) & cpu_in_cksum
file	arch/amd64/amd64/cpufunc.S		machdep
file	arch/amd64/amd64/db_disasm.c		ddb
file	arch/amd64/amd64/db_interface.c		ddb
file	arch/amd64/amd64/db_machdep.c		ddb
file	arch/amd64/amd64/kobj_machdep.c		modular
file	kern/subr_disk_mbr.c			disk
file	arch/amd64/amd64/gdt.c			machdep
file	arch/amd64/amd64/machdep.c		machdep
file	arch/amd64/amd64/prekern.c		kaslr
file	arch/amd64/amd64/process_machdep.c	machdep
file	arch/amd64/amd64/trap.c			machdep
file	arch/x86/x86/fpu.c			machdep
file	arch/x86/x86/dbregs.c			machdep
file	arch/x86/x86/convert_xmm_s87.c		machdep
file	arch/x86/x86/spectre.c			machdep & !xenpv
file	arch/amd64/amd64/lock_stubs.S		machdep
file	dev/cons.c				machdep

file	arch/amd64/amd64/mptramp.S        multiprocessor & !xenpv

#
# Stack-less Just-In-Time compiler
#

include	"external/bsd/sljit/conf/files.sljit"

#
# Machine-independent SCSI drivers
#

include	"dev/scsipi/files.scsipi"

#
# Machine-independent ATA drivers
#

include	"dev/ata/files.ata"

# Memory Disk for install floppy
file	dev/md_root.c			memory_disk_hooks

#
# Machine-independent I2O drivers
#

include	"dev/i2o/files.i2o"

#
# System bus types
#

# XXX BIOS32 only if something that uses it is configured!
device	mainbus: isabus, pcibus, bios32, acpibus, cpubus, ioapicbus,
	ipmibus, hypervisorbus
attach	mainbus at root
file	arch/amd64/amd64/amd64_mainbus.c	mainbus & !xenpv
file	arch/x86/x86/mainbus.c			mainbus

#
# PCI-only drivers
# XXX MUST BE INCLUDED BEFORE files.isa, as long as files.isa attaches
# XXX devices to 'pci'.
#

include	"dev/pci/files.pci"
defparam			PCI_CONF_MODE
include "dev/pci/files.agp"

# x86 specific PCI hardware
include "arch/x86/pci/files.pci"

#
# ISA or ISA+PCI drivers
#

include	"dev/isa/files.isa"

# attribute used to represent the "keyboard controller"
# XXX should be a real device
define	pckbcport { [irq = -1], [port = -1] }

include	"dev/pckbport/files.pckbport"

device	sysbeep
attach	sysbeep at pcppi

# Floppy disk controller
device	fdc {drive = -1}: isadma
file	dev/isa/fd.c				fdc needs-flag

attach	fdc at isa with fdc_isa
file	dev/isa/fdc_isa.c			fdc_isa

device	fd: disk
attach	fd at fdc

#
# Compatibility modules
#
# Binary compatibility with previous NetBSD releases (COMPAT_XX)
file	arch/amd64/amd64/compat_13_machdep.c	compat_13
file	arch/amd64/amd64/compat_16_machdep.c	compat_16

# NetBSD/i386 32-bit binary compatibility (COMPAT_NETBSD32)
include "compat/netbsd32/files.netbsd32"
file	arch/amd64/amd64/netbsd32_machdep.c	compat_netbsd32
file	arch/amd64/amd64/netbsd32_machdep_13.c	compat_netbsd32 & compat_13
file	arch/amd64/amd64/netbsd32_machdep_16.c	compat_netbsd32 & compat_16
file	arch/amd64/amd64/netbsd32_sigcode.S	compat_netbsd32 & compat_16
file	arch/amd64/amd64/netbsd32_syscall.c	compat_netbsd32

# Linux compatibility (COMPAT_LINUX)
include "compat/linux/files.linux"
include "compat/linux/arch/amd64/files.linux_amd64"
file	arch/amd64/amd64/linux_sigcode.S		compat_linux
file	arch/amd64/amd64/linux_syscall.c		compat_linux
file	arch/x86/x86/linux_trap.c			compat_linux

# Linux 32 bit compatibility (COMPAT_LINUX32)
include "compat/linux32/files.linux32"
include "compat/linux32/arch/amd64/files.linux32_amd64"
file	arch/amd64/amd64/linux32_sigcode.S		compat_linux32
file	arch/amd64/amd64/linux32_syscall.c		compat_linux32

# OSS audio driver compatibility
include	"compat/ossaudio/files.ossaudio"

#
# CARDBUS
#
include	"dev/cardbus/files.cardbus"
file	arch/amd64/amd64/rbus_machdep.c	cardbus

# this wants to be probed as late as possible.
#
# Machine-independent PCMCIA drivers
#
include	"dev/pcmcia/files.pcmcia"

include	"dev/usb/files.usb"

include "dev/bluetooth/files.bluetooth"

include "dev/sdmmc/files.sdmmc"

include "dev/ieee1394/files.ieee1394"
include "dev/apm/files.apm"
include "dev/acpi/files.acpi"
file	arch/amd64/acpi/acpi_wakeup_low.S	acpi & !xenpv

# Microsoft Hyper-V
include "dev/hyperv/files.hyperv"

attach	vmbus at acpinodebus with vmbus_acpi
file	dev/acpi/vmbus_acpi.c			vmbus_acpi

include	"arch/amd64/conf/majors.amd64"