xref: /netbsd-src/sys/arch/amd64/conf/GENERIC (revision 37506929f19face12ad0f4312d19015ba099accd)
1# $NetBSD: GENERIC,v 1.614 2024/08/27 00:56:16 riastradh Exp $
2#
3# GENERIC machine description file
4#
5# This machine description file is used to generate the default NetBSD
6# kernel.  The generic kernel does not include all options, subsystems
7# and device drivers, but should be useful for most applications.
8#
9# The machine description file can be customised for your specific
10# machine to reduce the kernel size and improve its performance.
11#
12# For further information on compiling NetBSD kernels, see the config(8)
13# man page.
14#
15# For further information on hardware support for this architecture, see
16# the intro(4) man page.  For further information about kernel options
17# for this architecture, see the options(4) man page.  For an explanation
18# of each device driver in this file see the section 4 man page for the
19# device.
20
21include 	"arch/amd64/conf/std.amd64"
22
23options 	INCLUDE_CONFIG_FILE	# embed config file in kernel binary
24
25#ident		"GENERIC-$Revision: 1.614 $"
26
27maxusers	64		# estimated number of users
28
29# delay between "rebooting ..." message and hardware reset, in milliseconds
30#options 	CPURESET_DELAY=2000
31
32# This option allows you to force a serial console at the specified
33# I/O address.   see console(4) for details.
34#options 	CONSDEVNAME="\"com\"",CONADDR=0x2f8,CONSPEED=57600
35#	you don't want the option below ON iff you are using the
36#	serial console option of the new boot strap code.
37#options 	CONS_OVERRIDE	# Always use above! independent of boot info
38
39# The following options override the memory sizes passed in from the boot
40# block.  Use them *only* if the boot block is unable to determine the correct
41# values.  Note that the BIOS may *correctly* report less than 640k of base
42# memory if the extended BIOS data area is located at the top of base memory
43# (as is the case on most recent systems).
44#options 	REALBASEMEM=639		# size of base memory (in KB)
45#options 	REALEXTMEM=15360	# size of extended memory (in KB)
46
47# The following options limit the overall size of physical memory
48# and/or the maximum address used by the system.
49# Contrary to REALBASEMEM and REALEXTMEM, they still use the BIOS memory map
50# and can deal with holes in the memory layout.
51#options 	PHYSMEM_MAX_SIZE=64	# max size of physical memory (in MB)
52#options 	PHYSMEM_MAX_ADDR=2048	# don't use memory above this (in MB)
53
54# Standard system options
55
56options 	INSECURE	# disable kernel security levels - X needs this
57
58options 	RTC_OFFSET=0	# hardware clock is this many mins. west of GMT
59options 	NTP		# NTP phase/frequency locked loop
60
61options 	KTRACE		# system call tracing via ktrace(1)
62
63options 	CPU_UCODE	# cpu ucode loading support
64
65# Note: SysV IPC parameters could be changed dynamically, see sysctl(8).
66options 	SYSVMSG		# System V-like message queues
67options 	SYSVSEM		# System V-like semaphores
68options 	SYSVSHM		# System V-like memory sharing
69
70options 	MODULAR		# new style module(7) framework
71options 	MODULAR_DEFAULT_AUTOLOAD
72options 	USERCONF	# userconf(4) support
73#options 	PIPE_SOCKETPAIR	# smaller, but slower pipe(2)
74options 	SYSCTL_INCLUDE_DESCR	# Include sysctl descriptions in kernel
75
76# CPU-related options
77options 	USER_LDT	# User-settable LDT, used by Wine
78options 	SVS		# Separate Virtual Space
79options 	PCPU_IDT	# Per CPU IDTs
80
81# GCC Spectre variant 2 mitigation
82makeoptions	SPECTRE_V2_GCC_MITIGATION=1
83options 	SPECTRE_V2_GCC_MITIGATION
84
85# CPU features
86acpicpu*	at cpu?		# ACPI CPU (including frequency scaling)
87coretemp*	at cpu?		# Intel on-die thermal sensor
88est0		at cpu0		# Intel Enhanced SpeedStep (non-ACPI)
89hyperv0 	at cpu0		# Microsoft Hyper-V
90#odcm0		at cpu0		# On-demand clock modulation
91powernow0	at cpu0		# AMD PowerNow! and Cool'n'Quiet (non-ACPI)
92viac7temp*	at cpu?		# VIA C7, Nano and Zhaoxin temperature sensor
93vmt0		at cpu0		# VMware Tools
94
95#Xen PV support for PVH and HVM guests
96options 	XENPVHVM
97options 	XEN
98hypervisor*	at mainbus?		# Xen hypervisor
99xenbus*	 	at hypervisor?		# Xen virtual bus
100xencons*	at hypervisor?		# Xen virtual console
101xennet*  	at xenbus?		# Xen virtual network interface
102xbd*		at xenbus?		# Xen virtual block device
103# experimental: PVH dom0 support
104#options 	DOM0OPS
105#pseudo-device  xenevt
106#pseudo-device  xvif
107#pseudo-device  xbdback
108
109
110# Alternate buffer queue strategies for better responsiveness under high
111# disk I/O load.
112#options 	BUFQ_READPRIO
113options 	BUFQ_PRIOCSCAN
114
115# Diagnostic/debugging support options
116options 	DIAGNOSTIC	# inexpensive kernel consistency checks
117				# XXX to be commented out on release branch
118#options 	DEBUG		# expensive debugging checks/support
119#options 	LOCKDEBUG	# expensive locking checks/support
120
121#
122# Because gcc omits the frame pointer for any -O level, the line below
123# is needed to make backtraces in DDB work.
124#
125makeoptions	COPTS="-O2 -fno-omit-frame-pointer"
126options 	DDB		# in-kernel debugger
127#options 	DDB_COMMANDONENTER="bt"	# execute command when ddb is entered
128#options 	DDB_ONPANIC=1	# see also sysctl(7): `ddb.onpanic'
129options 	DDB_HISTORY_SIZE=512	# enable history editing in DDB
130#options 	KGDB		# remote debugger
131#options 	KGDB_DEVNAME="\"com\"",KGDB_DEVADDR=0x3f8,KGDB_DEVRATE=9600
132makeoptions	DEBUG="-g"	# compile full symbol table for CTF
133options DDB_COMMANDONENTER="trace;show registers"
134#options 	SYSCALL_STATS	# per syscall counts
135#options 	SYSCALL_TIMES	# per syscall times
136#options 	SYSCALL_TIMES_HASCOUNTER	# use 'broken' rdtsc (soekris)
137options 	KDTRACE_HOOKS	# kernel DTrace hooks
138
139# Kernel Undefined Behavior Sanitizer (kUBSan).
140#options 	KUBSAN			# mandatory
141#options 	UBSAN_ALWAYS_FATAL	# optional: panic on all kUBSan reports
142
143# Kernel Address Sanitizer (kASan). You need to disable SVS to use it.
144# The quarantine is optional and can help KASAN find more use-after-frees.
145# Use KASAN_PANIC if you want panics instead of warnings.
146#makeoptions 	KASAN=1		# mandatory
147#options 	KASAN		# mandatory
148#no options 	SVS		# mandatory
149#options 	POOL_QUARANTINE	# optional
150#options 	KASAN_PANIC	# optional
151
152# Kernel Concurrency Sanitizer (kCSan).
153#makeoptions 	KCSAN=1		# mandatory
154#options 	KCSAN		# mandatory
155#options 	KCSAN_PANIC	# optional
156
157# Kernel Memory Sanitizer (kMSan). You need to disable SVS and kernel modules
158# to use it. POOL_NOCACHE is optional and can help KMSAN find uninitialized
159# memory in pool caches. Note that KMSAN requires at least 4GB of RAM.
160#makeoptions 	KMSAN=1		# mandatory
161#options 	KMSAN		# mandatory
162#no options 	SVS		# mandatory
163#no options 	MODULAR		# mandatory
164#no options 	MODULAR_DEFAULT_AUTOLOAD	# mandatory
165#options 	POOL_NOCACHE	# optional
166#options 	KMSAN_PANIC	# optional
167
168# Kernel Code Coverage Driver.
169#makeoptions	KCOV=1
170#options 	KCOV
171
172# Fault Injection Driver.
173#options 	FAULT
174
175# Heartbeat checks
176options 	HEARTBEAT
177options 	HEARTBEAT_MAX_PERIOD_DEFAULT=15
178
179# Compatibility options
180# x86_64 never shipped with a.out binaries; the two options below are
181# only relevant to 32-bit i386 binaries
182#options 	EXEC_AOUT	# required by binaries from before 1.5
183#options 	COMPAT_NOMID	# NetBSD 0.8, 386BSD, and BSDI
184
185# NetBSD backward compatibility. Support goes from COMPAT_15 up until
186# the latest release. Note that really old compat (< COMPAT_16) is only
187# useful for 32-bit i386 binaries.
188include 	"conf/compat_netbsd15.config"
189
190#options 	COMPAT_386BSD_MBRPART # recognize old partition ID
191
192options 	COMPAT_NETBSD32
193options 	EXEC_ELF32
194
195# Wedge support
196options 	DKWEDGE_AUTODISCOVER	# Automatically add dk(4) instances
197options 	DKWEDGE_METHOD_GPT	# Supports GPT partitions as wedges
198#options 	DKWEDGE_METHOD_BSDLABEL	# Support disklabel entries as wedges
199#options 	DKWEDGE_METHOD_MBR	# Support MBR partitions as wedges
200options 	DKWEDGE_METHOD_APPLE	# Support Apple partitions as wedges
201#options 	DKWEDGE_METHOD_RDB	# Support RDB partitions as wedges
202#options 	DKWEDGE_METHOD_TOS	# Support Atari "TOS" partitions as wedges
203
204# File systems
205include "conf/filesystems.config"
206
207# File system options
208# ffs
209options 	FFS_EI		# FFS Endian Independent support
210#options 	FFS_NO_SNAPSHOT	# No FFS snapshot support
211options 	QUOTA		# legacy UFS quotas
212options 	QUOTA2		# new, in-filesystem UFS quotas
213options 	UFS_ACL		# UFS Access Control Lists
214options 	UFS_DIRHASH	# UFS Large Directory Hashing
215options 	UFS_EXTATTR	# Extended attribute support for UFS1
216options 	WAPBL		# File system journaling support
217# lfs
218options 	LFS_DIRHASH	# LFS version of UFS_DIRHASH
219# ext2fs
220# other
221options 	DISKLABEL_EI	# disklabel Endian Independent support
222options 	NFSSERVER	# Network File System server
223
224# Networking options
225#options 	GATEWAY		# packet forwarding
226options 	INET		# IP + ICMP + TCP + UDP
227options 	INET6		# IPV6
228options 	IPSEC		# IP security
229#options 	IPSEC_DEBUG	# debug for IP security
230#options 	MPLS		# MultiProtocol Label Switching (needs mpls)
231#options 	MROUTING	# IP multicast routing
232#options 	PIM		# Protocol Independent Multicast
233options 	NETATALK	# AppleTalk networking protocols
234#options 	CAN		# Controller Area Network protocol
235options 	PPP_BSDCOMP	# BSD-Compress compression support for PPP
236options 	PPP_DEFLATE	# Deflate compression support for PPP
237options 	PPP_FILTER	# Active filter support for PPP (requires bpf)
238#options 	TCP_DEBUG	# Record last TCP_NDEBUG packets with SO_DEBUG
239#options 	TCP_SIGNATURE	# Enable RFC-2385 TCP md5 signatures
240
241#options 	ALTQ		# Manipulate network interfaces' output queues
242#options 	ALTQ_BLUE	# Stochastic Fair Blue
243#options 	ALTQ_CBQ	# Class-Based Queueing
244#options 	ALTQ_CDNR	# Diffserv Traffic Conditioner
245#options 	ALTQ_FIFOQ	# First-In First-Out Queue
246#options 	ALTQ_FLOWVALVE	# RED/flow-valve (red-penalty-box)
247#options 	ALTQ_HFSC	# Hierarchical Fair Service Curve
248#options 	ALTQ_LOCALQ	# Local queueing discipline
249#options 	ALTQ_PRIQ	# Priority Queueing
250#options 	ALTQ_RED	# Random Early Detection
251#options 	ALTQ_RIO	# RED with IN/OUT
252#options 	ALTQ_WFQ	# Weighted Fair Queueing
253
254# These options enable verbose messages for several subsystems.
255# Warning, these may compile large string tables into the kernel!
256#options 	ACPIVERBOSE	# verbose ACPI configuration messages
257#options 	MIIVERBOSE	# verbose PHY autoconfig messages
258options 	PCIVERBOSE	# verbose PCI device autoconfig messages
259#options 	PCI_CONFIG_DUMP	# verbosely dump PCI config space
260#options 	PCMCIAVERBOSE	# verbose PCMCIA configuration messages
261options 	SCSIVERBOSE	# human readable SCSI error messages
262#options 	USBVERBOSE	# verbose USB device autoconfig messages
263options 	HDAUDIOVERBOSE	# human readable HDAUDIO device names
264
265options 	NFS_BOOT_DHCP,NFS_BOOT_BOOTPARAM
266
267#
268# wscons options
269#
270# builtin terminal emulations
271options 	WSEMUL_VT100		# VT100 / VT220 emulation
272#options 	WSEMUL_SUN		# sun terminal emulation
273#options 	WSEMUL_DEFAULT="\"vt100\""  # NB: default is "sun" if enabled
274# different kernel output - see dev/wscons/wsdisplayvar.h
275options 	WSDISPLAY_CUSTOM_OUTPUT	# color customization from wsconsctl(8)
276options 	WS_KERNEL_FG=WSCOL_GREEN
277#options 	WS_KERNEL_BG=WSCOL_BLACK
278# customization of console border color
279options 	WSDISPLAY_CUSTOM_BORDER	# custom border colors via wsconsctl(8)
280# compatibility to other console drivers
281options 	WSDISPLAY_COMPAT_PCVT		# emulate some ioctls
282options 	WSDISPLAY_COMPAT_SYSCONS	# emulate some ioctls
283options 	WSDISPLAY_COMPAT_USL		# wsconscfg VT handling
284options 	WSDISPLAY_COMPAT_RAWKBD		# can get raw scancodes
285# don't attach pckbd as the console if no PS/2 keyboard is found
286options 	PCKBD_CNATTACH_MAY_FAIL
287# see dev/pckbport/wskbdmap_mfii.c for implemented layouts
288#options 	PCKBD_LAYOUT="(KB_DE | KB_NODEAD)"
289# allocate a number of virtual screens at autoconfiguration time
290#options 	WSDISPLAY_DEFAULTSCREENS=4
291# use a large software cursor that doesn't blink
292options 	PCDISPLAY_SOFTCURSOR
293# modify the screen type of the console; defaults to "80x25"
294#options 	VGA_CONSOLE_SCREENTYPE="\"80x24\""
295# work around a hardware bug that loaded fonts don't work; found on ATI cards
296#options 	VGA_CONSOLE_ATI_BROKEN_FONTSEL
297# console scrolling support.
298options 	WSDISPLAY_SCROLLSUPPORT
299# enable VGA raster mode capable of displaying multilingual text on console
300#options 	VGA_RASTERCONSOLE
301# enable splash screen support; requires genfb or radeonfb
302#options 	SPLASHSCREEN
303
304# Kernel root file system and dump configuration.
305config		netbsd	root on ? type ?
306#config		netbsd	root on sd0a type ffs
307#config		netbsd	root on ? type nfs
308
309#
310# Device configuration
311#
312
313# IPMI support
314ipmi0		at mainbus?
315ipmi_acpi*	at acpi?
316ipmi0		at ipmi_acpi?
317
318# ACPI will be used if present. If not it will fall back to MPBIOS
319acpi0		at mainbus0
320options 	ACPI_SCANPCI		# find PCI roots using ACPI
321options 	MPBIOS			# configure CPUs and APICs using MPBIOS
322options 	MPBIOS_SCANPCI		# MPBIOS configures PCI roots
323#options 	PCI_INTR_FIXUP		# fixup PCI interrupt routing via ACPI
324#options 	PCI_BUS_FIXUP		# fixup PCI bus numbering
325#options 	PCI_ADDR_FIXUP		# fixup PCI I/O addresses
326#options 	ACPI_ACTIVATE_DEV	# If set, activate inactive devices
327options 	VGA_POST		# in-kernel support for VGA POST
328
329# ACPI devices
330acpiacad*	at acpi?		# ACPI AC Adapter
331acpibat*	at acpi?		# ACPI Battery
332acpibut*	at acpi?		# ACPI Button
333acpidalb*	at acpi?		# ACPI Direct Application Launch Button
334acpiec* 	at acpi?		# ACPI Embedded Controller (late)
335acpiecdt*	at acpi?		# ACPI Embedded Controller (early)
336acpifan*	at acpi?		# ACPI Fan
337acpihed*	at acpi?		# ACPI Hardware Error Device
338acpilid*	at acpi?		# ACPI Lid Switch
339#acpipmtr*	at acpi?		# ACPI Power Meter (experimental)
340#acpismbus*	at acpi?		# ACPI SMBus CMI (experimental)
341acpitz* 	at acpi?		# ACPI Thermal Zone
342acpivga*	at acpi?		# ACPI Display Adapter
343acpiout*	at acpivga?		# ACPI Display Output Device
344acpivmgenid*	at acpi?		# ACPI Virtual Machine Generation ID
345acpiwdrt*	at acpi?		# ACPI Watchdog Resource Table
346acpiwmi*	at acpi?		# ACPI WMI Mapper
347apei*		at apeibus?		# ACPI Platform Error Interfaces
348
349# Mainboard devices
350aibs*		at acpi?		# ASUSTeK AI Booster hardware monitor
351asus*		at acpi?		# ASUS hotkeys
352attimer*	at acpi?		# AT Timer
353com0		at acpi?		# Serial communications interface
354com1		at acpi?		# Serial communications interface
355com*		at acpi?		# Serial communications interface
356fdc*		at acpi?		# Floppy disk controller
357fd*		at fdc? drive ?		# the drives themselves
358fujbp*		at acpi?		# Fujitsu Brightness & Pointer
359fujhk*		at acpi?		# Fujitsu Hotkeys
360#hpacel* 	at acpi?		# HP 3D DriveGuard accelerometer
361#hpqlb*		at acpi?		# HP Quick Launch Buttons
362hpet*		at acpihpetbus?		# High Precision Event Timer (table)
363hpet*		at acpinodebus?		# High Precision Event Timer (device)
364joy*		at acpi?		# Joystick/Game port
365lpt0		at acpi?		# Parallel port
366lpt1		at acpi?		# Parallel port
367lpt*		at acpi?		# Parallel port
368mpu*		at acpi?		# Roland MPU-401 MIDI UART
369pckbc*		at acpi?		# PC keyboard controller
370pcppi*		at acpi?		# AT-style speaker sound
371qemufwcfg*	at acpi?		# QEMU Firmware Configuration device
372sdhc*		at acpi?		# SD Host Controller
373sony*		at acpi?		# Sony Notebook Controller
374spic*		at acpi?		# Sony Programmable I/O Controller
375wsmouse*	at spic?		# mouse
376thinkpad*	at acpi?		# IBM/Lenovo Thinkpad hotkeys
377tpm*		at acpi?		# ACPI TPM (Experimental)
378ug*		at acpi?		# Abit uGuru Hardware monitor
379valz*		at acpi?		# Toshiba Dynabook hotkeys
380wb*		at acpi?		# Winbond W83L518D SD/MMC reader
381sdmmc*		at wb?			# SD/MMC bus
382wmidell*	at acpiwmibus?		# Dell WMI mappings
383wmieeepc*	at acpiwmibus?		# Asus Eee PC WMI mappings
384wmihp*		at acpiwmibus?		# HP WMI mappings
385wmimsi* 	at acpiwmibus?		# MSI WMI mappings
386
387# Basic Bus Support
388
389# PCI bus support
390pci*	at mainbus? bus ?
391pci*	at pchb? bus ?
392pci*	at ppb? bus ?
393
394# PCI bridges
395pchb*	at pci? dev ? function ?	# PCI-Host bridges
396options 	AGP_X86
397pcib*	at pci? dev ? function ?	# PCI-ISA bridges
398ppb*	at pci? dev ? function ?	# PCI-PCI bridges
399# XXX 'puc's aren't really bridges, but there's no better place for them here
400puc*	at pci? dev ? function ?	# PCI "universal" comm. cards
401
402amdpcib* at pci? dev ? function ?	# AMD 8111 PCI-ISA w/ HPET
403hpet*	at amdpcib?
404
405pwdog*	at pci? dev ? function ?	# QUANCOM PWDOG1
406
407ichlpcib* at pci? dev ? function ?	# Intel ICH PCI-LPC w/ timecounter,
408					# watchdog, gpio, Speedstep and HPET
409fwhrng* at ichlpcib?		# Intel 82802 FWH Random Number Generator
410#hpet*	at ichlpcib?
411tco*	at tcoichbus?		# TCO watch dog timer
412
413aapic*	at pci? dev ? function ?	# AMD 8131 IO apic
414
415agp*	at pchb?
416
417# ISA bus support
418isa0	at mainbus?
419isa0	at pcib?
420#isa0	at amdpcib?
421isa0	at ichlpcib?
422
423# CardBus bridge support
424cbb*		at pci? dev ? function ?
425cardslot*	at cbb?
426
427# CardBus bus support
428cardbus*	at cardslot?
429pcmcia* 	at cardslot?
430
431# Console Devices
432
433# wscons
434pckbc0		at isa?			# pc keyboard controller
435pckbd*		at pckbc?		# PC keyboard
436pms*		at pckbc?		# PS/2 mouse for wsmouse
437#options 	PMS_DISABLE_POWERHOOK	# Disable PS/2 reset on resume
438options 	PMS_SYNAPTICS_TOUCHPAD	# Enable support for Synaptics Touchpads
439options 	PMS_ELANTECH_TOUCHPAD	# Enable support for Elantech Touchpads
440options 	PMS_ALPS_TOUCHPAD	# Enable support for Alps Touchpads
441vga*		at pci? dev ? function ?
442genfb*		at pci? dev ? function ?
443options 	VCONS_DRAW_INTR
444wsdisplay*	at vga? console ?
445wsdisplay*	at wsemuldisplaydev?
446wskbd*		at pckbd? console ?
447wsmouse*	at pms? mux 0
448wsmouse*	at wsmousedev?
449
450attimer0	at isa?
451pcppi0		at isa?
452sysbeep0	at pcppi?
453
454# DRI legacy drivers
455#i915drm*	at drm?		# Intel i915, i945 DRM driver
456#mach64drm*	at drm?		# mach64 (3D Rage Pro, Rage) DRM driver
457#mgadrm* 	at drm?		# Matrox G[24]00, G[45]50 DRM driver
458#r128drm*	at drm?		# ATI Rage 128 DRM driver
459#radeondrm*	at drm?		# ATI Radeon DRM driver
460#savagedrm*	at drm?		# S3 Savage DRM driver
461#sisdrm* 	at drm?		# SiS DRM driver
462#tdfxdrm*	at drm?		# 3dfx (voodoo) DRM driver
463
464# DRMKMS drivers
465i915drmkms*	at pci? dev ? function ?
466intelfb*	at intelfbbus?
467
468radeon* 	at pci? dev ? function ?
469radeondrmkmsfb* at radeonfbbus?
470
471#amdgpu*	at pci? dev ? function ?
472#amdgpufb*	at amdgpufbbus?
473
474nouveau*	at pci? dev ? function ?
475nouveaufb*	at nouveaufbbus?
476
477# DRMUMS drivers -- make them loadable, but not statically linked in
478options 	DRM_LEGACY
479#viadrmums*	at drm?
480
481#options 	DRM_MAX_RESOLUTION_HORIZONTAL=1920	# Limit DRM size in horizontal dimension
482#options 	DRM_MAX_RESOLUTION_VERTICAL=1080	# Limit DRM size in vertical dimension
483
484# Cryptographic Devices
485
486# PCI cryptographic devices
487amdccp*	at pci? dev ? function ?	# AMD Cryptographic Coprocessor
488hifn*	at pci? dev ? function ?	# Hifn 7755/7811/795x
489#qat*	at pci? dev ? function ?	# Intel QuickAssist
490ubsec*	at pci? dev ? function ?	# Broadcom 5501/5601/580x/582x
491
492# Trusted Platform Module
493tpm*	at isa? iomem 0xfed40000 irq 7
494
495# Serial Devices
496
497# PCI serial interfaces
498com*	at puc? port ?			# 16x50s on "universal" comm boards
499cy*	at pci? dev ? function ?	# Cyclades Cyclom-Y serial boards
500cz*	at pci? dev ? function ?	# Cyclades-Z multi-port serial boards
501
502# PCMCIA serial interfaces
503com*	at pcmcia? function ?		# Modems and serial cards
504
505pcmcom* at pcmcia? function ?		# PCMCIA multi-port serial cards
506com*	at pcmcom? slave ?		# ...and the slave devices
507
508# CardBus serial interfaces
509com*	at cardbus? function ?	# Modems and serial cards
510
511# ISA serial interfaces
512#options 	COM_HAYESP		# adds Hayes ESP serial board support
513com0	at isa? port 0x3f8 irq 4	# Standard PC serial ports
514com1	at isa? port 0x2f8 irq 3
515
516# Parallel Printer Interfaces
517
518# PCI parallel printer interfaces
519lpt*	at puc? port ?			# || ports on "universal" comm boards
520
521# ISA parallel printer interfaces
522lpt0	at isa? port 0x378 irq 7	# standard PC parallel ports
523lpt1	at isa? port 0x278
524
525# Hardware monitors
526
527amdnb_misc* at pci?			# AMD NB Misc Configuration
528amdtemp* at amdnb_misc?  		# AMD CPU Temperature sensors
529
530amdsmn* at pci?				# AMD SMN Configuration
531amdzentemp* at amdsmnbus?		# AMD Ryzen Family 17h CPU temp sensors
532
533# Winbond LPC Super I/O
534#wbsio*	at isa? port 0x2e
535#wbsio*	at isa? port 0x4e
536
537# IBM Hawk Integrated Systems Management Processor
538#ibmhawk0	at iic? addr 0x37
539
540# LM7[89] and compatible hardware monitors
541# Use flags to select temp sensor type (see lm(4) man page for details)
542#lm0	at isa?	port 0x290 flags 0x0	# other common ports: 0x280, 0x310
543#lm*	at wbsio?
544
545# SMSC LPC47B397 hardware monitor functions
546#smsc0	at isa? port 0x02e
547
548# SMSC LPC47M192 hardware monitor
549#smscmon*	at iic? addr 0x2c
550#smscmon*	at iic? addr 0x2d	# (alternate address)
551
552# AMD 768 and 8111 power/ACPI controllers
553amdpm*	at pci? dev ? function ?	# RNG and SMBus 1.0 interface
554#iic*	at amdpm?			# sensors below are on this bus
555
556# NVIDIA nForce2/3/4 SMBus controller
557nfsmbc* at pci? dev ? function ?
558nfsmb*	at nfsmbc?
559iic*	at nfsmb?
560
561# Intel PIIX4 power management controllers
562piixpm* at pci? dev ? function ?	# PIIX4 compatible PM controller
563iic*	at piixpm?			# SMBus on PIIX4
564
565# Intel ICH SMBus controller
566ichsmb* at pci? dev ? function ?
567iic*	at ichsmb?
568
569# Intel S1200,C2000 (non-pch) SMBus controller
570ismt* at pci? dev ? function ?
571iic*	at ismt?
572
573# DesignWare I2C controller as found in some Intel PCH and AMD FCH devices.
574dwiic*		at acpi?		# DesignWare I2C controller
575dwiic*		at pci?			# DesignWare I2C controller
576iic*		at dwiic?
577
578# Thermal monitor and fan controller
579#dbcool* at iic? addr 0x2C		# Unknown other motherboard(s)
580#dbcool* at iic? addr 0x2D		# Tyan S2881
581#dbcool* at iic? addr 0x2E		# Tyan S2882-D
582
583# IBM Thinkpad Active Protection System
584#aps0	at isa? port 0x1600
585
586# Fintek Super I/O with hardware monitor
587#finsio0 	at isa? port 0x4e
588
589# iTE IT87xxF Super I/O with watchdog and sensors support
590#itesio0 	at isa? port 0x2e
591
592# Abit uGuru Hardware system monitor
593#ug0	at isa? port 0xe0
594
595# Serial Presence Detect capable memory modules
596#spdmem* at iic? addr 0x50
597#spdmem* at iic? addr 0x51
598#spdmem* at iic? addr 0x52
599#spdmem* at iic? addr 0x53
600#spdmem* at iic? addr 0x54
601#spdmem* at iic? addr 0x55
602#spdmem* at iic? addr 0x56
603#spdmem* at iic? addr 0x57
604#sdtemp* at iic? addr 0x18
605#sdtemp* at iic? addr 0x19
606#sdtemp* at iic? addr 0x1a
607#sdtemp* at iic? addr 0x1b
608#sdtemp* at iic? addr 0x1c
609#sdtemp* at iic? addr 0x1d
610#sdtemp* at iic? addr 0x1e
611#sdtemp* at iic? addr 0x1f
612
613# Intel GPIO
614igpio*         at acpi?
615
616# I2C HID devices
617ihidev* at iic?
618
619# I2C Mice
620ims*	at ihidev? reportid ?
621wsmouse* at ims? mux 0
622
623# I2O devices
624iop*	at pci? dev ? function ?	# I/O processor
625iopsp*	at iop? tid ?			# SCSI/FC-AL ports
626ld*	at iop? tid ?			# block devices
627# XXX dpti.c wants a processor type that is not assigned for x86-64
628#dpti*	at iop? tid 0			# DPT/Adaptec control interface
629
630# GPIO devices
631gpio*		at gpiobus?
632
633# 1- Wire support
634#gpioow* 	at gpio? offset ? mask ?	# 1-wire bitbanging via gpio
635gpioow* 	at gpio?
636onewire*	at gpioow?
637
638# 1-Wire devices
639owtemp* 	at onewire?			# Temperature sensors
640
641# I2C support
642#gpioiic*	at gpio?
643#iic*		at gpioiic?
644
645# Keylock support
646#gpiolock*	at gpio?
647
648# Pulsing GPIO pins in software
649#gpiopwm*	at gpio?
650
651# Soekris 6501 GPIO/LED driver (provides gpiobus, needs gpio)
652#soekrisgpio0	at isa? port 0x680
653
654# Nuvoton NCT5104D SuperIO providing GPIO
655nct0		at isa? port ?
656
657# SCSI Controllers and Devices
658
659# PCI SCSI controllers
660adv*	at pci? dev ? function ?	# AdvanSys 1200[A,B], 9xx[U,UA] SCSI
661adw*	at pci? dev ? function ?	# AdvanSys 9x0UW[D], 3940U[2,3]W SCSI
662ahc*	at pci? dev ? function ?	# Adaptec [23]94x, aic78x0 SCSI
663ahd*	at pci? dev ? function ?	# Adaptec aic790x SCSI
664bha*	at pci? dev ? function ?	# BusLogic 9xx SCSI
665dpt*	at pci? dev ? function ?	# DPT SmartCache/SmartRAID
666iha*	at pci? dev ? function ?	# Initio INIC-940/950 SCSI
667isp*	at pci? dev ? function ?	# Qlogic ISP [12]0x0 SCSI/FibreChannel
668mfi*	at pci? dev ? function ?	# LSI MegaRAID SAS
669mfii*	at pci? dev ? function ?	# LSI MegaRAID SAS (Fusion and newer)
670mly*	at pci? dev ? function ?	# Mylex AcceleRAID and eXtremeRAID
671mpt*	at pci? dev ? function ?	# LSILogic 9x9 and 53c1030 (Fusion-MPT)
672mpii*	at pci? dev ? function ?	# LSI Logic Fusion-MPT II
673njs*	at pci? dev ? function ?	# Workbit NinjaSCSI-32
674pcscp*	at pci? dev ? function ?	# AMD 53c974 PCscsi-PCI SCSI
675siop*	at pci? dev ? function ?	# Symbios 53c8xx SCSI
676esiop*	at pci? dev ? function ?	# Symbios 53c875 and newer SCSI
677#options 	SIOP_SYMLED		# drive the act. LED in software
678trm*	at pci? dev ? function ?	# Tekram DC-395U/UW/F, DC-315/U SCSI
679
680# PCMCIA SCSI controllers
681aic*	at pcmcia? function ?		# Adaptec APA-1460 SCSI
682esp*	at pcmcia? function ?		# Qlogic ESP406/FAS408 SCSI
683spc*	at pcmcia? function ?		# Fujitsu MB87030/MB89352 SCSI
684
685# CardBus SCSI cards
686adv*	at cardbus? function ?	# AdvanSys 1200[A,B], 9xx[U,UA] SCSI
687ahc*	at cardbus? function ?	# Adaptec ADP-1480
688njs*	at cardbus? function ?	# Workbit NinjaSCSI-32
689
690# SCSI bus support
691scsibus* at scsi?
692
693# SCSI devices
694sd*	at scsibus? target ? lun ?	# SCSI disk drives
695st*	at scsibus? target ? lun ?	# SCSI tape drives
696cd*	at scsibus? target ? lun ?	# SCSI CD-ROM drives
697ch*	at scsibus? target ? lun ?	# SCSI autochangers
698ses*	at scsibus? target ? lun ?	# SCSI Enclosure Services devices
699ss*	at scsibus? target ? lun ?	# SCSI scanners
700uk*	at scsibus? target ? lun ?	# SCSI unknown
701
702
703# RAID controllers and devices
704aac*	at pci? dev ? function ?	# Adaptec AAC family
705amr*	at pci? dev ? function ?	# AMI/LSI Logic MegaRAID
706arcmsr* at pci? dev ? function ?	# Areca SATA RAID controllers
707cac*	at pci? dev ? function ?	# Compaq PCI array controllers
708ciss*	at pci? dev ? function ?	# HP Smart Array controllers
709icp*	at pci? dev ? function ?	# ICP-Vortex GDT & Intel RAID
710mlx*	at pci? dev ? function ?	# Mylex DAC960 & DEC SWXCR family
711twe*	at pci? dev ? function ?	# 3ware Escalade RAID controllers
712twa*	at pci? dev ? function ?	# 3ware Escalade 9xxx RAID controllers
713
714ld*	at aac? unit ?
715ld*	at amr? unit ?
716ld*	at cac? unit ?
717ld*	at icp? unit ?
718ld*	at twe? unit ?
719ld*	at twa? unit ?
720ld*	at mlx? unit ?
721
722icpsp*	at icp? unit ?			# SCSI pass-through
723
724# IDE and related devices
725# PCI IDE controllers - see pciide(4) for supported hardware.
726# The 0x0001 flag force the driver to use DMA, even if the driver doesn't know
727# how to set up DMA modes for this chip. This may work, or may cause
728# a machine hang with some controllers.
729pciide* at pci? dev ? function ? flags 0x0000	# GENERIC pciide driver
730acardide* at pci? dev ? function ?	# Acard IDE controllers
731aceride* at pci? dev ? function ?	# Acer Lab IDE controllers
732ahcisata* at pci? dev ? function ?	# AHCI SATA controllers
733artsata* at pci? dev ? function ?	# Intel i31244 SATA controller
734cmdide* at pci? dev ? function ?	# CMD tech IDE controllers
735cypide* at pci? dev ? function ?	# Cypress IDE controllers
736hptide* at pci? dev ? function ?	# Triones/HighPoint IDE controllers
737iteide* at pci? dev ? function ?	# IT Express IDE controllers
738ixpide* at pci? dev ? function ?	# ATI IXP IDE controllers
739jmide*	at pci? dev ? function ?	# JMicron PCI-e PATA/SATA controllers
740ahcisata* at jmide?
741mvsata* at pci? dev ? function ?	# Marvell Hercules-I/II
742optiide* at pci? dev ? function ?	# Opti IDE controllers
743piixide* at pci? dev ? function ?	# Intel IDE controllers
744pdcide* at pci? dev ? function ?	# Promise IDE controllers
745pdcsata* at pci? dev ? function ?	# Promise SATA150 controllers
746satalink* at pci? dev ? function ?	# SiI SATALink controllers
747siisata* at pci? dev ? function ?	# SiI SteelVine controllers
748siside* at pci? dev ? function ?	# SiS IDE controllers
749slide*	at pci? dev ? function ?	# Symphony Labs IDE controllers
750svwsata* at pci? dev ? function ?	# ServerWorks SATA controllers
751toshide* at pci? dev ? function ?	# TOSHIBA PICCOLO controllers
752viaide* at pci? dev ? function ?	# VIA/AMD/Nvidia IDE controllers
753
754# PCMCIA IDE controllers
755wdc*	at pcmcia? function ?
756
757# CardBus IDE controllers
758njata*	at cardbus? function ? flags 0x01	# Workbit NinjaATA-32
759siisata* at cardbus? function ? 	# SiI SteelVine controllers
760
761# ISA ST506, ESDI, and IDE controllers
762# Use flags 0x01 if you want to try to use 32bits data I/O (the driver will
763# fall back to 16bits I/O if 32bits I/O are not functional).
764# Some controllers pass the initial 32bit test, but will fail later.
765wdc0	at isa? port 0x1f0 irq 14 flags 0x00
766wdc1	at isa? port 0x170 irq 15 flags 0x00
767
768# ATA (IDE) bus support
769atabus* at ata?
770options 	ATADEBUG
771
772# IDE drives
773# Flags are used only with controllers that support DMA operations
774# and mode settings (e.g. some pciide controllers)
775# The lowest order four bits (rightmost digit) of the flags define the PIO
776# mode to use, the next set of four bits the DMA mode and the third set the
777# UltraDMA mode. For each set of four bits, the 3 lower bits define the mode
778# to use, and the last bit must be 1 for this setting to be used.
779# For DMA and UDMA, 0xf (1111) means 'disable'.
780# 0x0fac means 'use PIO mode 4, DMA mode 2, disable UltraDMA'.
781# (0xc=1100, 0xa=1010, 0xf=1111)
782# 0x0000 means "use whatever the drive claims to support".
783wd*	at atabus? drive ? flags 0x0000
784
785# ATAPI bus support
786atapibus* at atapi?
787
788
789# ATA RAID configuration support, as found on some Promise controllers.
790pseudo-device ataraid
791ld*	at ataraid? vendtype ? unit ?
792
793# ATAPI devices
794# flags have the same meaning as for IDE drives.
795cd*	at atapibus? drive ? flags 0x0000	# ATAPI CD-ROM drives
796sd*	at atapibus? drive ? flags 0x0000	# ATAPI disk drives
797st*	at atapibus? drive ? flags 0x0000	# ATAPI tape drives
798uk*	at atapibus? drive ? flags 0x0000	# ATAPI unknown
799
800
801# NVM Express controllers and devices
802nvme*	at pci? dev ? function ?
803ld*	at nvme? nsid ?
804
805
806# Miscellaneous mass storage devices
807
808# ISA floppy
809#fdc0	at isa? port 0x3f0 irq 6 drq 2	# standard PC floppy controllers
810#fdc1	at isa? port 0x370 irq ? drq ?
811
812# Network Interfaces
813
814# PCI network interfaces
815age*	at pci? dev ? function ?	# Attansic/Atheros L1 Gigabit Ethernet
816alc*	at pci? dev ? function ?	# Attansic/Atheros L1C/L2C Ethernet
817ale*	at pci? dev ? function ?	# Attansic/Atheros L1E Ethernet
818an*	at pci? dev ? function ?	# Aironet PC4500/PC4800 (802.11)
819aq*	at pci? dev ? function ?	# Aquantia AQC 10 gigabit
820ath*	at pci? dev ? function ?	# Atheros 5210/5211/5212 802.11
821athn*	at pci? dev ? function ?	# Atheros AR9k (802.11a/g/n)
822atw*	at pci? dev ? function ?	# ADMtek ADM8211 (802.11)
823bce*	at pci? dev ? function ?	# Broadcom 440x 10/100 Ethernet
824bge*	at pci? dev ? function ?	# Broadcom 570x gigabit Ethernet
825bnx*	at pci? dev ? function ?	# Broadcom NetXtremeII gigabit Ethernet
826bwi*	at pci? dev ? function ?	# Broadcom BCM43xx wireless
827bwfm*	at pci? dev ? function ?	# Broadcom FullMAC
828cas*	at pci? dev ? function ?	# Sun Cassini/Cassini+ Ethernet
829dge*	at pci? dev ? function ?	# Intel 82597 10GbE LR
830ena*	at pci? dev ? function ?	# Amazon.com Elastic Network Adapter
831ep*	at pci? dev ? function ?	# 3Com 3c59x
832epic*	at pci? dev ? function ?	# SMC EPIC/100 Ethernet
833#eqos*	at pci? dev ? function ?	# DesignWare Ethernet QoS
834et*	at pci? dev ? function ?	# Agere/LSI ET1310/ET1301 Gigabit
835ex*	at pci? dev ? function ?	# 3Com 90x[BC]
836fxp*	at pci? dev ? function ?	# Intel EtherExpress PRO 10+/100B
837gem*	at pci? dev ? function ?	# Apple GMAC and Sun ERI gigabit enet
838gsip*	at pci? dev ? function ?	# NS83820 Gigabit Ethernet
839hme*	at pci? dev ? function ?	# Sun Microelectronics STP2002-STQ
840iavf*	at pci? dev ? function ?	# Intel Adaptive Virtual Function
841igc*	at pci? dev ? function ?	# Intel I225 2.5 gigabit
842ipw*	at pci? dev ? function ?	# Intel PRO/Wireless 2100
843iwi*	at pci? dev ? function ?	# Intel PRO/Wireless 2200BG
844iwm*	at pci? dev ? function ?	# Intel Centrino 7260
845iwn*	at pci? dev ? function ?	# Intel PRO/Wireless 4965AGN
846ixg*	at pci? dev ? function ?	# Intel 8259x 10 gigabit
847ixl*	at pci? dev ? function ?	# Intel Ethernet 700 Series
848ixv*	at pci? dev ? function ?	# Intel 8259x 10G virtual function
849jme*	at pci? dev ? function ?	# JMicron JMC2[56]0 ethernet
850kse*	at pci? dev ? function ?	# Micrel KSZ8841/8842 ethernet
851lii*	at pci? dev ? function ?	# Atheros L2 Fast-Ethernet
852malo*	at pci? dev ? function ?	# Marvell Libertas Wireless
853mcx*	at pci? dev ? function ?	# Mellanox 5th generation Ethernet
854mskc*	at pci? dev ? function ?	# Marvell Yukon 2 Gigabit Ethernet
855msk*	at mskc?			# Marvell Yukon 2 Gigabit Ethernet
856mtd*	at pci? dev ? function ?	# Myson MTD803 3-in-1 Ethernet
857ne*	at pci? dev ? function ?	# NE2000-compatible Ethernet
858nfe*	at pci?	dev ? function ?	# NVIDIA nForce Ethernet
859ntwoc*	at pci? dev ? function ?	# Riscom/N2 PCI Sync Serial
860pcn*	at pci? dev ? function ?	# AMD PCnet-PCI Ethernet
861ral*	at pci? dev ? function ?	# Ralink Technology RT25x0 802.11a/b/g
862re*	at pci? dev ? function ?	# Realtek 8139C+/8169/8169S/8110S
863rge*	at pci? dev ? function ?	# Realtek 8125
864rtk*	at pci? dev ? function ?	# Realtek 8129/8139
865rtw*	at pci? dev ? function ?	# Realtek 8180L (802.11)
866rtwn*	at pci? dev ? function ?	# Realtek 8188CE/8192CE 802.11b/g/n
867sf*	at pci? dev ? function ?	# Adaptec AIC-6915 Ethernet
868sip*	at pci? dev ? function ?	# SiS 900/DP83815 Ethernet
869skc*	at pci? dev ? function ?	# SysKonnect SK9821 Gigabit Ethernet
870sk*	at skc?				# SysKonnect SK9821 Gigabit Ethernet
871ste*	at pci? dev ? function ?	# Sundance ST-201 Ethernet
872stge*	at pci? dev ? function ?	# Sundance/Tamarack TC9021 Gigabit
873ti*	at pci? dev ? function ?	# Alteon ACEnic gigabit Ethernet
874tl*	at pci? dev ? function ?	# ThunderLAN-based Ethernet
875tlp*	at pci? dev ? function ?	# DECchip 21x4x and clones
876txp*	at pci? dev ? function ?	# 3com 3cr990
877vge*	at pci? dev ? function ?	# VIATech VT612X Gigabit Ethernet
878vmx*	at pci? dev ? function ?	# VMware VMXNET3
879vr*	at pci? dev ? function ?	# VIA Rhine Fast Ethernet
880wi*	at pci? dev ? function ?	# Intersil Prism Mini-PCI (802.11b)
881wm*	at pci? dev ? function ?	# Intel 82543/82544 gigabit
882wpi*	at pci? dev ? function ?	# Intel PRO/Wireless 3945ABG
883xge*	at pci? dev ? function ?	# Neterion (S2io) Xframe-I 10GbE
884
885# PCMCIA network interfaces
886an*	at pcmcia? function ?		# Aironet PC4500/PC4800 (802.11)
887awi*	at pcmcia? function ?		# BayStack 650/660 (802.11FH/DS)
888cnw*	at pcmcia? function ?		# Xircom/Netwave AirSurfer
889cs*	at pcmcia? function ?		# CS89xx Ethernet
890ep*	at pcmcia? function ?		# 3Com 3c589 and 3c562 Ethernet
891malo*	at pcmcia? function ?		# Marvell Libertas
892mbe*	at pcmcia? function ?		# MB8696x based Ethernet
893ne*	at pcmcia? function ?		# NE2000-compatible Ethernet
894ray*	at pcmcia? function ?		# Raytheon Raylink (802.11)
895sm*	at pcmcia? function ?		# Megahertz Ethernet
896wi*	at pcmcia? function ?		# Lucent/Intersil WaveLan IEEE (802.11)
897xirc*	at pcmcia? function ?		# Xircom CreditCard Ethernet
898com*	at xirc?
899xi*	at xirc?
900
901mhzc*	at pcmcia? function ?		# Megahertz Ethernet/Modem combo cards
902com*	at mhzc?
903sm*	at mhzc?
904
905# CardBus network cards
906ath*	at cardbus? function ?	# Atheros 5210/5211/5212 802.11
907athn*	at cardbus? function ?	# Atheros AR9k (802.11a/g/n) - UNTESTED
908atw*	at cardbus? function ?	# ADMtek ADM8211 (802.11)
909ex*	at cardbus? function ?	# 3Com 3C575TX
910fxp*	at cardbus? function ?	# Intel i8255x
911malo*	at cardbus? function ?	# Marvell Libertas Wireless
912ral*	at cardbus? function ?	# Ralink Technology RT25x0 802.11a/b/g
913re*	at cardbus? function ?	# Realtek 8139C+/8169/8169S/8110S
914rtk*	at cardbus? function ?	# Realtek 8129/8139
915rtw*	at cardbus? function ?	# Realtek 8180L (802.11)
916tlp*	at cardbus? function ?	# DECchip 21143
917
918# MII/PHY support
919acphy*	at mii? phy ?			# DAltima AC101 and AMD Am79c874 PHYs
920amhphy* at mii? phy ?			# AMD 79c901 Ethernet PHYs
921atphy*	at mii?	phy ?			# Attansic/Atheros PHYs
922bmtphy* at mii? phy ?			# Broadcom BCM5201 and BCM5202 PHYs
923brgphy* at mii? phy ?			# Broadcom BCM5400-family PHYs
924ciphy*	at mii? phy ?			# Cicada CS8201 Gig-E PHYs
925dmphy*	at mii? phy ?			# Davicom DM9101 PHYs
926etphy*	at mii? phy ?			# Agere/LSI ET1011 TruePHY Gig-E PHYs
927exphy*	at mii? phy ?			# 3Com internal PHYs
928gentbi* at mii? phy ?			# Generic Ten-Bit 1000BASE-[CLS]X PHYs
929glxtphy* at mii? phy ?			# Level One LXT-1000 PHYs
930gphyter* at mii? phy ?			# NS83861 Gig-E PHY
931icsphy* at mii? phy ?			# Integrated Circuit Systems ICS189x
932igphy*	at mii? phy ?			# Intel IGP01E1000
933ihphy*	at mii? phy ?			# Intel 82577 PHYs
934ikphy*	at mii? phy ?			# Intel 82563 PHYs
935inphy*	at mii? phy ?			# Intel 82555 PHYs
936iophy*	at mii? phy ?			# Intel 82553 PHYs
937ipgphy* at mii? phy ?			# IC PLUS IP1000A/IP1001 PHYs
938jmphy*	at mii? phy ?			# Jmicron JMP202/211 PHYs
939lxtphy* at mii? phy ?			# Level One LXT-970 PHYs
940makphy* at mii? phy ?			# Marvell Semiconductor 88E1000 PHYs
941micphy* at mii? phy ?			# Micrel KSZ[89]xxx PHYs
942nsphy*	at mii? phy ?			# NS83840 PHYs
943nsphyter* at mii? phy ? 		# NS83843 PHYs
944pnaphy* at mii? phy ?			# generic HomePNA PHYs
945qsphy*	at mii? phy ?			# Quality Semiconductor QS6612 PHYs
946rgephy* at mii? phy ?			# Realtek 8169S/8110 internal PHYs
947rlphy*	at mii? phy ?			# Realtek 8139/8201L PHYs
948smscphy* at mii? phy ?			# SMSC LAN87xx PHYs
949sqphy*	at mii? phy ?			# Seeq 80220/80221/80223 PHYs
950tlphy*	at mii? phy ?			# ThunderLAN PHYs
951tqphy*	at mii? phy ?			# TDK Semiconductor PHYs
952ukphy*	at mii? phy ?			# generic unknown PHYs
953urlphy* at mii? phy ?			# Realtek RTL8150L internal PHYs
954
955
956# USB Controller and Devices
957
958# Virtual USB controller
959#pseudo-device	vhci
960
961# PCI USB controllers
962xhci*	at pci?	dev ? function ?	# eXtensible Host Controller
963ehci*	at pci?	dev ? function ?	# Enhanced Host Controller
964ohci*	at pci?	dev ? function ?	# Open Host Controller
965uhci*	at pci?	dev ? function ?	# Universal Host Controller (Intel)
966
967# CardBus USB controllers
968ehci*	at cardbus? function ?	# Enhanced Host Controller
969ohci*	at cardbus? function ?	# Open Host Controller
970uhci*	at cardbus? function ?		# Universal Host Controller (Intel)
971
972# ISA USB controllers
973#slhci0	at isa? port 0x300 irq 5	# ScanLogic SL811HS
974
975# PCMCIA USB controllers
976slhci*	at pcmcia? function ?		# ScanLogic SL811HS
977
978# USB bus support
979#usb*	at vhci?
980usb*	at xhci?
981usb*	at ehci?
982usb*	at ohci?
983usb*	at uhci?
984usb*	at slhci?
985
986include "dev/usb/usbdevices.config"
987
988# PCI IEEE1394 controllers
989fwohci* at pci? dev ? function ?	# IEEE1394 Open Host Controller
990
991# CardBus IEEE1394 controllers
992fwohci* at cardbus? function ?		# IEEE1394 Open Host Controller
993
994ieee1394if* at fwohci?
995fwip*	at ieee1394if?			# IP over IEEE1394
996sbp*	at ieee1394if? euihi ? euilo ?
997
998# Audio Devices
999
1000# PCI audio devices
1001auacer* at pci? dev ? function ?	# ALi M5455 integrated AC'97 Audio
1002auich*	at pci? dev ? function ?	# Intel/AMD/nVidia AC'97 Audio
1003auixp*	at pci? dev ? function ?	# ATI IXP AC'97 Audio
1004autri*	at pci? dev ? function ?	# Trident 4DWAVE based AC'97 Audio
1005auvia*	at pci? dev ? function ?	# VIA AC'97 audio
1006clcs*	at pci? dev ? function ?	# Cirrus Logic CS4280
1007clct*	at pci? dev ? function ?	# Cirrus Logic CS4281
1008cmpci*	at pci? dev ? function ?	# C-Media CMI8338/8738
1009eap*	at pci? dev ? function ?	# Ensoniq AudioPCI
1010emuxki* at pci? dev ? function ?	# Creative SBLive! and PCI512
1011esa*	at pci? dev ? function ?	# ESS Allegro-1 / Maestro-3 PCI Audio
1012esm*	at pci? dev ? function ?	# ESS Maestro-1/2/2e PCI Audio Accelerator
1013eso*	at pci? dev ? function ?	# ESS Solo-1 PCI AudioDrive
1014fms*	at pci? dev ? function ?	# Forte Media FM801
1015neo*	at pci? dev ? function ?	# NeoMagic 256 AC'97 Audio
1016sv*	at pci? dev ? function ?	# S3 SonicVibes
1017yds*	at pci? dev ? function ?	# Yamaha DS-1 PCI Audio
1018
1019# OPL[23] FM synthesizers
1020#opl0	at isa? port 0x388	# use only if not attached to sound card
1021opl*	at cmpci? flags 1
1022opl*	at eso?
1023opl*	at fms?
1024opl*	at sv?
1025
1026# High Definition Audio
1027hdaudio*	at pci? dev ? function ?	# High Definition Audio
1028hdafg*		at hdaudiobus?
1029
1030# Audio support
1031audio*	at audiobus?
1032
1033# The spkr driver provides a simple tone interface to the built in speaker.
1034spkr*	at pcppi?		# PC speaker
1035spkr*	at audio?		# PC speaker (synthesized)
1036#wsbell* at spkr?		# Bell for wscons display (module by default)
1037
1038# MPU 401 UARTs
1039#mpu*	at isa? port 0x330 irq 9	# MPU401 or compatible card
1040mpu*	at cmpci?
1041mpu*	at eso?
1042mpu*	at yds?
1043
1044# MIDI support
1045midi*	at midibus?
1046midi*	at pcppi?		# MIDI interface to the PC speaker
1047
1048# FM-Radio devices
1049# PCI radio devices
1050#gtp*	at pci? dev ? function ? # Guillemot Maxi Radio FM 2000 Radio Card
1051
1052# Radio support
1053#radio*	at gtp?
1054
1055
1056# Video capture devices
1057
1058coram*	at pci? dev ? function ?	# Conexant CX23885 PCI-E TV
1059cxdtv*	at pci? dev ? function ?	# Conexant CX2388[0-3] PCI TV
1060
1061video*	at videobus?			# Analog capture interface
1062dtv*	at dtvbus?			# Digital capture interface
1063
1064
1065# TV cards
1066
1067# Brooktree 848/849/878/879 based TV cards
1068bktr* at pci? dev ? function ?
1069radio* at bktr?
1070
1071
1072# Bluetooth Controller and Device support
1073
1074# Bluetooth PCMCIA Controllers
1075bt3c* at pcmcia? function ?		# 3Com 3CRWB6096-A
1076btbc* at pcmcia? function ?		# AnyCom BlueCard LSE041/039/139
1077
1078# Bluetooth SDIO Controllers
1079sbt* at sdmmc?
1080
1081# Bluetooth USB Controllers
1082ubt* at uhub? port ?
1083aubtfwl* at uhub? port ?
1084
1085# Bluetooth Device Hub
1086bthub* at bcsp?
1087bthub* at bt3c?
1088bthub* at btbc?
1089bthub* at btuart?
1090bthub* at sbt?
1091bthub* at ubt?
1092
1093# Bluetooth HID support
1094bthidev* at bthub?
1095
1096# Bluetooth Mouse
1097btms* at bthidev? reportid ?
1098wsmouse* at btms? mux 0
1099
1100# Bluetooth Keyboard
1101btkbd* at bthidev? reportid ?
1102wskbd* at btkbd? console ? mux 1
1103
1104# Bluetooth Apple Magic Mouse
1105btmagic* at bthub?
1106wsmouse* at btmagic? mux 0
1107
1108# Bluetooth Audio support
1109btsco* at bthub?
1110
1111
1112# SD/MMC/SDIO Controller and Device support
1113
1114# SD/MMC controller
1115sdhc*	at pci?		# SD Host Controller
1116rtsx*	at pci?		# Realtek RTS5209/RTS5229 Card Reader
1117sdhc*	at cardbus?	# SD Host Controller
1118sdmmc*	at sdhc?	# SD/MMC bus
1119sdmmc*	at rtsx?	# SD/MMC bus
1120
1121ld*	at sdmmc?
1122
1123
1124# Middle Digital, Inc. PCI-Weasel serial console board control
1125# devices (watchdog timer, etc.)
1126weasel* at pci?
1127
1128# Virtio devices
1129virtio* at pci? dev ? function ?	# Virtio PCI device
1130viomb*	at virtio?			# Virtio memory balloon device
1131ld*	at virtio?			# Virtio disk device
1132viocon* at virtio?			# Virtio serial device
1133vioif*	at virtio?			# Virtio network device
1134viornd* at virtio?			# Virtio entropy device
1135vioscsi* at virtio?			# Virtio SCSI device
1136#vio9p*	at virtio?			# Virtio 9P device
1137
1138# Hyper-V devices
1139vmbus*		at acpi?		# Hyper-V VMBus
1140genfb*		at vmbus?		# Hyper-V Synthetic Video Framebuffer
1141hvkbd*		at vmbus?		# Hyper-V Synthetic Keyboard
1142wskbd*		at hvkbd? console ? mux 1
1143hvn*		at vmbus?		# Hyper-V NetVSC
1144hvs*		at vmbus?		# Hyper-V StorVSC
1145hvheartbeat*	at vmbus?		# Hyper-V Heartbeat Service
1146hvshutdown*	at vmbus?		# Hyper-V Guest Shutdown Service
1147hvtimesync*	at vmbus?		# Hyper-V Time Synchronization Service
1148#hvkvp*		at vmbus?		# Hyper-V Data Exchange Service
1149
1150# Pseudo-Devices
1151
1152pseudo-device	crypto			# /dev/crypto device
1153pseudo-device	swcrypto		# software crypto implementation
1154
1155# disk/mass storage pseudo-devices
1156pseudo-device	bio			# RAID control device driver
1157pseudo-device	ccd			# concatenated/striped disk devices
1158pseudo-device	cgd			# cryptographic disk devices
1159pseudo-device	raid			# RAIDframe disk driver
1160options 	RAID_AUTOCONFIG		# auto-configuration of RAID components
1161# Options to enable various other RAIDframe RAID types.
1162#options 	RF_INCLUDE_EVENODD=1
1163#options 	RF_INCLUDE_RAID5_RS=1
1164#options 	RF_INCLUDE_PARITYLOGGING=1
1165#options 	RF_INCLUDE_CHAINDECLUSTER=1
1166#options 	RF_INCLUDE_INTERDECLUSTER=1
1167#options 	RF_INCLUDE_PARITY_DECLUSTERING=1
1168#options 	RF_INCLUDE_PARITY_DECLUSTERING_DS=1
1169pseudo-device	fss			# file system snapshot device
1170
1171pseudo-device	md			# memory disk device (ramdisk)
1172options 	MEMORY_DISK_HOOKS	# enable md specific hooks
1173options 	MEMORY_DISK_DYNAMIC	# enable dynamic resizing
1174
1175pseudo-device	vnd			# disk-like interface to files
1176options 	VND_COMPRESSION		# compressed vnd(4)
1177
1178
1179# network pseudo-devices
1180pseudo-device	bpfilter		# Berkeley packet filter
1181pseudo-device	carp			# Common Address Redundancy Protocol
1182pseudo-device	loop			# network loopback
1183#pseudo-device	mpls			# MPLS pseudo-interface
1184pseudo-device	ppp			# Point-to-Point Protocol
1185pseudo-device	pppoe			# PPP over Ethernet (RFC 2516)
1186pseudo-device	sl			# Serial Line IP
1187pseudo-device	irframetty		# IrDA frame line discipline
1188pseudo-device	tun			# network tunneling over tty
1189pseudo-device	tap			# virtual Ethernet
1190pseudo-device	gre			# generic L3 over IP tunnel
1191pseudo-device	gif			# IPv[46] over IPv[46] tunnel (RFC1933)
1192pseudo-device	ipsecif			# tunnel interface for routing based ipsec
1193#pseudo-device	faith			# IPv[46] tcp relay translation i/f
1194pseudo-device	stf			# 6to4 IPv6 over IPv4 encapsulation
1195pseudo-device	vlan			# IEEE 802.1q encapsulation
1196pseudo-device	bridge			# simple inter-network bridging
1197pseudo-device	vether			# Virtual Ethernet for bridge
1198pseudo-device	agr			# IEEE 802.3ad link aggregation
1199pseudo-device	l2tp			# L2TPv3 interface
1200pseudo-device	lagg			# Link aggregation interface
1201pseudo-device	npf			# NPF packet filter
1202
1203#pseudo-device	canloop			# CAN loopback interface
1204
1205#
1206# accept filters
1207pseudo-device	accf_data		# "dataready" accept filter
1208pseudo-device	accf_http		# "httpready" accept filter
1209
1210# miscellaneous pseudo-devices
1211pseudo-device	pty			# pseudo-terminals
1212pseudo-device	sequencer		# MIDI sequencer
1213# rnd works; RND_COM does not on port i386 yet.
1214#options 	RND_COM			# use "com" randomness as well (BROKEN)
1215pseudo-device	clockctl		# user control of clock subsystem
1216pseudo-device	ksyms			# /dev/ksyms
1217pseudo-device	lockstat		# lock profiling
1218pseudo-device	bcsp			# BlueCore Serial Protocol
1219pseudo-device	btuart			# Bluetooth HCI UART (H4)
1220#pseudo-device	nvmm			# NetBSD Virtual Machine Monitor
1221pseudo-device 	swwdog			# software watchdog timer -- swwdog(4)
1222
1223# wscons pseudo-devices
1224pseudo-device	wsmux			# mouse & keyboard multiplexor
1225pseudo-device	wsfont
1226# Give us a choice of fonts based on monitor size
1227options 	FONT_BOLD8x16
1228options 	FONT_BOLD16x32
1229
1230# pseudo audio device driver
1231pseudo-device	pad
1232
1233# userland interface to drivers, including autoconf and properties retrieval
1234pseudo-device	drvctl
1235
1236# EFI runtime support
1237options 	EFI_RUNTIME
1238pseudo-device 	efi			# /dev/efi
1239
1240include "dev/veriexec.config"
1241
1242options 	PAX_SEGVGUARD=0		# PaX Segmentation fault guard
1243options 	PAX_MPROTECT=1		# PaX mprotect(2) restrictions
1244options 	PAX_MPROTECT_DEBUG=1	# PaX mprotect debug
1245options 	PAX_ASLR=1		# PaX Address Space Layout Randomization
1246options 	PAX_ASLR_DEBUG=1	# PaX ASLR debug
1247
1248# Pull in optional local configuration - always at end
1249cinclude	"arch/amd64/conf/GENERIC.local"
1250