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