xref: /freebsd/sys/amd64/conf/NOTES (revision 4f8f9d708e6a4143f3b178bfab10d0a9b75ba2fe)
1b132d96eSPeter Wemm#
2b132d96eSPeter Wemm# NOTES -- Lines that can be cut/pasted into kernel and hints configs.
3b132d96eSPeter Wemm#
4b132d96eSPeter Wemm# This file contains machine dependent kernel configuration notes.  For
51f38677bSJohn Baldwin# machine independent notes, look in /sys/conf/NOTES.  For notes shared
61f38677bSJohn Baldwin# with i386, look in /sys/x86/conf/NOTES.
732a31d0dSDavid E. O'Brien#
8b132d96eSPeter Wemm#
9b132d96eSPeter Wemm
101f38677bSJohn Baldwin# GCOV (code coverage) support
119e3e64e7SKonstantin Belousov
121f38677bSJohn Baldwinoptions 	LINDEBUGFS
131f38677bSJohn Baldwinoptions 	GCOV
144f4d15f0SRuslan Bukin
1532a31d0dSDavid E. O'Brien
165b9bfb42SDavid E. O'Brien#####################################################################
175b9bfb42SDavid E. O'Brien# SMP OPTIONS:
185b9bfb42SDavid E. O'Brien
195b9bfb42SDavid E. O'Brien# Optional:
2042044ceeSDavid E. O'Briendevice		atpic			# Optional legacy pic support
2184883913SDavid E. O'Briendevice		mptable			# Optional MPSPEC mptable support
225b9bfb42SDavid E. O'Brien
235b9bfb42SDavid E. O'Brien
245b9bfb42SDavid E. O'Brien#####################################################################
255b9bfb42SDavid E. O'Brien# CPU OPTIONS
265b9bfb42SDavid E. O'Brien
275b9bfb42SDavid E. O'Brien#
285b9bfb42SDavid E. O'Brien# You must specify at least one CPU (the one you intend to run on);
295b9bfb42SDavid E. O'Brien# deleting the specification for CPUs you don't need to use may make
305b9bfb42SDavid E. O'Brien# parts of the system run faster.
315b9bfb42SDavid E. O'Brien#
325b9bfb42SDavid E. O'Briencpu		HAMMER			# aka K8, aka Opteron & Athlon64
335b9bfb42SDavid E. O'Brien
345b9bfb42SDavid E. O'Brien#
355b9bfb42SDavid E. O'Brien# Options for CPU features.
365b9bfb42SDavid E. O'Brien#
37b132d96eSPeter Wemm
38b132d96eSPeter Wemm
39b132d96eSPeter Wemm#####################################################################
40b132d96eSPeter Wemm# HARDWARE DEVICE CONFIGURATION
41b132d96eSPeter Wemm
42b132d96eSPeter Wemm#
43b132d96eSPeter Wemm# Optional devices:
44b132d96eSPeter Wemm#
45b132d96eSPeter Wemm
46ccbb7b5eSEd Maste# vt(4) drivers.
47ccbb7b5eSEd Mastedevice		vt_efifb	# EFI framebuffer
48372c7337SXin LI
495b9bfb42SDavid E. O'Brien# 3Dfx Voodoo Graphics, Voodoo II /dev/3dfx CDEV support.  This will create
505b9bfb42SDavid E. O'Brien# the /dev/3dfx0 device to work with glide implementations.  This should get
515b9bfb42SDavid E. O'Brien# linked to /dev/3dfx and /dev/voodoo.  Note that this is not the same as
525b9bfb42SDavid E. O'Brien# the tdfx DRI module from XFree86 and is completely unrelated.
535b9bfb42SDavid E. O'Brien#
545b9bfb42SDavid E. O'Brien
555b9bfb42SDavid E. O'Briendevice		tdfx			# Enable 3Dfx Voodoo support
565b9bfb42SDavid E. O'Brien
57b132d96eSPeter Wemm#
581f38677bSJohn Baldwin# RAID adapters
59b132d96eSPeter Wemm#
60b132d96eSPeter Wemm
615b9bfb42SDavid E. O'Brien#XXX this stores pointers in a 32bit field that is defined by the hardware
625b9bfb42SDavid E. O'Brien#device	pst
63b132d96eSPeter Wemm
64b132d96eSPeter Wemm#
6514ec0f3aSSean Bruno# Microsemi smartpqi controllers.
6614ec0f3aSSean Bruno# These controllers have a SCSI-like interface, and require the
6714ec0f3aSSean Bruno# CAM infrastructure.
6814ec0f3aSSean Bruno#
6914ec0f3aSSean Brunodevice		smartpqi
7014ec0f3aSSean Bruno
7114ec0f3aSSean Bruno#
721f38677bSJohn Baldwin# Network interfaces:
73b132d96eSPeter Wemm#
7481966bceSXin LI
751f38677bSJohn Baldwin# axp: AMD EPYC integrated NIC
761f38677bSJohn Baldwin#	Requires the miibus module
771f38677bSJohn Baldwin# ice:	Intel 800 Series Physical Function
781f38677bSJohn Baldwin#	Requires the ice_ddp module for full functionality
791f38677bSJohn Baldwin# irdma: Intel 800 Series RDMA driver
801f38677bSJohn Baldwin#        Requires the ice module
811f38677bSJohn Baldwin# qlxgb: QLogic 3200 and 8200 series 10 Gigabit Ethernet & CNA Adapter
821f38677bSJohn Baldwin# qlxgbe: QLogic 8300 series 10 Gigabit Ethernet & CNA Adapter
831f38677bSJohn Baldwin# qlxge: QLogic 8100 series 10 Gigabit Ethernet & CNA Adapter
841f38677bSJohn Baldwin# qlnxe: Cavium QLogic 41000/45000 series 10/25/40/100 Gigabit Ethernet & CNA Adapter
851f38677bSJohn Baldwin# sfxge: Solarflare SFC9000 family 10Gb Ethernet adapters
8680a11093SPeter Wemm
871f38677bSJohn Baldwindevice		axp		# AMD EPYC integrated NIC
881f38677bSJohn Baldwindevice		ixl		# Intel 700 Series Physical Function
891f38677bSJohn Baldwindevice		iavf		# Intel Adaptive Virtual Function
901f38677bSJohn Baldwindevice		ice		# Intel 800 Series Physical Function
911f38677bSJohn Baldwindevice		ice_ddp		# Intel 800 Series DDP Package
921f38677bSJohn Baldwindevice		irdma		# Intel 800 Series RDMA driver
931f38677bSJohn Baldwindevice		qlxgb		# QLogic 3200/8200 Ethernet
941f38677bSJohn Baldwindevice		qlxgbe		# QLogic 8300 Ethernet
951f38677bSJohn Baldwindevice		qlxge		# QLogic 8100 Ethernet
961f38677bSJohn Baldwindevice		qlnxe		# QLogic 41000/45000 Ethernet
971f38677bSJohn Baldwindevice		sfxge		# Solarflare SFC9000 10Gb Ethernet
9869eb2b17SGleb Smirnoff
99b132d96eSPeter Wemm#####################################################################
100b132d96eSPeter Wemm
101b132d96eSPeter Wemm#
102b132d96eSPeter Wemm# Miscellaneous hardware:
103b132d96eSPeter Wemm#
104b132d96eSPeter Wemm
105e974f91cSConrad Meyerdevice		ioat		# Intel I/OAT DMA engine
106c4ce3ea6SWojciech A. Koszek
107164138e7SKyle Evans# EFI Runtime Services support
108bc3ad3a1SKonstantin Belousovoptions 	EFIRT
109bc3ad3a1SKonstantin Belousov
110bfd2ce2aSStephen J. Kiernan# EFI pseudo-device
111bfd2ce2aSStephen J. Kiernandevice		efidev
112bfd2ce2aSStephen J. Kiernan
113bfd2ce2aSStephen J. Kiernan# EFI RTC
114bfd2ce2aSStephen J. Kiernandevice		efirtc
115bfd2ce2aSStephen J. Kiernan
1160f0379faSVladimir Kondratyev#
1171f38677bSJohn Baldwin# Intel QuickAssist driver with OpenCrypto support
1180f0379faSVladimir Kondratyev#
1191f38677bSJohn Baldwin# Only for legacy Atom C2XXX chipsets.
1201f38677bSJohn Baldwindevice		qat_c2xxx
1211f38677bSJohn Baldwin
1221f38677bSJohn Baldwin# Xen HVM Guest Optimizations
1231f38677bSJohn Baldwinoptions 	XENHVM		# Xen HVM kernel infrastructure
1241f38677bSJohn Baldwindevice		xenefi		# Xen EFI timer device
1251f38677bSJohn Baldwindevice 		xenpci		# Xen HVM Hypervisor services driver
1261f38677bSJohn Baldwindevice		xentimer	# Xen x86 PV timer device
1270f0379faSVladimir Kondratyev
128b132d96eSPeter Wemm#####################################################################
129b132d96eSPeter Wemm# ABI Emulation
130b132d96eSPeter Wemm
131c680f6b1SDavid E. O'Brien# Enable 32-bit runtime support for FreeBSD/i386 binaries.
132841c0c7eSNathan Whitehornoptions 	COMPAT_FREEBSD32
133c680f6b1SDavid E. O'Brien
134c507c512SBruce Evans# Enable (32-bit) a.out binary support
135c507c512SBruce Evansoptions 	COMPAT_AOUT
136c507c512SBruce Evans
137b132d96eSPeter Wemm#####################################################################
138f1bac7bbSMatt Macy# ZFS support
139f1bac7bbSMatt Macy
140fb702b44SMatt Macy# NB: This depends on crypto, cryptodev and ZSTDIO
141f1bac7bbSMatt Macyoptions 	ZFS
142f1bac7bbSMatt Macy
143f1bac7bbSMatt Macy#####################################################################
144b132d96eSPeter Wemm# VM OPTIONS
145b132d96eSPeter Wemm
146b620daf6SJohn Baldwin#
147b620daf6SJohn Baldwin# Number of initial kernel page table pages used for early bootstrap.
148b620daf6SJohn Baldwin# This number should include enough pages to map the kernel and any
149b620daf6SJohn Baldwin# modules or other data loaded with the kernel by the loader.  Each
150b620daf6SJohn Baldwin# page table page maps 2MB.
151b620daf6SJohn Baldwin#
152b620daf6SJohn Baldwinoptions 	NKPT=31
153b620daf6SJohn Baldwin
154b132d96eSPeter Wemm# KSTACK_PAGES is the number of memory pages to assign to the kernel
155b132d96eSPeter Wemm# stack of each thread.
156b132d96eSPeter Wemm
157136882cfSAndriy Gaponoptions 	KSTACK_PAGES=5
158b132d96eSPeter Wemm
1595d4c773bSAlan Cox# Enable detailed accounting by the PV entry allocator.
1605d4c773bSAlan Cox
1615d4c773bSAlan Coxoptions 	PV_STATS
162*4f8f9d70SLexi Winter
163*4f8f9d70SLexi Winter#####################################################################
164*4f8f9d70SLexi Winter# Kernel sanitizers
165*4f8f9d70SLexi Winter
166*4f8f9d70SLexi Winter#options	COVERAGE		# Generic kernel coverage. Used by KCOV
167*4f8f9d70SLexi Winter#options	KCOV			# Kernel Coverage Sanitizer
168*4f8f9d70SLexi Winter# Warning: KUBSAN can result in a kernel too large for loader to load
169*4f8f9d70SLexi Winter#options	KUBSAN			# Kernel Undefined Behavior Sanitizer
170*4f8f9d70SLexi Winter#options	KCSAN			# Kernel Concurrency Sanitizer
171*4f8f9d70SLexi Winter#options	KASAN			# Kernel Address Sanitizer
172*4f8f9d70SLexi Winter#options	KCSAN			# Kernel Concurrency Sanitizer
173*4f8f9d70SLexi Winter#options	KMSAN			# Kernel Memory Sanitizer
174