files revision 1.1240
11.1240Schristos#	$NetBSD: files,v 1.1240 2019/09/22 22:59:38 christos Exp $
21.60Scgd#	@(#)files.newconf	7.5 (Berkeley) 5/10/93
31.60Scgd
41.1184Schristosversion 	20171118
51.798Scube
61.565Sthorpej#
71.565Sthorpej# device classes
81.565Sthorpej#
91.565Sthorpejdevclass disk
101.565Sthorpejdevclass tape
111.565Sthorpejdevclass ifnet
121.565Sthorpejdevclass tty
131.876Sjmcneilldevclass audiodev
141.876Sjmcneilldevclass displaydev
151.876Sjmcneilldevclass bus
161.565Sthorpej
171.112Sthorpej# options understood by the machine-independent part of the kernel
181.112Sthorpej# (note, these are case-sensitive)
191.473Slukem#
201.1139Suebayasidefparam opt_param.h		MAXUSERS
211.474Slukemdefflag				INSECURE
221.474Slukemdefflag				KTRACE
231.781Skardeldefflag				MBUFTRACE
241.1166Spgoyettedefflag	opt_ptrace.h		PTRACE PTRACE_HOOKS
251.799Smattdefflag				COREDUMP
261.1099Sjnemethdefflag	opt_modular.h		MODULAR
271.1099Sjnemethdefflag	opt_modular.h		MODULAR_DEFAULT_AUTOLOAD
281.953Smbalmerdefflag				KEYLOCK
291.1136Suebayasidefparam opt_syslimits.h	CHILD_MAX OPEN_MAX
301.1144Suebayasidefflag opt_diagnostic.h	_DIAGNOSTIC
311.1193Smaxvdefflag				GPROF
321.1204Smaxvdefflag				KASAN
331.1237Smaxvdefflag opt_kasan.h		KASAN_PANIC
341.1217Smaxvdefflag				KLEAK
351.1230Skamildefflag				KCOV
361.1234Smaxvdefflag opt_pool.h		POOL_QUARANTINE
371.799Smatt
381.1140Suebayasidefparam opt_copy_symtab.h	makeoptions_COPY_SYMTAB
391.1140Suebayasi
401.781Skardeldefparam			DEFCORENAME
411.781Skardeldefparam			HZ
421.474Slukemdefparam			MAXUPRC
431.474Slukemdefparam			RTC_OFFSET
441.494Sjdolecekdefflag	opt_pipe.h		PIPE_SOCKETPAIR PIPE_NODIRECT
451.573Sjunyoung
461.926Saddefflag				AIO
471.926Saddefflag				MQUEUE
481.1168Spgoyettedefflag				SEMAPHORE
491.926Sad
501.733Syamtdefflag				BUFQ_DISKSORT
511.733Syamtdefflag				BUFQ_FCFS
521.698Syamtdefflag				BUFQ_PRIOCSCAN
531.698Syamtdefflag				BUFQ_READPRIO
541.698Syamtdefflag				NEW_BUFQ_STRATEGY	# same as BUFQ_READPRIO
551.524Sthorpej
561.845Syamtdefflag	opt_sched.h		SCHED_4BSD
571.868Srminddefflag	opt_sched.h		SCHED_M2
581.845Syamt
591.616Senamidefparam			SOMAXKVA
601.524Sthorpejdefflag	opt_sock_counters.h	SOSEND_COUNTERS
611.547Sthorpejdefflag	opt_sosend_loan.h	SOSEND_NO_LOAN
621.840Sdyoungdefflag	opt_route.h		RTCACHE_DEBUG RTFLUSH_DEBUG
631.247Sthorpej
641.474Slukemdefflag				MULTIPROCESSOR
651.1125Sozakidefflag				NET_MPSAFE
661.486Satatat
671.486Satatatdefflag	opt_config.h		INCLUDE_CONFIG_FILE INCLUDE_JUST_CONFIG
681.459Senami
691.597Satatatdefparam opt_dump.h		DUMP_ON_PANIC
701.597Satatat
711.474Slukemdefflag	opt_callout.h		CALLWHEEL_STATS
721.250Stron
731.891Smartindefflag				CPU_IN_CKSUM
741.891Smartin
751.976Sdarrandefflag opt_dtrace.h		KDTRACE_HOOKS
761.976Sdarran
771.474Slukemdefflag	opt_sysv.h		SYSVMSG SYSVSEM	SYSVSHM
781.1233Spgoyettedefparam opt_sysvparam.h	MSGMAX MSGMNI MSGMNB MSGTQL MSGSSZ MSGSEG
791.1233Spgoyettedefparam opt_sysvparam.h	SEMMAP SEMMNI SEMMNS SEMMNU SEMMSL SEMOPM
801.1233Spgoyettedefparam opt_sysvparam.h	SEMUME SEMUSZ SEMVMX SEMAEM
811.1233Spgoyettedefparam opt_sysvparam.h	SHMMAX SHMMIN SHMMNI SHMSEG SHMMAXPGS
821.181Sjonathan
831.1071Skardeldefflag	opt_ntp.h		PPS_SYNC PPS_DEBUG NTP
841.129Sthorpej
851.694Schristosdefflag	opt_ptm.h		NO_DEV_PTM COMPAT_BSDPTY
861.676Schristos
871.707Spetrovdefparam opt_kmempages.h	NKMEMPAGES NKMEMPAGES_MIN NKMEMPAGES_MAX
881.431Sfvdl
891.474Slukemdefflag	opt_revcache.h		NAMECACHE_ENTER_REVERSE
901.189Sscottr
911.1025Sjmcneilldefflag	opt_exec.h		DEBUG_EXEC
921.1025Sjmcneill
931.474Slukemdefflag	opt_execfmt.h		EXEC_AOUT EXEC_COFF EXEC_ECOFF EXEC_ELF32
941.1008Sjoerg				EXEC_ELF64 EXEC_SCRIPT
951.503Sjdolecek				EXEC_ELF_NOTELESS
961.199Sthorpej
971.686Sthorpejdefflag	opt_dkwedge.h		DKWEDGE_AUTODISCOVER
981.691Sthorpej				DKWEDGE_METHOD_BSDLABEL
991.688Sthorpej				DKWEDGE_METHOD_GPT
1001.693Sthorpej				DKWEDGE_METHOD_MBR
1011.1047Schristos				DKWEDGE_METHOD_APPLE
1021.1171Srin				DKWEDGE_METHOD_RDB
1031.686Sthorpej
1041.1181Ssevandefflag	opt_veriexec.h		VERIFIED_EXEC_FP_SHA256
1051.725Schristos				VERIFIED_EXEC_FP_SHA384
1061.725Schristos				VERIFIED_EXEC_FP_SHA512
1071.725Schristos
1081.794Sdsl# Per system call number counts and times
1091.794Sdsldefflag opt_syscall_stats.h	SYSCALL_STATS
1101.1076Sjakllschdefflag opt_syscall_stats.h	SYSCALL_TIMES: SYSCALL_STATS
1111.794Sdsl# Assume cpu_hascounter() returns true - to use disabled rdtsc() (for soekris)
1121.1076Sjakllschdefflag opt_syscall_stats.h	SYSCALL_TIMES_HASCOUNTER: SYSCALL_TIMES
1131.794Sdslfile kern/subr_syscall_stats.c	syscall_stats
1141.794Sdsl
1151.774Seladdefparam opt_pax.h		PAX_MPROTECT
1161.1154Schristos				PAX_MPROTECT_DEBUG
1171.817Selad				PAX_SEGVGUARD
1181.879Schristos 				PAX_ASLR
1191.879Schristos 				PAX_ASLR_DELTA_MMAP_LSB
1201.879Schristos 				PAX_ASLR_DELTA_MMAP_LEN
1211.879Schristos 				PAX_ASLR_DELTA_STACK_LSB
1221.879Schristos 				PAX_ASLR_DELTA_STACK_LEN
1231.879Schristos 				PAX_ASLR_DELTA_PROG_LEN
1241.983Schristos				PAX_ASLR_DEBUG
1251.774Selad
1261.789Seladdefflag	opt_fileassoc.h		FILEASSOC
1271.789Selad
1281.803Sdyoungdefflag	opt_gre.h		GRE_DEBUG
1291.803Sdyoung
1301.1170Sknakahardefparam opt_l2tp.h		L2TP_ID_HASH_SIZE
1311.1170Sknakahar
1321.911Ssimonb# Write Ahead Physical Block Logging
1331.911Ssimonbdefflag opt_wapbl.h		WAPBL WAPBL_DEBUG
1341.911Ssimonbdefparam opt_wapbl.h		WAPBL_DEBUG_PRINT
1351.911Ssimonb
1361.1096Stls# printf entropy source
1371.1096Stlsdefflag opt_rnd_printf.h	RND_PRINTF
1381.1096Stls
1391.1124Sjmcneilldefflag opt_todr.h		TODR_DEBUG
1401.1124Sjmcneill
1411.199Sthorpej# compatibility options
1421.473Slukem#
1431.926Saddefflag opt_compat_netbsd.h	COMPAT_NETBSD
1441.1240Schristosdefflag	opt_compat_netbsd.h	COMPAT_90: COMPAT_NETBSD
1451.1240Schristosdefflag	opt_compat_netbsd.h	COMPAT_80: COMPAT_90, COMPAT_NETBSD
1461.1192Smrgdefflag	opt_compat_netbsd.h	COMPAT_70: COMPAT_80, COMPAT_NETBSD
1471.1097Sapbdefflag	opt_compat_netbsd.h	COMPAT_60: COMPAT_70, COMPAT_NETBSD
1481.1059Sdrochnerdefflag	opt_compat_netbsd.h	COMPAT_50: COMPAT_60, COMPAT_NETBSD
1491.1044Srminddefflag	opt_compat_netbsd.h	COMPAT_40: COMPAT_50, COMPAT_NETBSD
1501.926Saddefflag	opt_compat_netbsd.h	COMPAT_30: COMPAT_40, COMPAT_NETBSD
1511.926Saddefflag	opt_compat_netbsd.h	COMPAT_20: COMPAT_30, COMPAT_NETBSD
1521.926Saddefflag	opt_compat_netbsd.h	COMPAT_16: COMPAT_20, COMPAT_NETBSD
1531.926Saddefflag	opt_compat_netbsd.h	COMPAT_15: COMPAT_16, COMPAT_NETBSD
1541.926Saddefflag	opt_compat_netbsd.h	COMPAT_14: COMPAT_15, COMPAT_NETBSD
1551.926Saddefflag	opt_compat_netbsd.h	COMPAT_13: COMPAT_14, COMPAT_NETBSD
1561.926Saddefflag	opt_compat_netbsd.h	COMPAT_12: COMPAT_13, COMPAT_NETBSD
1571.926Saddefflag	opt_compat_netbsd.h	COMPAT_11: COMPAT_12, COMPAT_NETBSD
1581.926Saddefflag	opt_compat_netbsd.h	COMPAT_10: COMPAT_11, COMPAT_NETBSD
1591.926Saddefflag	opt_compat_netbsd.h	COMPAT_09: COMPAT_10, COMPAT_NETBSD
1601.589Schristosdefflag				COMPAT_OSSAUDIO
1611.1227Spgoyettedefflag				COMPAT_43
1621.1226Spgoyettedefflag				COMPAT_FREEBSD: COMPAT_09, COMPAT_43
1631.1226Spgoyettedefflag				COMPAT_LINUX: COMPAT_NETBSD, COMPAT_43
1641.1229Smrgdefflag				COMPAT_SUNOS: COMPAT_09, COMPAT_43
1651.937Shedefflag				COMPAT_ULTRIX: COMPAT_50
1661.474Slukemdefflag				COMPAT_NETBSD32
1671.1222Spgoyettedefflag				COMPAT_SYSV
1681.1222Spgoyettedefflag				SYSV_IPC	: SYSVSHM, SYSVSEM, SYSVMSG
1691.1222Spgoyettedefflag				COMPAT_NETBSD32_SYSVIPC : SYSV_IPC,
1701.1222Spgoyette							  COMPAT_SYSV,
1711.1222Spgoyette							  COMPAT_NETBSD32
1721.1222Spgoyettedefflag				COMPAT_LINUX32 : COMPAT_LINUX, COMPAT_NETBSD32,
1731.1222Spgoyette						 COMPAT_50, COMPAT_SYSV,
1741.1222Spgoyette						 COMPAT_NETBSD32_SYSVIPC
1751.852Shedefflag				COMPAT_AOUT_M68K: COMPAT_40
1761.474Slukemdefflag				COMPAT_M68K4K
1771.474Slukemdefflag				COMPAT_VAX1K
1781.633Smattdefflag	opt_compat_netbsd.h	COMPAT_NOMID
1791.221Sjonathan
1801.1222Spgoyetteinclude	"compat/common/files.common"
1811.1222Spgoyette
1821.1109Suebayasidefine	machdep
1831.1109Suebayasidefflag	opt_machdep.h		MACHDEP
1841.1109Suebayasi
1851.473Slukem#
1861.570Sthorpej# Cryptography support.  Include this early, since several things
1871.570Sthorpej# use it.
1881.624Sjonathan
1891.624Sjonathan# Individual crypto transforms
1901.570Sthorpejinclude "crypto/arc4/files.arc4"
1911.570Sthorpejinclude "crypto/des/files.des"
1921.570Sthorpejinclude "crypto/blowfish/files.blowfish"
1931.570Sthorpejinclude "crypto/cast128/files.cast128"
1941.570Sthorpejinclude "crypto/rijndael/files.rijndael"
1951.644Stlsinclude "crypto/skipjack/files.skipjack"
1961.1011Sdrochnerinclude "crypto/camellia/files.camellia"
1971.626Sthorpej# General-purpose crypto processing framework.
1981.626Sthorpejinclude "opencrypto/files.opencrypto"
1991.626Sthorpej
2001.1238Sriastrad# NIST SP800-90A Hash_DRBG
2011.1238Sriastradinclude "crypto/nist_hash_drbg/files.nist_hash_drbg"
2021.1032Stls
2031.1096Stls# ChaCha-based fast PRNG
2041.1096Stlsinclude "crypto/cprng_fast/files.cprng_fast"
2051.1096Stls
2061.570Sthorpej#
2071.1014Smrg# Kernel history/tracing. Old UVMHIST depends upon this.
2081.1014Smrg#
2091.1014Smrgdefflag opt_kernhist.h			KERNHIST KERNHIST_PRINT
2101.1083Smattdefparam opt_kernhist.h			KERNHIST_DELAY
2111.1014Smrgfile	kern/kern_history.c		kernhist
2121.1014Smrg
2131.1014Smrg#
2141.1160Sskrll# These are here for the benefit of kern_history.c so that
2151.1160Sskrll# UVMHIST can be built in kernels without usb.
2161.1160Sskrll#
2171.1160Sskrll# top level usb debug defines
2181.1160Sskrlldefflag	opt_usb.h			USB_DEBUG: KERNHIST
2191.1160Sskrlldefparam opt_usb.h			USBHIST_SIZE
2201.1160Sskrll
2211.1160Sskrll#
2221.1168Spgoyette# Options for BIOHIST
2231.1168Spgoyette#
2241.1168Spgoyettedefflag opt_biohist.h           BIOHIST: KERNHIST
2251.1168Spgoyettedefflag opt_biohist.h           BIOHIST_PRINT: KERNHIST_PRINT
2261.1168Spgoyettedefparam opt_biohist.h          BIOHIST_SIZE
2271.1168Spgoyette
2281.1168Spgoyette#
2291.618Sthorpej# System monitoring framework
2301.618Sthorpej#
2311.618Sthorpejinclude "dev/sysmon/files.sysmon"
2321.618Sthorpej
2331.618Sthorpej#
2341.563Sthorpej# Networking protocols
2351.563Sthorpej#
2361.971Spooka
2371.971Spooka# Attribute used by various things that need BPF's virtual machine
2381.971Spooka#
2391.971Spookadefine	bpf_filter
2401.971Spookadefparam opt_bpf.h	BPF_BUFSIZE
2411.971Spooka
2421.1123Suebayasidefflag	opt_bpf.h	BPFJIT
2431.1060Salnsn
2441.1060Salnsnfile	net/bpfjit.c	sljit & bpfjit
2451.1060Salnsn
2461.743Sthorpejinclude "net80211/files.net80211"
2471.563Sthorpejinclude "netatalk/files.netatalk"
2481.782Sgdamoreinclude "netbt/files.netbt"
2491.1172Sbouyerinclude "netcan/files.netcan"
2501.565Sthorpejinclude "netinet/files.netinet"
2511.565Sthorpejinclude "netinet6/files.netinet6"
2521.632Sitojuninclude "netipsec/files.netipsec"
2531.991Skefreninclude "netmpls/files.netmpls"
2541.600Sjdolecekinclude "netsmb/files.netsmb"
2551.994Srmind
2561.994Srmindinclude "net/npf/files.npf"
2571.994Srmindinclude "netinet/files.ipfilter"
2581.677Sitojuninclude "net/files.pf"
2591.563Sthorpej
2601.795Smattobsolete defflag		CCITT		# obsolete
2611.795Smattobsolete defflag		HDLC		# obsolete
2621.795Smattobsolete defflag		LLC		# obsolete
2631.795Smattobsolete defflag opt_ns.h	NS NSIP		# obsolete
2641.795Smattobsolete defflag		IPX		# obsolete
2651.939Sjymobsolete defparam opt_md.h	MEMORY_RBFLAGS	# superseded by
2661.939Sjym						# MEMORY_DISK_RBFLAGS
2671.939Sjym
2681.603Sperseantdefflag	opt_bridge_ipf.h	BRIDGE_IPF	# bridge(4) use inet_pfil_hooks
2691.474Slukemdefflag	opt_ppp.h		PPP_DEFLATE PPP_BSDCOMP PPP_FILTER
2701.474Slukem						# Include deflate or bsd
2711.474Slukem						# compression, enable pppd
2721.474Slukem						# packet filtering support
2731.1162Schristosdefflag opt_pppoe.h		PPPOE_SERVER PPPOE_DEBUG
2741.189Sscottr
2751.189Sscottr# networking options
2761.473Slukem#
2771.474Slukemdefflag				GATEWAY
2781.748Syamtdefparam opt_nmbclusters.h	NMBCLUSTERS
2791.474Slukemdefparam			SB_MAX
2801.171Smrg
2811.189Sscottr# file system options
2821.473Slukem#
2831.1004Sbouyerdefflag	opt_quota.h		QUOTA QUOTA2		# XXX files.ufs?
2841.685Sthorpejdefflag				VNODE_LOCKDEBUG
2851.759Schsdefflag				MAGICLINKS
2861.353Soster
2871.276Sscottr# buffer cache size options
2881.473Slukem#
2891.474Slukemdefparam opt_bufcache.h		BUFCACHE BUFPAGES
2901.276Sscottr
2911.449Sgmcgarry# userconf
2921.473Slukem#
2931.474Slukemdefflag				USERCONF
2941.449Sgmcgarry
2951.663Satatat# sysctl related
2961.663Satatat#
2971.663Satatatdefflag opt_sysctl.h		SYSCTL_DISALLOW_CREATE SYSCTL_DISALLOW_KWRITE
2981.663Satatat				SYSCTL_DEBUG_SETUP SYSCTL_DEBUG_CREATE
2991.665Satatat				SYSCTL_INCLUDE_DESCR
3001.663Satatat
3011.473Slukem#
3021.289Slukem# Not entirely MI, but present on multiple arch's
3031.473Slukem#
3041.289Slukem
3051.276Sscottr# PC-style MBR handling
3061.473Slukem#
3071.474Slukemdefflag	opt_mbr.h		COMPAT_386BSD_MBRPART
3081.209Sjonathan
3091.745Sthorpej#
3101.209Sjonathan# debugging options
3111.473Slukem#
3121.745Sthorpejinclude "ddb/files.ddb"		# in-kernel dynamic debugger
3131.745Sthorpej
3141.474Slukemdefflag	opt_kgdb.h		KGDB
3151.613Smartindefparam opt_kgdb.h		KGDB_DEV KGDB_DEVNAME KGDB_DEVPORT
3161.474Slukem				KGDB_DEVADDR KGDB_DEVRATE KGDB_DEVMODE
3171.474Slukemdefflag				LOCKDEBUG
3181.474Slukemdefflag				SYSCALL_DEBUG
3191.540Syamtdefflag	opt_kstack.h		KSTACK_CHECK_MAGIC
3201.1236Sozakidefflag				PSREF_DEBUG
3211.271Sjonathan
3221.271Sjonathan# memory (ram) disk options
3231.473Slukem#
3241.474Slukemdefflag	opt_md.h		MEMORY_DISK_HOOKS MEMORY_DISK_IS_ROOT
3251.474Slukem				MEMORY_DISK_DYNAMIC
3261.851Sdsldefparam opt_md.h		MEMORY_DISK_SERVER=1 MEMORY_DISK_ROOT_SIZE
3271.939Sjym				MEMORY_DISK_RBFLAGS
3281.1143Suebayasidefparam opt_memory_disk_image.h	makeoptions_MEMORY_DISK_IMAGE
3291.159Sdrochner
3301.842Smanudefflag opt_tftproot.h		TFTPROOT TFTPROOT_DEBUG
3311.842Smanu
3321.936Schristosdefflag	opt_wlan.h		WLAN
3331.936Schristos
3341.819Swiz# Machine-independent device majors assignements
3351.640Sjdolecekinclude "conf/majors"
3361.543Sbriggs
3371.60Scgd# generic attributes
3381.473Slukem#
3391.915Sjmcneilldefine	videobus	{ }
3401.638Sbouyerdefine	ata	        {[channel = -1]}
3411.674Sthorpejdefine	sata
3421.947Sjakllschdefine	sata_fis
3431.1054Sbouyerdefine	sata_pmp
3441.558Sthorpejdefine	scsi_core
3451.558Sthorpejdefine	scsi		{[channel = -1]}: scsi_core
3461.638Sbouyerdefine	ata_hl		{[drive = -1]}
3471.637Sbouyerdefine	atapi		{ }
3481.489Sdrochnerdefine	radiodev	{ }
3491.614Sgmcgarrydefine	gpibdev		{[address = -1]}
3501.734Sjmcneilldefine	gpiobus		{ }
3511.769Srizdefine	onewirebus	{ }
3521.659Sbjh21define 	pckbport	{[slot = -1]}
3531.659Sbjh21define	pckbport_machdep_cnattach
3541.754Sthorpejdefine	firmload
3551.1220Smlelstvdefine	ipmibus		{ }
3561.67Scgd
3571.1167Schristos# speaker devices, attaches to audio or pcppi drivers
3581.1176Snatdevice	spkr: wsbelldev
3591.1177Spgoyettefile	dev/spkr.c			spkr
3601.1167Schristos
3611.1114Suebayasiinclude "dev/files.audio"
3621.650Sbjh21
3631.1129Sjmcneill# High definition audio
3641.1129Sjmcneillinclude "dev/hdaudio/files.hdaudio"
3651.1129Sjmcneill
3661.1105Schristos# Base verbose vendor/product printing support
3671.1105Schristosfile	dev/dev_verbose.c
3681.1105Schristos
3691.915Sjmcneill# video devices, attaches to video hardware driver
3701.915Sjmcneill#
3711.915Sjmcneilldevice	video
3721.915Sjmcneillattach	video at videobus
3731.915Sjmcneill
3741.1024Sjmcneill# DTV subsystem
3751.1024Sjmcneill#
3761.1024Sjmcneillinclude "dev/dtv/files.dtv"
3771.1024Sjmcneill
3781.1130Sjmcneill# HDMI CEC
3791.1130Sjmcneill#
3801.1130Sjmcneillinclude "dev/hdmicec/files.hdmicec"
3811.1130Sjmcneill
3821.922Spgoyette# National Semiconductor LM7[89]
3831.922Spgoyette#
3841.922Spgoyette# (included here so files.i2c can define an attachment)
3851.922Spgoyette
3861.922Spgoyettedevice	lm: sysmon_envsys
3871.922Spgoyettefile	dev/ic/nslm7x.c			lm			needs-flag
3881.922Spgoyette
3891.984Spgoyette# JEDEC standard SPD EPROM
3901.984Spgoyette#
3911.984Spgoyette# (included here so files.i2c can define an attachment)
3921.984Spgoyette
3931.984Spgoyettedevice	spdmem
3941.984Spgoyettefile	dev/ic/spdmem.c			spdmem
3951.984Spgoyette
3961.1231Stnn# SSD1306 or SH1106 OLED/PLED display (attaches via I2C or SPI)
3971.1231Stnndevice	ssdfb:	wsemuldisplaydev
3981.1231Stnnfile	dev/ic/ssdfb.c	ssdfb
3991.1231Stnn
4001.1186Sbouyer# Generic HID support (used by USB, bluetooth and i2c)
4011.1186Sbouyerinclude "dev/hid/files.hid"
4021.1186Sbouyer
4031.635Sthorpej# I2C device support
4041.635Sthorpejinclude "dev/i2c/files.i2c"
4051.635Sthorpej
4061.1199Sjmcneill# PWM device support
4071.1199Sjmcneillinclude "dev/pwm/files.pwm"
4081.1199Sjmcneill
4091.813Sgdamore# SPI device support
4101.813Sgdamoreinclude "dev/spi/files.spi"
4111.813Sgdamore
4121.559Sthorpej# IR device support
4131.559Sthorpejinclude	"dev/ir/files.ir"
4141.559Sthorpej
4151.651Sjdolecek# Parallel Port Bus support
4161.651Sjdolecekinclude "dev/ppbus/files.ppbus"
4171.651Sjdolecek
4181.363Sthorpej# raster operations attributes
4191.473Slukem#
4201.426Slukemdefine	rasops1
4211.426Slukemdefine	rasops2
4221.426Slukemdefine	rasops4
4231.426Slukemdefine	rasops8
4241.426Slukemdefine	rasops15
4251.426Slukemdefine	rasops16
4261.426Slukemdefine	rasops24
4271.426Slukemdefine	rasops32
4281.829Soberdefine	rasops_rotation
4291.60Scgd
4301.997Sjmcneill# image decoding support
4311.997Sjmcneillinclude "dev/stbi/files.stbi"
4321.997Sjmcneill
4331.760Sjmcneill# splash screen support
4341.760Sjmcneillinclude "dev/splash/files.splash"
4351.760Sjmcneill
4361.768Sgdamore# videomode support
4371.768Sgdamoreinclude "dev/videomode/files.videomode"
4381.768Sgdamore
4391.67Scgd# net device attributes - we have generic code for arc(net), ether(net),
4401.1206Smaxv# fddi, and token ring.
4411.473Slukem#
4421.874Scubedefine	arcnet
4431.60Scgddefine	ether
4441.67Scgddefine	fddi
4451.185Skmldefine	hippi
4461.399Sonoedefine	ieee1394
4471.282Sbaddefine	token
4481.284Sexplorerdefine	sppp
4491.1032Stlsdefine	wlan
4501.294Sitojundefine	crypto
4511.100Sws
4521.1039Schristos# TPM
4531.1039Schristosdevice	tpm
4541.1039Schristosfile	dev/ic/tpm.c			tpm			needs-flag
4551.1039Schristos
4561.119Sis# devices ARPing IPv4 pull this in:
4571.473Slukem#
4581.119Sisdefine	arp
4591.119Sis
4601.515Sthorpej#
4611.515Sthorpej# ALTQ network traffic shaping subsystem
4621.515Sthorpej#
4631.515Sthorpejinclude "altq/files.altq"
4641.515Sthorpej
4651.404Sad# Logical disk
4661.473Slukem#
4671.404Saddevice	ld: disk
4681.426Slukemfile	dev/ld.c			ld			needs-flag
4691.513Sthorpej
4701.513Sthorpej#
4711.513Sthorpej# MII/PHY support for network devices
4721.513Sthorpej#
4731.513Sthorpejinclude "dev/mii/files.mii"
4741.375Sthorpej
4751.473Slukem#
4761.512Sthorpej# RAIDframe
4771.512Sthorpej#
4781.512Sthorpejinclude "dev/raidframe/files.raidframe"
4791.639Sgrog
4801.639Sgrog#
4811.542Sthorpej# Hardware-assisted data mover API
4821.542Sthorpej#
4831.542Sthorpejinclude "dev/dmover/files.dmover"
4841.512Sthorpej
4851.512Sthorpej#
4861.83Sthorpej# "Chipset" drivers.  These are the bus-independent routines which
4871.83Sthorpej# contain the cfdrivers.  Attachments are provided by files.<bus>
4881.473Slukem#
4891.145Schristos
4901.145Schristos# Adaptec AIC-6[32]60 ICs
4911.473Slukem#
4921.173Sthorpejdevice	aic: scsi
4931.145Schristosfile	dev/ic/aic6360.c		aic
4941.346Sthorpej
4951.346Sthorpej# SMC 93Cx6 Serial EEPROM devices
4961.473Slukem#
4971.346Sthorpejdefine	smc93cx6
4981.346Sthorpejfile	dev/ic/smc93cx6.c		smc93cx6
4991.83Sthorpej
5001.86Smycroft# Adaptec 2[789]4X, 394X, aic7770 and aic78[5678]0 SCSI controllers
5011.473Slukem#
5021.474Slukemdefparam opt_ahc.h		AHC_DEBUG
5031.474Slukemdefflag	opt_ahc.h		AHC_NO_TAGS
5041.173Sthorpejdevice	ahc: scsi
5051.345Sthorpejdefine	ahc_seeprom
5061.354Sfvdldefine	ahc_aic77xx
5071.142Senamifile	dev/ic/aic7xxx.c		ahc
5081.609Sfvdlfile	dev/ic/aic7xxx_osm.c		ahc
5091.345Sthorpejfile	dev/ic/aic7xxx_seeprom.c	ahc_seeprom
5101.354Sfvdlfile	dev/ic/aic77xx.c		ahc_aic77xx
5111.609Sfvdl
5121.609Sfvdl# Adaptec aic79xx SCSI controllers
5131.609Sfvdldefflag	opt_ahd.h		AHD_DEBUG
5141.609Sfvdldevice	ahd: scsi
5151.609Sfvdlfile	dev/ic/aic79xx.c		ahd
5161.609Sfvdlfile	dev/ic/aic79xx_osm.c		ahd
5171.318Sad
5181.318Sad# DPT EATA SCSI controllers
5191.473Slukem#
5201.318Saddevice	dpt: scsi
5211.318Sadfile	dev/ic/dpt.c			dpt
5221.355Sad
5231.355Sad# Compaq Smart ARRAY controllers
5241.473Slukem#
5251.355Saddevice	cac {unit = -1}
5261.355Sadfile	dev/ic/cac.c			cac
5271.355Sad
5281.404Sadattach	ld at cac with ld_cac
5291.404Sadfile	dev/ic/ld_cac.c			ld_cac
5301.419Sad
5311.764She# HP/Compaq Command Interface for SCSI-3 Support
5321.764She#
5331.1194Sjoergdefflag	opt_ciss.h			CISS_NO_INTERRUPT_HACK
5341.764Shedevice ciss: scsi
5351.764Shefile	dev/ic/ciss.c			ciss
5361.764She
5371.419Sad# Mylex DAC960 RAID controllers
5381.473Slukem#
5391.419Saddevice	mlx {unit = -1}
5401.419Sadfile	dev/ic/mlx.c			mlx			needs-flag
5411.419Sad
5421.419Sadattach	ld at mlx with ld_mlx
5431.419Sadfile	dev/ic/ld_mlx.c			ld_mlx
5441.521Sad
5451.521Sad# ICP-Vortex/Intel RAID controllers
5461.521Sad#
5471.521Saddevice	icp {unit = -1}
5481.521Sadfile	dev/ic/icp.c			icp			needs-flag
5491.611Sthorpejfile	dev/ic/icp_ioctl.c		icp
5501.521Sad
5511.521Sadattach	ld at icp with ld_icp
5521.521Sadfile	dev/ic/ld_icp.c			ld_icp
5531.521Sad
5541.521Saddevice	icpsp: scsi
5551.521Sadfile	dev/ic/icpsp.c			icpsp
5561.521Sadattach	icpsp at icp
5571.523Sad
5581.523Sad# Adaptec FSA RAID controllers
5591.523Sad#
5601.523Saddevice	aac {unit = -1}
5611.523Sadfile	dev/ic/aac.c			aac
5621.523Sad
5631.523Sadattach	ld at aac with ld_aac
5641.523Sadfile	dev/ic/ld_aac.c			ld_aac
5651.238Sdante
5661.238Sdante# AdvanSys 1200A, 1200B and ULTRA SCSI controllers
5671.473Slukem#
5681.238Sdantedevice	adv: scsi
5691.238Sdantefile	dev/ic/adv.c			adv
5701.428Sthorpejfile	dev/ic/advlib.c			adv
5711.428Sthorpejfile	dev/ic/advmcode.c		adv
5721.248Sdante
5731.248Sdante# AdvanSys ULTRA WIDE SCSI controllers
5741.473Slukem#
5751.248Sdantedevice	adw: scsi
5761.248Sdantefile	dev/ic/adw.c			adw
5771.194Sjonathan
5781.130Sjonathan# BusLogic MultiMaster and MultiMaster Ultra SCSI controllers
5791.130Sjonathan# (Must be declared before AHA to ensure bha probes before aha.
5801.130Sjonathan#  Probing AHA first configures bhas as aha, via their AHA
5811.130Sjonathan#  hardware-compatibility mode.)
5821.473Slukem#
5831.173Sthorpejdevice	bha: scsi
5841.142Senamifile	dev/ic/bha.c			bha
5851.130Sjonathan
5861.113Smycroft# Adaptec AHA-154x and AHA-164x controllers
5871.130Sjonathan# (must be after bha, see above)
5881.473Slukem#
5891.173Sthorpejdevice	aha: scsi
5901.142Senamifile	dev/ic/aha.c			aha
5911.445Stsutsui
5921.445Stsutsui# Initio INIC-940/950 SCSI controllers
5931.473Slukem#
5941.445Stsutsuidevice	iha: scsi
5951.445Stsutsuifile	dev/ic/iha.c			iha
5961.118Scgd
5971.118Scgd# Qlogic ISP 10x0 SCSI Controllers
5981.473Slukem#
5991.474Slukemdefflag	opt_isp.h		ISP_DISABLE_1020_SUPPORT
6001.474Slukem				ISP_DISABLE_1080_SUPPORT
6011.474Slukem				ISP_DISABLE_2100_SUPPORT
6021.474Slukem				ISP_DISABLE_2200_SUPPORT
6031.846Smjacob				ISP_DISABLE_2300_SUPPORT
6041.894Smjacob				ISP_DISABLE_2322_SUPPORT
6051.846Smjacob				ISP_DISABLE_2400_SUPPORT
6061.846Smjacob				ISP_DISABLE_FW
6071.846Smjacob				ISP_TARGET_MODE
6081.474Slukemdefparam opt_isp.h		ISP_LOGDEFAULT
6091.894Smjacob				ISP_VPORTS
6101.173Sthorpejdevice	isp: scsi
6111.142Senamifile	dev/ic/isp.c			isp
6121.846Smjacobfile	dev/ic/isp_library.c		isp
6131.223Smjacobfile	dev/ic/isp_netbsd.c		isp
6141.711Sdrochnerfile	dev/ic/isp_target.c		isp & isp_target_mode
6151.821Sbouyer# LSILogic MegaRAID SAS
6161.821Sbouyer#
6171.821Sbouyerdevice	mfi: scsi
6181.821Sbouyerfile	dev/ic/mfi.c			mfi
6191.821Sbouyer
6201.528Smatt# LSILogic Fusion-MPT I/O Processor SCSI/FC Controllers
6211.528Smatt#
6221.608Sthorpejdevice	mpt: scsi
6231.608Sthorpejfile	dev/ic/mpt.c			mpt
6241.608Sthorpejfile	dev/ic/mpt_debug.c		mpt
6251.608Sthorpejfile	dev/ic/mpt_netbsd.c		mpt
6261.605Stsutsui
6271.682Sitohy# Workbit NinjaSCSI-32 controllers
6281.682Sitohydevice	njs: scsi
6291.682Sitohyfile	dev/ic/ninjascsi32.c		njs
6301.682Sitohy
6311.605Stsutsui# Symbios/NCR 53c700 SCSI controllers
6321.605Stsutsuidevice	oosiop: scsi
6331.605Stsutsuifile	dev/ic/oosiop.c			oosiop
6341.436Stsutsui
6351.436Stsutsui# Symbios/NCR 53c710 SCSI controllers
6361.473Slukem#
6371.436Stsutsuidevice	osiop: scsi
6381.436Stsutsuifile	dev/ic/osiop.c			osiop
6391.364Sbouyer
6401.368Sbouyer# common stuff for siop and esiop
6411.473Slukem#
6421.426Slukemdefine	siop_common
6431.426Slukemfile	dev/ic/siop_common.c		siop_common
6441.368Sbouyer
6451.364Sbouyer# Symbios/NCR 53c720/53c8xx SCSI controllers
6461.473Slukem#
6471.426Slukemdevice	siop: scsi,siop_common
6481.898Sskrllfile	dev/ic/siop.c			siop & (siop_pci | siop_gedoens)
6491.517Sbouyerdefflag	opt_siop.h			SIOP_SYMLED
6501.518Sbouyer
6511.518Sbouyerdevice	esiop: scsi,siop_common
6521.518Sbouyerfile	dev/ic/esiop.c			esiop
6531.94Smycroft
6541.94Smycroft# UltraStor SCSI controllers
6551.473Slukem#
6561.173Sthorpejdevice	uha: scsi
6571.142Senamifile	dev/ic/uha.c			uha
6581.409Sonoe
6591.878Sgarbled# 3Com common probe code
6601.878Sgarbleddefine  elink
6611.878Sgarbledfile    dev/isa/elink.c                 elink
6621.878Sgarbled
6631.409Sonoe# Aironet PC4500/PC4800
6641.473Slukem#
6651.653Stsarnadevice	an: arp, wlan, ifnet
6661.409Sonoefile	dev/ic/an.c			an
6671.86Smycroft
6681.376Sonoe# AMD 79c930-based 802.11 cards
6691.473Slukem#
6701.376Sonoedevice	awi: arp, wlan, ifnet
6711.376Sonoefile	dev/ic/awi.c			awi
6721.376Sonoefile	dev/ic/am79c930.c		awi
6731.438Sichiro
6741.438Sichiro# Lucent & Intersil WaveLan IEEE (802.11)
6751.473Slukem#
6761.656Sjunyoungdevice	wi: arp, wlan, ifnet
6771.438Sichirofile	dev/ic/wi.c			wi
6781.617Sdyoung
6791.930Salc# Atheros HAL
6801.930Salc#
6811.930Salcinclude "external/isc/atheros_hal/conf/files.ath_hal"
6821.930Salc
6831.641Sdyoung# Atheros 5210/5211/5212 multi-mode 802.11
6841.641Sdyoung#
6851.656Sjunyoungdevice	ath: arp, wlan, ifnet
6861.1066Schristosfile	dev/ic/ath.c			ath
6871.1066Schristosfile	dev/ic/ath_netbsd.c		ath
6881.1066Schristosfile	dev/ic/athrate-sample.c		ath
6891.641Sdyoung
6901.617Sdyoung# ADMtek ADM8211 802.11
6911.617Sdyoung#
6921.656Sjunyoungdevice	atw: arp, wlan, ifnet, smc93cx6
6931.617Sdyoungfile	dev/ic/atw.c			atw
6941.376Sonoe
6951.687Sdyoung# Realtek RTL8180 802.11
6961.687Sdyoung#
6971.687Sdyoungdevice rtw: arp, wlan, ifnet, smc93cx6
6981.687Sdyoungfile	dev/ic/rtw.c			rtw
6991.687Sdyoungfile	dev/ic/rtwphy.c			rtw
7001.687Sdyoungfile	dev/ic/rtwphyio.c		rtw
7011.687Sdyoung
7021.1157Schristos# Ralink RT2500/RT2600/RT2860 802.11
7031.779Smartindevice	ral: arp, ether, ifnet, wlan, firmload
7041.778Sdogcowfile	dev/ic/rt2560.c			ral
7051.778Sdogcowfile	dev/ic/rt2661.c			ral
7061.1157Schristosfile	dev/ic/rt2860.c			ral
7071.722Sdrochner
7081.1053Sdegroote# Marvell Libertas Open
7091.1053Sdegrootedevice  malo: arp, ether, ifnet, wlan, firmload
7101.1053Sdegrootefile    dev/ic/malo.c           malo
7111.1053Sdegroote
7121.83Sthorpej# 3Com Etherlink-III Ethernet controller
7131.473Slukem#
7141.333Sthorpejdevice	ep: arp, ether, ifnet, mii, mii_bitbang
7151.142Senamifile	dev/ic/elink3.c			ep
7161.253Sfvdl
7171.253Sfvdl# 3Com EtherLink XL Controller
7181.473Slukem#
7191.331Sthorpejdevice	ex: arp, ether, ifnet, mii, mii_bitbang
7201.253Sfvdlfile	dev/ic/elinkxl.c		ex
7211.131Smatt
7221.131Smatt# DEC EtherWORKS III (LEMAC) Ethernet controllers
7231.473Slukem#
7241.173Sthorpejdevice	lc: arp, ether, ifnet
7251.142Senamifile	dev/ic/lemac.c			lc
7261.84Smycroft
7271.84Smycroft# LANCE and PCnet Ethernet controllers
7281.473Slukem#
7291.173Sthorpejdevice	le: arp, ether, ifnet
7301.426Slukemdefine	le24
7311.426Slukemdefine	le32
7321.227Sexplorerfile	dev/ic/am7990.c			le24
7331.225Sdrochnerfile	dev/ic/am79900.c		le32
7341.225Sdrochnerfile	dev/ic/lance.c			le24 | le32
7351.383Sthorpej
7361.383Sthorpej# DEC DEPCA-family of LANCE Ethernet controllers
7371.473Slukem#
7381.383Sthorpejdevice	depca { }: le24
7391.383Sthorpejfile	dev/ic/depca.c			depca
7401.383Sthorpejattach	le at depca with le_depca
7411.122Sscottr
7421.290Smrg# Sun HME Ethernet controllers
7431.473Slukem#
7441.293Spkdevice	hme: arp, ether, ifnet, mii
7451.293Spkfile	dev/ic/hme.c			hme
7461.461Seeh
7471.461Seeh# Sun GEM Ethernet controllers
7481.473Slukem#
7491.461Seehdevice	gem: arp, ether, ifnet, mii
7501.461Seehfile	dev/ic/gem.c			gem
7511.290Smrg
7521.1103Smartin# Synopsis Designware GMAC core, as found on allwinner a20
7531.1103Smartin# and other SoCs
7541.1103Smartindevice	awge: arp, ether, ifnet, mii
7551.1103Smartinfile	dev/ic/dwc_gmac.c		awge
7561.1103Smartin
7571.122Sscottr# 8390-family Ethernet controllers
7581.473Slukem#
7591.122Sscottrdefine	dp8390nic
7601.1202Smartinfile	dev/ic/dp8390.c			dp8390nic
7611.485Sbjh21
7621.485Sbjh21# National Semiconductor DP83905 AT/LANTIC Ethernet media support
7631.485Sbjh21#
7641.485Sbjh21define	dp83905
7651.485Sbjh21file	dev/ic/dp83905.c		dp83905
7661.484Sbjh21
7671.484Sbjh21# Macronix MX98905 Ethernet controller
7681.484Sbjh21# (use as an attribute for an "ne" bus attachment)
7691.484Sbjh21#
7701.484Sbjh21define	mx98905
7711.484Sbjh21file	dev/ic/mx98905.c		mx98905
7721.77Scgd
7731.282Sbad# TROPIC Token-Ring controller
7741.473Slukem#
7751.282Sbaddevice	tr: arp, token, ifnet
7761.282Sbadfile	dev/ic/tropic.c			tr
7771.282Sbad
7781.91Scgd# NCR 5380 SCSI Bus Controller
7791.473Slukem#
7801.91Scgddefine	ncr5380sbc
7811.142Senamifile	dev/ic/ncr5380sbc.c		ncr5380sbc
7821.356Spkdevice	nca: scsi, ncr5380sbc
7831.91Scgd
7841.434Sfredette# Sun sc PAL SCSI Bus Controller
7851.473Slukem#
7861.434Sfredettedefine	sunscpal
7871.434Sfredettefile	dev/ic/sunscpal.c		sunscpal
7881.434Sfredettedevice	ssc: scsi, sunscpal
7891.434Sfredette
7901.91Scgd# DEC FDDI Chipset
7911.473Slukem#
7921.91Scgddefine	pdq
7931.142Senamifile	dev/ic/pdq.c			pdq
7941.142Senamifile	dev/ic/pdq_ifsubr.c		pdq
7951.98Schristos
7961.474Slukem# Cyclades Cyclom-8/16/32
7971.473Slukem#
7981.173Sthorpejdevice	cy: tty
7991.142Senamifile	dev/ic/cy.c			cy			needs-flag
8001.103Sthorpej
8011.117Sthorpej# NCR 53x9x or Emulex ESP SCSI Controller
8021.473Slukem#
8031.117Sthorpejdefine	ncr53c9x
8041.359Smycroftdevice	esp: scsi, ncr53c9x
8051.142Senamifile	dev/ic/ncr53c9x.c		ncr53c9x
8061.227Sexplorer
8071.679Smycroft# Fujitsu MB87030/MB89352 SCSI Protocol Controller
8081.679Smycroftdevice	spc: scsi
8091.679Smycroftfile	dev/ic/mb89352.c		spc
8101.679Smycroft
8111.796Sbjh21# Western Digital WD33C93/WD33C93A SCSI Bus Interface Controller
8121.796Sbjh21define	wd33c93
8131.796Sbjh21file	dev/ic/wd33c93.c		wd33c93
8141.796Sbjh21
8151.590Ssoren# Hitachi HD44780 LCD panel controller
8161.590Ssorendefine	hd44780
8171.590Ssorenfile	dev/ic/hd44780_subr.c		hd44780
8181.590Ssorenfile	dev/ic/lcdkp_subr.c		hd44780
8191.590Ssoren
8201.710Sjoff# Matrix keypad
8211.710Sjoffdefine	matrixkp
8221.710Sjofffile	dev/ic/matrixkp_subr.c		matrixkp
8231.710Sjoff
8241.227Sexplorer# Hitachi HD64570 serial controller
8251.473Slukem#
8261.359Smycroftdefine	hd64570
8271.227Sexplorerfile	dev/ic/hd64570.c		hd64570
8281.339Schopps
8291.339Schopps# Riscom/N2 ISA/PCI Sync Serial Controller
8301.473Slukem#
8311.339Schoppsdevice	ntwoc: ifnet, hd64570
8321.128Spk
8331.128Spk# Intel 82586 Ethernet Controller
8341.473Slukem#
8351.128Spkdefine	i82586
8361.142Senamifile	dev/ic/i82586.c			i82586
8371.291Sthorpej
8381.658Sjkunz# Intel 82596 Ethernet Controller
8391.658Sjkunz#
8401.658Sjkunzdefine	i82596
8411.658Sjkunzfile	dev/ic/i82596.c			i82596
8421.658Sjkunz
8431.291Sthorpej# Intel 82557/82558/82559 Ethernet Controller
8441.473Slukem#
8451.291Sthorpejdevice	fxp: ether, ifnet, arp, mii
8461.291Sthorpejfile	dev/ic/i82557.c			fxp
8471.389Sbjh21
8481.389Sbjh21# SEEQ 8005 Advanced Ethernet Data Link Controller
8491.473Slukem#
8501.389Sbjh21define	seeq8005
8511.389Sbjh21file	dev/ic/seeq8005.c		seeq8005
8521.137Sthorpej
8531.137Sthorpej# SMC 91Cxx Ethernet Controller
8541.473Slukem#
8551.379Sbriggsdevice	sm: arp, ether, ifnet, mii, mii_bitbang
8561.142Senamifile	dev/ic/smc91cxx.c		sm
8571.188Sthorpej
8581.188Sthorpej# SMC 83C170 EPIC/100 Fast Ethernet Controller
8591.473Slukem#
8601.230Sthorpejdevice	epic: arp, ether, ifnet, mii
8611.188Sthorpejfile	dev/ic/smc83c170.c		epic
8621.309Sragge
8631.309Sragge# DEC SGEC Second Generation Ethernet Controller
8641.473Slukem#
8651.309Sraggedefine	sgec
8661.309Sraggefile	dev/ic/sgec.c			sgec
8671.177Senami
8681.715Sjdolecek# MB86950 Ethernet Controller
8691.715Sjdolecek#
8701.715Sjdolecekdefine	mb86950
8711.715Sjdolecekfile	dev/ic/mb86950.c		mb86950
8721.715Sjdolecek
8731.177Senami# MB8696x Ethernet Controller
8741.473Slukem#
8751.177Senamidefine	mb86960
8761.177Senamifile	dev/ic/mb86960.c		mb86960
8771.177Senami
8781.177Senami# Generic MB8696x Ethernet Controller driver
8791.473Slukem#
8801.177Senamidevice	mbe: arp, ether, ifnet, mb86960
8811.146Saugustss
8821.146Saugustss# Interwave Am78C201 audio driver
8831.473Slukem#
8841.146Saugustssdefine	interwave
8851.146Saugustssfile	dev/ic/interwave.c		interwave
8861.154Sis
8871.154Sis# TMS 320av110 MPEG2/audio driver
8881.473Slukem#
8891.154Sisdefine	tms320av110
8901.154Sisfile	dev/ic/tms320av110.c		tms320av110
8911.152Sthorpej
8921.152Sthorpej# Novell NE2000-compatible Ethernet cards, based on the
8931.152Sthorpej# National Semiconductor DS8390.
8941.473Slukem#
8951.423Sthorpejdevice	ne: ether, ifnet, arp, dp8390nic, mii
8961.1202Smartinfile	dev/ic/ne2000.c			ne
8971.153Sthorpej
8981.153Sthorpej# 8250/16[45]50-based "com" ports
8991.668Sthorpej#
9001.749Schsdefflag	opt_com.h		COM_DEBUG
9011.153Sthorpej# XXX In a perfect world, this would be done with attributes
9021.1078Skiyoharadefflag	opt_com.h		COM_16650 COM_16750
9031.1218Sthorpej				COM_HAYESP COM_PXA2X0
9041.1016Smattdefparam opt_com.h		COM_TOLERANCE
9051.392Seehdevice	com { } : tty
9061.426Slukemfile	dev/ic/com.c			com			needs-flag
9071.336Sthorpej
9081.336Sthorpej# PC-like keyboard controller
9091.473Slukem#
9101.659Sbjh21device	pckbc: pckbport
9111.660Sbjh21file	dev/ic/pckbc.c			pckbc			needs-flag
9121.274Sscw
9131.714Scubedevice	attimer
9141.714Scubefile	dev/ic/attimer.c		attimer			needs-flag
9151.714Scube
9161.274Sscw# Cirrus Logic CD240[01] 4-port Multi-Protocol Communications Controller
9171.473Slukem#
9181.274Sscwdevice	clmpcc: tty
9191.426Slukemfile	dev/ic/clmpcc.c			clmpcc			needs-flag
9201.385Sbjh21
9211.843Sxtraeme# Abit uGuru
9221.843Sxtraeme#
9231.843Sxtraemedevice	ug: sysmon_envsys
9241.843Sxtraemefile	dev/ic/ug.c			ug			needs-flag
9251.843Sxtraeme
9261.185Skml# Essential Communications Corp. HIPPI Interface
9271.473Slukem#
9281.426Slukemdevice	esh: hippi, ifnet
9291.426Slukemfile	dev/ic/rrunner.c		esh			needs-flag
9301.242Sis
9311.242Sis# SMC 90c26, SMC 90C56 (and 90C66 if in compat mode) chip driver
9321.473Slukem#
9331.874Scubedevice	bah: ifnet, arcnet, arp
9341.426Slukemfile	dev/ic/smc90cx6.c		bah
9351.234Saugustss
9361.234Saugustss# OPL2/OPL3 FM synth driver
9371.473Slukem#
9381.235Saugustssdevice	opl: midibus, midisyn
9391.234Saugustssfile	dev/ic/opl.c			opl
9401.234Saugustssfile	dev/ic/oplinstrs.c		opl
9411.305Saugustss
9421.305Saugustss# MPU401 MIDI UART compatibles
9431.473Slukem#
9441.305Saugustssdevice	mpu: midibus
9451.426Slukemfile	dev/ic/mpu.c			mpu			needs-flag
9461.236Spk
9471.236Spk# AD1848 (CS4248, CS4231, AD1845) audio codec support; used by other drivers
9481.473Slukem#
9491.236Spkdefine	ad1848
9501.236Spkfile	dev/ic/ad1848.c			ad1848
9511.290Smrg
9521.290Smrg# AMD 7930 audio/ISDN codec
9531.473Slukem#
9541.366Saugustssdefine	am7930
9551.366Saugustssfile	dev/ic/am7930.c			am7930
9561.290Smrg
9571.1100Stsutsui# Siemens PSB2160 audio codec, as found in HP systems
9581.1100Stsutsuidevice	arcofi: audiobus, auconv, mulaw
9591.1100Stsutsuifile	dev/ic/arcofi.c			arcofi
9601.1100Stsutsui
9611.290Smrg# SPARC `SUNW,audiocs'
9621.473Slukem#
9631.519Saugustssdevice	audiocs: audiobus, auconv, ad1848
9641.290Smrgfile	dev/ic/cs4231.c			audiocs
9651.326Saugustss
9661.326Saugustss# AC-97 CODECs
9671.473Slukem#
9681.326Saugustssdefine	ac97
9691.326Saugustssfile	dev/ic/ac97.c			ac97
9701.437Sminoura
9711.1040Snisimura# UDA1341 CODEC support
9721.1040Snisimuradefine	uda1341
9731.1040Snisimurafile	dev/ic/uda1341.c		uda1341
9741.1040Snisimura
9751.437Sminoura# Oki MSM6258 support code
9761.473Slukem#
9771.437Sminouradefine msm6258
9781.437Sminourafile	dev/ic/msm6258.c		msm6258
9791.240Spk
9801.240Spk# LSI64854 DMA controller back-end
9811.473Slukem#
9821.240Spkdefine	lsi64854
9831.240Spkfile	dev/ic/lsi64854.c		lsi64854
9841.465Smrg
9851.465Smrg# Cirrus Logic CL-CD180/1864/1865 multi port serial controller back-end
9861.473Slukem#
9871.465Smrgdefine	cd18xx
9881.465Smrgfile	dev/ic/cd18xx.c			cd18xx
9891.240Spk
9901.654Swiz# Realtek 8019/8029 NE2000-compatible network interface subroutines
9911.473Slukem#
9921.252Sthorpejdefine	rtl80x9
9931.980Stsutsuifile	dev/ic/rtl80x9.c		rtl80x9			needs-flag
9941.360Shaya
9951.654Swiz# Realtek 8129/8139 Ethernet controllers
9961.473Slukem#
9971.362Shayadevice	rtk: ether, ifnet, arp, mii
9981.675Ssekiyafile	dev/ic/rtl81x9.c		rtk | re
9991.185Skml
10001.673Stoshii# Realtek 8169 Ethernet controllers
10011.673Stoshii#
10021.673Stoshiidevice	re: ether, ifnet, arp, mii
10031.709Syamtfile	dev/ic/rtl8169.c		re
10041.673Stoshii
10051.1200Sjakllsch# Virtual I/O Device (VIRTIO) bus controller and devices
10061.1200Sjakllsch#
10071.1200Sjakllschinclude "dev/virtio/files.virtio"
10081.1200Sjakllsch
10091.258Spk# Common code for ESDI/IDE/etc. controllers
10101.473Slukem#
10111.680Sthorpejdefine	wdc_common
10121.809Sitohydefine	ata_dma
10131.809Sitohydefine	ata_udma
10141.809Sitohydefine	ata_piobm
10151.680Sthorpejdevice	wdc: ata, wdc_common
10161.637Sbouyer
10171.1079Sjmcneilldefflag opt_ata.h	ATADEBUG
10181.1079Sjmcneilldefparam opt_ata.h	ATADEBUG_MASK
10191.1079Sjmcneilldefflag opt_wdc.h	WDC_NO_IDS
10201.835Sdyoung
10211.656Sjunyoungdevice	atabus: atapi,ata_hl
10221.656Sjunyoungattach	atabus at ata
10231.809Sitohy# The strange expression is to dump ata_* definitions to ata_dma.h.
10241.809Sitohyfile	dev/ic/wdc.c			(ata_dma | ata_udma | ata_piobm | atabus) & atabus & wdc_common	needs-flag
10251.386Sbjh21
10261.810Sitohy# Workbit NinjaATA-32 IDE controllers
10271.810Sitohydevice	njata: ata, ata_piobm, wdc_common
10281.810Sitohyfile	dev/ic/ninjaata32.c		njata
10291.810Sitohy
10301.386Sbjh21# CHIPS and Technologies 82C7[12][01] Universal Peripheral Controller
10311.473Slukem#
10321.386Sbjh21device	upc { [offset = -1] }
10331.386Sbjh21attach	wdc at upc with wdc_upc
10341.386Sbjh21attach	com at upc with com_upc
10351.651Sjdolecekattach	lpt at upc with lpt_upc
10361.426Slukemfile	dev/ic/upc.c			upc
10371.426Slukemfile	dev/ic/wdc_upc.c		wdc_upc
10381.426Slukemfile	dev/ic/com_upc.c		com_upc
10391.651Sjdolecekfile	dev/ic/lpt_upc.c		lpt_upc
10401.327Smatt
10411.844Sbouyer# AHCI-compatible SATA controllers
10421.844Sbouyerdefine ahcisata_core
10431.844Sbouyerfile dev/ic/ahcisata_core.c ahcisata_core
10441.1054Sbouyerdevice ahcisata: ata, ata_dma, ata_udma, sata, sata_fis, sata_pmp, ahcisata_core
10451.844Sbouyer
10461.956Sjakllsch# Silicon Image SteelVine SATA-II controllers
10471.956Sjakllschdefine	siisata
10481.956Sjakllschfile	dev/ic/siisata.c		siisata
10491.1054Sbouyerdevice	siisata: ata, ata_dma, ata_udma, sata, sata_fis, sata_pmp, siisata
10501.956Sjakllsch
10511.957Sjakllsch# Marvell Serial-ATA Host Controller
10521.951Skiyoharadefine mvsata
10531.951Skiyoharafile dev/ic/mvsata.c			mvsata
10541.1182Skredevice mvsata: ata, ata_dma, ata_udma, wdc_common, sata, sata_fis, sata_pmp, mvsata
10551.951Skiyoharadefflag opt_mvsata.h		MVSATA_WITHOUTDMA
10561.951Skiyohara
10571.314Sthorpej# DECchip 21x4x Ethernet controller family, and assorted clones.
10581.473Slukem#
10591.333Sthorpejdevice	tlp: arp, ether, ifnet, mii, mii_bitbang
10601.314Sthorpejfile	dev/ic/tulip.c			tlp
10611.322Sthorpej
10621.322Sthorpej# Adaptec AIC-6915 Ethernet interface
10631.473Slukem#
10641.322Sthorpejdevice	sf: arp, ether, ifnet, mii
10651.322Sthorpejfile	dev/ic/aic6915.c		sf
10661.378Spk
10671.378Spk# Mostek time-of-day clock and NVRAM
10681.473Slukem#
10691.378Spkdefine	mk48txx
10701.507Spkfile	dev/ic/mk48txx.c		mk48txx
10711.378Spk
10721.1061Srkujawa# OKI MSM6242B
10731.1061Srkujawa#
10741.1061Srkujawadefine	msm6242b
10751.1061Srkujawafile	dev/ic/msm6242b.c		msm6242b
10761.1061Srkujawa
10771.378Spk# Intersil 7170 time-of-day clock
10781.473Slukem#
10791.378Spkdefine	intersil7170
10801.378Spkfile	dev/ic/intersil7170.c		intersil7170
10811.434Sfredette
10821.434Sfredette# National Semiconductor MM58167 time-of-day clock
10831.473Slukem#
10841.434Sfredettedefine	mm58167
10851.434Sfredettefile	dev/ic/mm58167.c		mm58167
10861.643Stsutsui
10871.643Stsutsui# Motorola mc146818 (and compatible) time-of-day clock
10881.643Stsutsui#
10891.643Stsutsuidefine	mc146818
10901.643Stsutsuifile	dev/ic/mc146818.c		mc146818
10911.422Sthorpej
10921.808Suwe# Ricoh RS5C313 time of-day-clock
10931.808Suwe#
10941.808Suwedefine	rs5c313
10951.808Suwefile	dev/ic/rs5c313.c		rs5c313
10961.808Suwe
10971.422Sthorpej# D-Link DL10019/10022 NE2000-compatible network interface subroutines
10981.473Slukem#
10991.422Sthorpejdefine	dl10019
11001.422Sthorpejfile	dev/ic/dl10019.c		dl10019
11011.453Senami
11021.453Senami# ASIX AX88190 NE2000-compatible network interface subroutines
11031.473Slukem#
11041.453Senamidefine	ax88190
11051.453Senamifile	dev/ic/ax88190.c		ax88190
11061.429Sjdolecek
11071.429Sjdolecek# WD/SMC 80x3 family, SMC Elite Ultra [8216], SMC EtherEZ
11081.473Slukem#
11091.429Sjdolecekdevice	we: ether, ifnet, arp, dp8390nic
11101.429Sjdolecekfile	dev/ic/we.c			we
11111.432Sjdolecek
11121.432Sjdolecek# Allied-Telesis Ethernet driver based on Fujitsu MB8696xA controllers
11131.473Slukem#
11141.432Sjdolecekdevice	ate: arp, ether, ifnet, mb86960
11151.557Stsutsui
11161.557Stsutsui# Fujitsu FMV-18x Ethernet driver based on Fujitsu MB8696xA controllers
11171.557Stsutsui#
11181.557Stsutsuidevice	fmv: arp, ether, ifnet, mb86960
11191.557Stsutsuifile	dev/ic/fmv.c			fmv
11201.471Syamt
11211.471Syamt# Crystal Semiconductor CS8900, CS8920, and CS8920M Ethernet
11221.473Slukem#
11231.471Syamtdevice	cs: arp, ether, ifnet
11241.704Sjoffdevice	tscs: arp, ether, ifnet
11251.704Sjofffile	dev/ic/cs89x0.c			cs | tscs
11261.487Saugustss
11271.487Saugustss# Radio device attributes
11281.487Saugustss#
11291.487Saugustssdefine	tea5757
11301.656Sjunyoungfile	dev/ic/tea5757.c		tea5757
11311.487Saugustssdefine	lm700x
11321.656Sjunyoungfile	dev/ic/lm700x.c			lm700x
11331.179Sdrochner
11341.837Stnn# Philips PCF8584 i2c controller
11351.837Stnndefine	pcf8584
11361.837Stnnfile	dev/ic/pcf8584.c		pcf8584
11371.837Stnn
11381.985Snonaka# PCA9564 i2c controller
11391.985Snonakadefine	pca9564
11401.985Snonakafile	dev/ic/pca9564.c		pca9564
11411.985Snonaka
11421.1187Sbouyer# Synopsys DesignWare I2C controller
11431.1187Sbouyerdefine	dwiic
11441.1187Sbouyerdevice dwiic: dwiic, i2cbus
11451.1187Sbouyerfile	dev/ic/dwiic.c			dwiic
11461.1187Sbouyer
11471.784Sdrochner# ACPI power management timer (hardware access, independent of ACPI)
11481.784Sdrochner#
11491.784Sdrochnerdefine acpipmtimer
11501.784Sdrochnerfile	dev/ic/acpipmtimer.c	acpipmtimer
11511.784Sdrochner
11521.834Snjolydevice 	hpet
11531.834Snjolyfile 	dev/ic/hpet.c		hpet			needs-flag
11541.834Snjoly
11551.952Skiyohara# SMSC LAN9118 Family Ethernet Controller
11561.952Skiyohara#
11571.965Skiyoharadevice	smsh: arp, ether, ifnet, mii
11581.952Skiyoharafile	dev/ic/lan9118.c		smsh
11591.952Skiyohara
11601.1088Sriastrad# Apple System Management Controller
11611.1088Sriastrad#
11621.1089Sriastraddefine	applesmcbus	{ }
11631.1090Sriastraddevice	applesmc: applesmcbus
11641.1088Sriastradfile	dev/ic/apple_smc.c		applesmc
11651.1088Sriastrad
11661.1088Sriastrad# Apple SMC fan sensors and control
11671.1090Sriastraddevice	applesmcfan: applesmcbus, sysmon_envsys
11681.1090Sriastradattach	applesmcfan at applesmcbus with apple_smc_fan
11691.1088Sriastradfile	dev/ic/apple_smc_fan.c		applesmcfan
11701.1088Sriastrad
11711.1088Sriastrad# Apple SMC temperature sensors
11721.1090Sriastraddevice	applesmctemp: applesmcbus, sysmon_envsys
11731.1090Sriastradattach	applesmctemp at applesmcbus with apple_smc_temp
11741.1088Sriastradfile	dev/ic/apple_smc_temp.c		applesmctemp
11751.1088Sriastrad
11761.1089Sriastrad# Apple SMC accelerometer (not yet implemented!)
11771.1090Sriastrad#device	applesmcaccel: applesmcbus, sysmon_envsys
11781.1090Sriastrad#attach	applesmcaccel at applesmcbus with apple_smc_accel
11791.1088Sriastrad#file	dev/ic/apple_smc_accel.c	applesmcaccel
11801.1088Sriastrad
11811.836Sdrochner# DRM - Direct Rendering Infrastructure: dev/drm
11821.836Sdrochnerdefine drm {}
11831.949Smrginclude "external/bsd/drm/conf/files.drm"
11841.1002Sjmcneillinclude "dev/drm/files.drm"
11851.836Sdrochner
11861.1153Sskrll# Linux API support
11871.1153Sskrllinclude "external/bsd/common/conf/files.linux"
11881.1153Sskrll
11891.1086Sriastrad# DRM/KMS - Newer direct rendering manager with kernel mode-switching
11901.1086Sriastradinclude "external/bsd/drm2/drm/files.drmkms"
11911.1086Sriastrad
11921.1039Schristos
11931.179Sdrochner# Definitions for wscons
11941.179Sdrochner# device attributes: display, display with emulator, keyboard, and mouse
11951.473Slukem#
11961.479Saugustssdefine	wsdisplaydev		{[kbdmux = 1]}
11971.479Saugustssdefine	wsemuldisplaydev	{[console = -1], [kbdmux = 1]}
11981.479Saugustssdefine	wskbddev		{[console = -1], [mux = 1]}
11991.479Saugustssdefine	wsmousedev		{[mux = 0]}
12001.1176Snatdefine	wsbelldev		{[console = -1], [mux = 1]}
12011.761Smacallandefine	vcons
12021.179Sdrochner# attribute to pull in raster support
12031.473Slukem#
12041.179Sdrochnerdefine	wsrasteremulops
12051.187Sdrochner# common PC display functions
12061.473Slukem#
12071.474Slukemdefflag	opt_pcdisplay.h		PCDISPLAY_SOFTCURSOR
12081.426Slukemdefine	pcdisplayops
12091.187Sdrochnerfile	dev/ic/pcdisplay_subr.c	pcdisplayops
12101.207Sdrochnerfile	dev/ic/pcdisplay_chars.c	pcdisplayops
12111.777Smartin# an attribute used by arch specific config files to include /dev/fb* (or
12121.777Smartin# equivalent) support - on most archs this is just a NOP (untill, maybe
12131.777Smartin# someday when we might make /dev/fb* support MI)
12141.777Smartindefine	fb
12151.179Sdrochner# VGA graphics
12161.473Slukem#
12171.541Sdrochnerdefparam opt_vga.h		VGA_CONSOLE_SCREENTYPE
12181.538Sdrochnerdefflag opt_vga.h 		VGA_CONSOLE_ATI_BROKEN_FONTSEL
12191.572Sjunyoungdefflag opt_vga.h		VGA_RASTERCONSOLE
12201.593Stsutsuidefflag opt_vga.h		VGA_RESET
12211.876Sjmcneilldevice	vga: displaydev, wsemuldisplaydev, pcdisplayops, drm
12221.572Sjunyoungfile	dev/ic/vga.c		vga & !vga_rasterconsole	needs-flag
12231.572Sjunyoungfile	dev/ic/vga_raster.c	vga_rasterconsole		needs-flag
12241.572Sjunyoungfile	dev/ic/vga_subr.c	vga | vga_rasterconsole
12251.572Sjunyoungfile	dev/ic/vga_common.c	vga | vga_rasterconsole
12261.998Smacallan
12271.508Suwe# Integraphics Systems IGA168x and CyberPro framebuffers (linear non-VGA mode)
12281.473Slukem#
12291.1042Smacallandevice	igsfb: wsemuldisplaydev, rasops8, vcons, videomode
12301.615Suwefile	dev/ic/igsfb.c			igsfb			needs-flag
12311.551Suwefile	dev/ic/igsfb_subr.c		igsfb
12321.91Scgd
12331.1169Smacallandevice	chipsfb: wsemuldisplaydev, rasops8, vcons, videomode, glyphcache
12341.998Smacallanfile	dev/ic/ct65550.c		chipsfb
12351.998Smacallandefflag	opt_chipsfb.h	CHIPSFB_DEBUG
12361.998Smacallandefflag	opt_chipsfb.h	CHIPSFB_WAIT
12371.998Smacallan
12381.683Sjkunz# STI (hp graphics)
12391.683Sjkunzdevice	sti: wsemuldisplaydev
12401.1005Stsutsuifile	dev/ic/sti.c		sti
12411.683Sjkunz
12421.892Sdrochnerinclude "dev/wscons/files.wscons"
12431.892Sdrochnerinclude "dev/rasops/files.rasops"
12441.892Sdrochnerinclude "dev/wsfont/files.wsfont"
12451.892Sdrochnerinclude "dev/wsfb/files.wsfb"
12461.892Sdrochner
12471.77Scgd# Attributes which machine-independent bus support can be attached to.
12481.77Scgd# These should be defined here, because some of these busses can have
12491.77Scgd# devices which provide these attributes, and we'd like to avoid hairy
12501.77Scgd# ordering constraints on inclusion of the busses' "files" files.
12511.473Slukem#
12521.474Slukemdefine	isabus	{ }			# ISA attachment
12531.474Slukemdefine	eisabus	{ }			# EISA attachment
12541.474Slukemdefine	pcibus	{[bus = -1]}		# PCI attachment
12551.474Slukemdefine	mcabus	{ }			# MicroChannel attachment
12561.474Slukemdefine	usbus	{ }			# USB attachment
12571.724Skiyoharadefine	fwbus	{ }			# IEEE 1394 attachment
12581.474Slukemdefine	vmebus	{ }			# VME bus attachment
12591.474Slukemdefine	acpibus	{ }			# ACPI "bus" attachment
12601.259Spkdefine	pcmciabus { [controller = -1], [socket = -1]}	# PCMCIA bus attachment
12611.909Sdrochnerdefine	cbbus	{ }			# CardBus attachment
12621.909Sdrochnerdefine	pcmciaslot { }			# PCMCIA slot itself
12631.945Snonakadefine	sdmmcbus { }			# SD/MMC attachment
12641.222Saugustss
12651.222Saugustss# We need the USB bus controllers here so different busses can
12661.222Saugustss# use them in an 'attach-with'.
12671.473Slukem#
12681.703Sfvdl
12691.890Sdrochnerdefine	usbroothub
12701.1155Sskrllfile	dev/usb/usbroothub.c	usbroothub
12711.890Sdrochner
12721.1005Stsutsuidefine	usb_dma
12731.1005Stsutsui
12741.1075Sjakllsch# UHCI USB controller
12751.1075Sjakllsch#
12761.1005Stsutsuidevice	uhci: usbus, usbroothub, usb_dma
12771.426Slukemfile	dev/usb/uhci.c			uhci			needs-flag
12781.222Saugustss
12791.222Saugustss# OHCI USB controller
12801.473Slukem#
12811.1005Stsutsuidevice	ohci: usbus, usbroothub, usb_dma
12821.426Slukemfile	dev/usb/ohci.c			ohci			needs-flag
12831.412Saugustss
12841.1057Smatt# EHCI USB2 controller
12851.473Slukem#
12861.1005Stsutsuidevice	ehci: usbus, usbroothub, usb_dma
12871.426Slukemfile	dev/usb/ehci.c			ehci			needs-flag
12881.545Sisaki
12891.1075Sjakllsch# xHCI USB3 controller
12901.1057Smatt#
12911.1057Smattdevice	xhci: usbus, usbroothub, usb_dma
12921.1057Smattfile	dev/usb/xhci.c			xhci			needs-flag
12931.1057Smatt
12941.1239Smaxv# vHCI USB controller
12951.1239Smaxv#
12961.1239Smaxvdefpseudodev vhci: usbus, usbroothub
12971.1239Smaxvfile	dev/usb/vhci.c			vhci			needs-flag
12981.1239Smaxv
12991.1094Sbouyer# Mentor graphics OTG IP
13001.1155Sskrlldevice	motg: usbus, usbroothub
13011.1094Sbouyerfile	dev/usb/motg.c			motg			needs-flag
13021.1094Sbouyer
13031.545Sisaki# SL811HS/T USB controller
13041.1156Sskrlldefflag	opt_slhci.h	SLHCI_TRY_LSVH SLHCI_PROFILE_TRANSFER
13051.893Sisakidevice	slhci: usbus, usbroothub
13061.545Sisakifile	dev/ic/sl811hs.c		slhci			needs-flag
13071.579Smartin
13081.1062Sskrll# DesignWare OTG host controller
13091.1062Sskrll#
13101.1080Sskrllinclude "external/bsd/dwc2/conf/files.dwc2"
13111.1080Sskrll
13121.945Snonaka# SD Host controller
13131.1087Snonakadevice	sdhc: sdmmcbus
13141.945Snonakafile	dev/sdmmc/sdhc.c		sdhc			needs-flag
13151.945Snonaka
13161.958Sjmcneill# Winbond Integrated Media Reader
13171.958Sjmcneilldevice	wb: sdmmcbus
13181.958Sjmcneillfile	dev/ic/w83l518d.c		wb
13191.958Sjmcneillfile	dev/ic/w83l518d_sdmmc.c		wb
13201.958Sjmcneill
13211.1087Snonaka# Realtek RTS5209/RTS5229 Card Reader
13221.1087Snonakadevice	rtsx: sdmmcbus
13231.1087Snonakafile	dev/ic/rtsx.c			rtsx
13241.1087Snonaka
13251.1122Sjmcneill# DesignWare SD/MMC host controller
13261.1122Sjmcneilldefflag	opt_dwc_mmc.h	DWC_MMC_DEBUG
13271.1122Sjmcneilldevice	dwcmmc: sdmmcbus
13281.1122Sjmcneillfile	dev/ic/dwc_mmc.c		dwcmmc
13291.1122Sjmcneill
13301.1175Sjmcneill# ARM PrimeCell PL031 (RTC) real time clock
13311.1175Sjmcneilldevice	plrtc
13321.1175Sjmcneillfile	dev/ic/pl031.c			plrtc
13331.1175Sjmcneill
13341.1174Sjmcneill# ARM PrimeCell PL041 (AACI) Advanced Audio CODEC interface
13351.1174Sjmcneilldevice	aaci: audiobus, auconv, aurateconv, mulaw, ac97
13361.1174Sjmcneillfile	dev/ic/pl041.c			aaci
13371.1174Sjmcneill
13381.1173Sjmcneill# ARM PrimeCell PL050 (KMI) PS2 keyboard/mouse interface
13391.1173Sjmcneilldevice	plkmi: pckbport
13401.1173Sjmcneillfile	dev/ic/pl050.c			plkmi
13411.1173Sjmcneill
13421.1214Sjmcneill# ARM PrimeCell PL061 (GPIO) general purpose input/output
13431.1214Sjmcneilldevice	plgpio: gpiobus
13441.1214Sjmcneillfile	dev/ic/pl061.c			plgpio
13451.1214Sjmcneill
13461.1127Sskrll# ARM PrimeCell PL181 (MMCI) host controller
13471.1127Sskrlldevice	plmmc: sdmmcbus
13481.1127Sskrllfile	dev/ic/pl181.c			plmmc
13491.1127Sskrll
13501.579Smartin# Myson MTD803 3-in-1 Fast Ethernet Controller
13511.579Smartindevice	mtd: arp, ether, ifnet, mii
13521.579Smartinfile	dev/ic/mtd803.c			mtd
13531.369Smatt
13541.487Saugustss# radio devices, attaches to radio hardware driver
13551.487Saugustssdevice	radio
13561.489Sdrochnerattach	radio at radiodev
13571.498Sjmc
13581.402Smatt# IEEE 1394 controllers
13591.402Smatt# (These need to be here since it will have both PCI and CardBus attachments)
13601.473Slukem#
13611.369Smattdevice	fwohci: fwbus
13621.520Saugustss
13631.520Saugustss# Sony Programmable I/O Controller
13641.520Saugustssdevice	spic: wsmousedev
13651.520Saugustssfile	dev/ic/spic.c			spic
13661.529Saugustss
13671.529Saugustss# IBM CPC700 PowerPC bridge
13681.529Saugustssdefine	cpcbus { addr, [irq=-1] }
13691.529Saugustssdevice	cpc: cpcbus, pcibus
13701.529Saugustssfile	dev/ic/cpc700.c			cpc
13711.529Saugustss
13721.529Saugustssattach	com at cpcbus with com_cpcbus
13731.529Saugustssfile	dev/ic/com_cpcbus.c		com_cpcbus
13741.529Saugustss
13751.529Saugustssdevice	cpctim
13761.529Saugustssattach	cpctim at cpcbus
13771.529Saugustssfile	dev/ic/timer_cpcbus.c		cpctim
13781.529Saugustss
13791.530Saugustssdevice	cpciic
13801.530Saugustssattach	cpciic at cpcbus with iic_cpcbus
13811.529Saugustssfile	dev/ic/iic_cpcbus.c		iic_cpcbus
13821.529Saugustss
13831.60Scgd
13841.934Smacallan# Broadcom AirForce / Apple Airport Extreme
13851.934Smacallandevice	bwi: arp, ifnet, firmload, wlan
13861.934Smacallanfile	dev/ic/bwi.c			bwi
13871.934Smacallan
13881.995Sahoka# DM9000 Ethernet controllers
13891.995Sahoka#
13901.995Sahokadevice	dme: arp, ether, ifnet
13911.995Sahokafile	dev/ic/dm9000.c			dme
13921.995Sahoka
13931.1158Snonaka# NVM Express Controller
13941.1158Snonaka#
13951.1158Snonakadevice	nvme {nsid = -1}
13961.1158Snonakafile	dev/ic/nvme.c			nvme
13971.1158Snonaka
13981.1158Snonakaattach	ld at nvme with ld_nvme
13991.1158Snonakafile	dev/ic/ld_nvme.c		ld_nvme
14001.1158Snonaka
14011.1183Sjmcneill# Broadcom FullMAC 802.11 driver
14021.1183Sjmcneilldevice	bwfm: arp, ifnet, wlan
14031.1183Sjmcneillfile	dev/ic/bwfm.c			bwfm
14041.1183Sjmcneill
14051.1185Sjmcneill# QEMU Firmware Configuration (fw_cfg) device
14061.1185Sjmcneilldevice	qemufwcfg
14071.1185Sjmcneillfile	dev/ic/qemufwcfg.c		qemufwcfg
14081.1185Sjmcneill
14091.1215Sjakllsch# AMD Cryptographic Coprocessor
14101.1215Sjakllschdevice	amdccp
14111.1215Sjakllschfile	dev/ic/amdccp.c			amdccp
14121.1215Sjakllsch
14131.60Scgd# legitimate pseudo-devices
14141.473Slukem#
14151.907Sdrochnerdefpseudodev vnd:	disk
14161.726Shubertfdefflag opt_vnd.h	VND_COMPRESSION
14171.474Slukemdefpseudo ccd:		disk
14181.1032Stlsdefpseudodev cgd:	disk, des, blowfish, cast128
14191.907Sdrochnerdefpseudodev md:	disk
14201.916Shannkendefpseudodev fss:	disk
14211.298Sthorpej
14221.474Slukemdefpseudo pty:		tty
14231.298Sthorpejdefpseudo rnd
14241.610Sraggedefpseudo ksyms
14251.642Scdidefpseudo nullcons
14261.807Saddefpseudo lockstat
14271.839Sbouyerdefpseudo bio:		sysmon_envsys
14281.298Sthorpej
14291.474Slukemdefpseudo loop:		ifnet
14301.474Slukemdefpseudo sl:		ifnet
14311.474Slukemdefpseudo ppp:		ifnet, bpf_filter
14321.474Slukemdefpseudo pppoe:	ifnet, ether, sppp
14331.474Slukemdefpseudo tun:		ifnet
14341.474Slukemdefpseudo vlan:		ifnet, ether
14351.474Slukemdefpseudo bridge:	ifnet, ether
14361.474Slukemdefpseudo bpfilter:	ifnet, bpf_filter
14371.474Slukemdefpseudo strip:	ifnet
14381.474Slukemdefpseudo gre:		ifnet
14391.474Slukemdefpseudo gif:		ifnet
14401.474Slukemdefpseudo faith:	ifnet
14411.1161Schristosdefpseudo mpls:		ifnet
14421.826Smousedefpseudo srt:		ifnet
14431.474Slukemdefpseudo stf:		ifnet
14441.969Spookadefpseudodev tap:	ifnet, ether, arp
14451.969Spookadefpseudo carp:		ifnet, ether, arp
14461.1170Sknakahardefpseudodev l2tp:	ifnet, ether, arp
14471.1172Sbouyerdefpseudo canloop:	ifnet
14481.1191Sknakahardefpseudo ipsecif:	ifnet		# avoid to confuse ipsec itself option
14491.60Scgd
14501.298Sthorpejdefpseudo sequencer
14511.462Smanudefpseudo clockctl
14521.228Saugustss
14531.912Stls#
14541.912Stls# Accept filters.  XXX should use another registration/initialization method.
14551.912Stls#
14561.912Stlsdefpseudo accf_data
14571.912Stlsdefpseudo accf_http
14581.912Stls
14591.539Sthorpej# KTTCP network throughput testing pseudo-device
14601.539Sthorpejdefpseudo kttcp
14611.539Sthorpejfile	dev/kttcp.c			kttcp		needs-flag
14621.576Sblymn
14631.790Selad# Veriexec
14641.717Sblymndefpseudo veriexec
14651.1128Smaxvfile	kern/kern_veriexec.c	veriexec
14661.1152Smaxvfile	dev/veriexec.c		veriexec	needs-flag
14671.415Smartin
14681.681Sdrochner# driver attach / detach user interface
14691.681Sdrochnerdefpseudo drvctl
14701.906Sjmcneillfile	kern/kern_drvctl.c		drvctl		needs-flag
14711.681Sdrochner
14721.857Sad# cpu control
14731.857Saddefpseudo cpuctl
14741.1037Sdrochnerdefflag				CPU_UCODE: firmload
14751.857Sad
14761.870Spooka# pass-to-userspace transporter
14771.870Spookadefpseudo putter
14781.873Spookafile	dev/putter/putter.c		putter
14791.870Spooka
14801.875Spooka# userspace block/char device drivers
14811.875Spookadefpseudo pud
14821.875Spookafile	dev/pud/pud.c			pud
14831.875Spookafile	dev/pud/pud_dev.c		pud
14841.875Spooka
14851.931Shaad# device-mapper driver for LVM
14861.931Shaadinclude "dev/dm/files.dm"
14871.931Shaad
14881.1180Sjmcneill# LED framework
14891.1180Sjmcneillfile	dev/led.c			leds
14901.1180Sjmcneill
14911.1220Smlelstv# IPMI
14921.1220Smlelstvdevice	ipmi: sysmon_envsys, sysmon_wdog
14931.1220Smlelstvattach	ipmi at ipmibus
14941.1220Smlelstv
14951.1228Sjmcneill# Designware HDMI TX
14961.1228Sjmcneilldevice	dwhdmi: edid, videomode, drmkms, drmkms_i2c
14971.1228Sjmcneillfile	dev/ic/dw_hdmi.c		dwhdmi
14981.1228Sjmcneill
14991.516Sthorpej#
15001.516Sthorpej# File systems
15011.516Sthorpej#
15021.696Sjdolecekinclude "coda/files.coda"
15031.583Sjdolecekinclude "fs/adosfs/files.adosfs"
15041.696Sjdolecekinclude "fs/cd9660/files.cd9660"
15051.848Srumbleinclude "fs/efs/files.efs"
15061.584Sjdolecekinclude "fs/filecorefs/files.filecorefs"
15071.833Sdilloinclude "fs/hfs/files.hfs"
15081.696Sjdolecekinclude "fs/msdosfs/files.msdosfs"
15091.950Sreinoudinclude "fs/nilfs/files.nilfs"
15101.696Sjdolecekinclude "fs/ntfs/files.ntfs"
15111.696Sjdolecekinclude "fs/ptyfs/files.ptyfs"
15121.815Spookainclude "fs/puffs/files.puffs"
15131.756Sreinoudinclude "fs/udf/files.udf"
15141.516Sthorpejinclude "fs/smbfs/files.smbfs"
15151.750Stsutsuiinclude "fs/sysvbfs/files.sysvbfs"
15161.730Sjmmvinclude "fs/tmpfs/files.tmpfs"
15171.696Sjdolecekinclude "fs/union/files.union"
15181.1018Suchinclude "fs/v7fs/files.v7fs"
15191.1190Schristosinclude "fs/autofs/files.autofs"
15201.516Sthorpejinclude "miscfs/fdesc/files.fdesc"
15211.516Sthorpejinclude "miscfs/kernfs/files.kernfs"
15221.516Sthorpejinclude "miscfs/nullfs/files.nullfs"
15231.516Sthorpejinclude "miscfs/overlay/files.overlay"
15241.516Sthorpejinclude "miscfs/procfs/files.procfs"
15251.516Sthorpejinclude "miscfs/umapfs/files.umapfs"
15261.516Sthorpejinclude "nfs/files.nfs"
15271.516Sthorpejinclude "ufs/files.ufs"
15281.1168Spgoyetteinclude "fs/nfs/files.newnfs"
15291.516Sthorpej
15301.516Sthorpej#
15311.1013Smrg# UVM (virtual memory)
15321.1012Smrg#
15331.1013Smrginclude "uvm/files.uvm"
15341.1012Smrg
15351.1012Smrg#
15361.811Selad# Security models
15371.811Selad#
15381.811Seladinclude "secmodel/files.secmodel"
15391.811Selad
15401.1120Suebayasiinclude "kern/files.kern"
15411.979Suebayasi
15421.1135Suebayasiinclude "dev/files.dev"
15431.1135Suebayasi
15441.1119Suebayasiinclude "net/files.net"
15451.493Sjdolecek
15461.493Sjdolecek# Game adapter (joystick)
15471.493Sjdolecekdevice	joy
15481.493Sjdolecekfile	dev/ic/joy.c			joy needs-flag
15491.582Shaya
15501.1029Ssjg# process monitor for make(1)
15511.1029Ssjg# normally built as module
15521.1029Ssjgdefpseudo filemon
15531.1029Ssjgfile	dev/filemon/filemon.c		filemon
15541.1029Ssjgfile	dev/filemon/filemon_wrapper.c	filemon
15551.1029Ssjg
15561.734Sjmcneill#
15571.734Sjmcneill# General Purpose Input/Output framework
15581.734Sjmcneill#
15591.769Srizdefine	onewire_bitbang
15601.734Sjmcneillinclude	"dev/gpio/files.gpio"
15611.769Sriz
15621.769Srizinclude "dev/onewire/files.onewire"
15631.872Sjmcneill
15641.872Sjmcneill#
15651.872Sjmcneill# Pseudo audio device
15661.872Sjmcneill#
15671.872Sjmcneillinclude "dev/pad/files.pad"
15681.877Sjoerg
15691.877Sjoerg#
15701.877Sjoerg# Intel 386 Real Mode emulator
15711.877Sjoerg#
15721.877Sjoerginclude "lib/libx86emu/files.x86emu"
15731.882Syamt
15741.882Syamt#
15751.882Syamt# "tprof" profiler.
15761.882Syamt#
15771.882Syamtinclude	"dev/tprof/files.tprof"
15781.944Sjmcneill
15791.944Sjmcneill#
15801.1216Smaxv# NetBSD Virtual Machine Monitor.
15811.1216Smaxv#
15821.1216Smaxvinclude	"dev/nvmm/files.nvmm"
15831.1216Smaxv
15841.1216Smaxv#
15851.944Sjmcneill# alternate memory device
15861.944Sjmcneill#
15871.944Sjmcneillinclude "dev/altmem/files.altmem"
15881.1003Sahoka
15891.1003Sahoka#
15901.1003Sahoka# Flash subsystem
15911.1003Sahoka#
15921.1003Sahokainclude "dev/flash/files.flash"
15931.1003Sahoka
15941.1003Sahoka#
15951.1003Sahoka# NAND subsytem
15961.1003Sahoka#
15971.1003Sahokainclude "dev/nand/files.nand"
15981.1003Sahoka
15991.1019Sjmcneill#
16001.1020Scliff# NOR subsytem
16011.1020Scliff#
16021.1020Scliffinclude "dev/nor/files.nor"
16031.1031Sriz
16041.1031Sriz#
16051.1031Sriz# iscsi
16061.1031Sriz#
16071.1031Srizinclude "dev/iscsi/files.iscsi"
16081.1066Schristos
16091.1115Suebayasi#
16101.1115Suebayasi# athn
16111.1115Suebayasi#
16121.1115Suebayasiinclude "dev/ic/files.athn"
16131.1151Sjmcneill
16141.1151Sjmcneill#
16151.1151Sjmcneill# MI clk api
16161.1151Sjmcneill#
16171.1151Sjmcneillinclude "dev/clk/files.clk"
16181.1189Sskrll
16191.1189Sskrll#
16201.1189Sskrll# Flattened Device Tree (FDT) support
16211.1189Sskrll#
16221.1189Sskrllinclude "dev/ofw/files.ofw"
16231.1189Sskrllinclude "dev/fdt/files.fdt"
16241.1207Schristos
16251.1207Schristos#
16261.1207Schristos# Name value library
16271.1207Schristos#
16281.1207Schristosinclude "external/bsd/libnv/conf/files.libnv"
1629