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