1#
2# NOTES -- Lines that can be cut/pasted into kernel and hints configs.
3#
4# This file contains machine dependent kernel configuration notes.  For
5# machine independent notes, look in /sys/conf/NOTES.  For notes shared
6# with i386, look in /sys/x86/conf/NOTES.
7#
8#
9
10# GCOV (code coverage) support
11
12options 	LINDEBUGFS
13options 	GCOV
14
15
16#####################################################################
17# SMP OPTIONS:
18
19# Optional:
20device		atpic			# Optional legacy pic support
21device		mptable			# Optional MPSPEC mptable support
22
23
24#####################################################################
25# CPU OPTIONS
26
27#
28# You must specify at least one CPU (the one you intend to run on);
29# deleting the specification for CPUs you don't need to use may make
30# parts of the system run faster.
31#
32cpu		HAMMER			# aka K8, aka Opteron & Athlon64
33
34#
35# Options for CPU features.
36#
37
38
39#####################################################################
40# HARDWARE DEVICE CONFIGURATION
41
42#
43# Optional devices:
44#
45
46# vt(4) drivers.
47device		vt_efifb	# EFI framebuffer
48
49# 3Dfx Voodoo Graphics, Voodoo II /dev/3dfx CDEV support.  This will create
50# the /dev/3dfx0 device to work with glide implementations.  This should get
51# linked to /dev/3dfx and /dev/voodoo.  Note that this is not the same as
52# the tdfx DRI module from XFree86 and is completely unrelated.
53#
54
55device		tdfx			# Enable 3Dfx Voodoo support
56
57#
58# RAID adapters
59#
60
61#XXX this stores pointers in a 32bit field that is defined by the hardware
62#device	pst
63
64#
65# Microsemi smartpqi controllers.
66# These controllers have a SCSI-like interface, and require the
67# CAM infrastructure.
68#
69device		smartpqi
70
71#
72# Network interfaces:
73#
74
75# axp: AMD EPYC integrated NIC
76#	Requires the miibus module
77# ice:	Intel 800 Series Physical Function
78#	Requires the ice_ddp module for full functionality
79# irdma: Intel 800 Series RDMA driver
80#        Requires the ice module
81# qlxgb: QLogic 3200 and 8200 series 10 Gigabit Ethernet & CNA Adapter
82# qlxgbe: QLogic 8300 series 10 Gigabit Ethernet & CNA Adapter
83# qlxge: QLogic 8100 series 10 Gigabit Ethernet & CNA Adapter
84# qlnxe: Cavium QLogic 41000/45000 series 10/25/40/100 Gigabit Ethernet & CNA Adapter
85# sfxge: Solarflare SFC9000 family 10Gb Ethernet adapters
86
87device		axp		# AMD EPYC integrated NIC
88device		ixl		# Intel 700 Series Physical Function
89device		iavf		# Intel Adaptive Virtual Function
90device		ice		# Intel 800 Series Physical Function
91device		ice_ddp		# Intel 800 Series DDP Package
92device		irdma		# Intel 800 Series RDMA driver
93device		qlxgb		# QLogic 3200/8200 Ethernet
94device		qlxgbe		# QLogic 8300 Ethernet
95device		qlxge		# QLogic 8100 Ethernet
96device		qlnxe		# QLogic 41000/45000 Ethernet
97device		sfxge		# Solarflare SFC9000 10Gb Ethernet
98
99#####################################################################
100
101#
102# Miscellaneous hardware:
103#
104
105device		ioat		# Intel I/OAT DMA engine
106
107# EFI Runtime Services support
108options 	EFIRT
109
110# EFI pseudo-device
111device		efidev
112
113# EFI RTC
114device		efirtc
115
116#
117# Intel QuickAssist driver with OpenCrypto support
118#
119# Only for legacy Atom C2XXX chipsets.
120device		qat_c2xxx
121
122# Xen HVM Guest Optimizations
123options 	XENHVM		# Xen HVM kernel infrastructure
124device		xenefi		# Xen EFI timer device
125device 		xenpci		# Xen HVM Hypervisor services driver
126device		xentimer	# Xen x86 PV timer device
127
128#####################################################################
129# ABI Emulation
130
131# Enable 32-bit runtime support for FreeBSD/i386 binaries.
132options 	COMPAT_FREEBSD32
133
134# Enable (32-bit) a.out binary support
135options 	COMPAT_AOUT
136
137#####################################################################
138# ZFS support
139
140# NB: This depends on crypto, cryptodev and ZSTDIO
141options 	ZFS
142
143#####################################################################
144# VM OPTIONS
145
146#
147# Number of initial kernel page table pages used for early bootstrap.
148# This number should include enough pages to map the kernel and any
149# modules or other data loaded with the kernel by the loader.  Each
150# page table page maps 2MB.
151#
152options 	NKPT=31
153
154# KSTACK_PAGES is the number of memory pages to assign to the kernel
155# stack of each thread.
156
157options 	KSTACK_PAGES=5
158
159# Enable detailed accounting by the PV entry allocator.
160
161options 	PV_STATS
162
163#####################################################################
164# Kernel sanitizers
165
166#options	COVERAGE		# Generic kernel coverage. Used by KCOV
167#options	KCOV			# Kernel Coverage Sanitizer
168# Warning: KUBSAN can result in a kernel too large for loader to load
169#options	KUBSAN			# Kernel Undefined Behavior Sanitizer
170#options	KCSAN			# Kernel Concurrency Sanitizer
171#options	KASAN			# Kernel Address Sanitizer
172#options	KCSAN			# Kernel Concurrency Sanitizer
173#options	KMSAN			# Kernel Memory Sanitizer
174