Home | History | Annotate | Line # | Download | only in conf
files revision 1.1134
      1 #	$NetBSD: files,v 1.1134 2015/08/20 09:44:53 christos Exp $
      2 #	@(#)files.newconf	7.5 (Berkeley) 5/10/93
      3 
      4 version 	20150820
      5 
      6 #
      7 # device classes
      8 #
      9 devclass disk
     10 devclass tape
     11 devclass ifnet
     12 devclass tty
     13 devclass audiodev
     14 devclass displaydev
     15 devclass bus
     16 
     17 # options understood by the machine-independent part of the kernel
     18 # (note, these are case-sensitive)
     19 #
     20 defflag				INSECURE
     21 defflag				KMEMSTATS
     22 defflag				KTRACE
     23 defflag				MBUFTRACE
     24 defflag				PTRACE
     25 defflag				COREDUMP
     26 defflag	opt_modular.h		MODULAR
     27 defflag	opt_modular.h		MODULAR_DEFAULT_AUTOLOAD
     28 defflag				KEYLOCK
     29 
     30 defparam			DEFCORENAME
     31 defparam			HZ
     32 defparam			MAXUPRC
     33 defparam			RTC_OFFSET
     34 defflag	opt_pipe.h		PIPE_SOCKETPAIR PIPE_NODIRECT
     35 
     36 defflag				AIO
     37 defflag				MQUEUE
     38 
     39 defflag				BUFQ_DISKSORT
     40 defflag				BUFQ_FCFS
     41 defflag				BUFQ_PRIOCSCAN
     42 defflag				BUFQ_READPRIO
     43 defflag				NEW_BUFQ_STRATEGY	# same as BUFQ_READPRIO
     44 
     45 defflag	opt_sched.h		SCHED_4BSD
     46 defflag	opt_sched.h		SCHED_M2
     47 
     48 defparam			SOMAXKVA
     49 defflag	opt_sock_counters.h	SOSEND_COUNTERS
     50 defflag	opt_sosend_loan.h	SOSEND_NO_LOAN
     51 defflag	opt_route.h		RTCACHE_DEBUG RTFLUSH_DEBUG
     52 
     53 defflag				MULTIPROCESSOR
     54 defflag				NET_MPSAFE
     55 
     56 defflag	opt_config.h		INCLUDE_CONFIG_FILE INCLUDE_JUST_CONFIG
     57 
     58 defparam opt_dump.h		DUMP_ON_PANIC
     59 
     60 defflag	opt_callout.h		CALLWHEEL_STATS
     61 
     62 defflag				CPU_IN_CKSUM
     63 
     64 defflag opt_dtrace.h		KDTRACE_HOOKS
     65 
     66 defflag	opt_sysv.h		SYSVMSG SYSVSEM	SYSVSHM
     67 defparam opt_sysvparam.h	SHMMAXPGS SEMMNI SEMMNS SEMUME SEMMNU
     68 
     69 defflag	opt_ntp.h		PPS_SYNC PPS_DEBUG NTP
     70 
     71 defflag	opt_ptm.h		NO_DEV_PTM COMPAT_BSDPTY
     72 
     73 defparam opt_kmempages.h	NKMEMPAGES NKMEMPAGES_MIN NKMEMPAGES_MAX
     74 
     75 defflag	opt_revcache.h		NAMECACHE_ENTER_REVERSE
     76 
     77 defflag	opt_exec.h		DEBUG_EXEC
     78 
     79 defflag	opt_execfmt.h		EXEC_AOUT EXEC_COFF EXEC_ECOFF EXEC_ELF32
     80 				EXEC_ELF64 EXEC_SCRIPT
     81 				EXEC_ELF_NOTELESS
     82 
     83 defflag	opt_dkwedge.h		DKWEDGE_AUTODISCOVER
     84 				DKWEDGE_METHOD_BSDLABEL
     85 				DKWEDGE_METHOD_GPT
     86 				DKWEDGE_METHOD_MBR
     87 				DKWEDGE_METHOD_APPLE
     88 
     89 defflag	opt_veriexec.h		VERIFIED_EXEC_FP_SHA1
     90 				VERIFIED_EXEC_FP_SHA256
     91 				VERIFIED_EXEC_FP_SHA384
     92 				VERIFIED_EXEC_FP_SHA512
     93 				VERIFIED_EXEC_FP_MD5
     94 				VERIFIED_EXEC_FP_RMD160
     95 
     96 # Per system call number counts and times
     97 defflag opt_syscall_stats.h	SYSCALL_STATS
     98 defflag opt_syscall_stats.h	SYSCALL_TIMES: SYSCALL_STATS
     99 # Assume cpu_hascounter() returns true - to use disabled rdtsc() (for soekris)
    100 defflag opt_syscall_stats.h	SYSCALL_TIMES_HASCOUNTER: SYSCALL_TIMES
    101 file kern/subr_syscall_stats.c	syscall_stats
    102 
    103 defparam opt_pax.h		PAX_MPROTECT
    104 				PAX_SEGVGUARD
    105  				PAX_ASLR
    106  				PAX_ASLR_DELTA_MMAP_LSB
    107  				PAX_ASLR_DELTA_MMAP_LEN
    108  				PAX_ASLR_DELTA_STACK_LSB
    109  				PAX_ASLR_DELTA_STACK_LEN
    110  				PAX_ASLR_DELTA_PROG_LEN
    111 				PAX_ASLR_DEBUG
    112 
    113 defflag	opt_fileassoc.h		FILEASSOC
    114 
    115 defflag	opt_gre.h		GRE_DEBUG
    116 
    117 # Write Ahead Physical Block Logging
    118 defflag opt_wapbl.h		WAPBL WAPBL_DEBUG
    119 defparam opt_wapbl.h		WAPBL_DEBUG_PRINT
    120 
    121 # printf entropy source
    122 defflag opt_rnd_printf.h	RND_PRINTF
    123 
    124 defflag opt_todr.h		TODR_DEBUG
    125 
    126 # compatibility options
    127 #
    128 defflag opt_compat_netbsd.h	COMPAT_NETBSD
    129 defflag	opt_compat_netbsd.h	COMPAT_70: COMPAT_NETBSD
    130 defflag	opt_compat_netbsd.h	COMPAT_60: COMPAT_70, COMPAT_NETBSD
    131 defflag	opt_compat_netbsd.h	COMPAT_50: COMPAT_60, COMPAT_NETBSD
    132 defflag	opt_compat_netbsd.h	COMPAT_40: COMPAT_50, COMPAT_NETBSD
    133 defflag	opt_compat_netbsd.h	COMPAT_30: COMPAT_40, COMPAT_NETBSD
    134 defflag	opt_compat_netbsd.h	COMPAT_20: COMPAT_30, COMPAT_NETBSD
    135 defflag	opt_compat_netbsd.h	COMPAT_16: COMPAT_20, COMPAT_NETBSD
    136 defflag	opt_compat_netbsd.h	COMPAT_15: COMPAT_16, COMPAT_NETBSD
    137 defflag	opt_compat_netbsd.h	COMPAT_14: COMPAT_15, COMPAT_NETBSD
    138 defflag	opt_compat_netbsd.h	COMPAT_13: COMPAT_14, COMPAT_NETBSD
    139 defflag	opt_compat_netbsd.h	COMPAT_12: COMPAT_13, COMPAT_NETBSD
    140 defflag	opt_compat_netbsd.h	COMPAT_11: COMPAT_12, COMPAT_NETBSD
    141 defflag	opt_compat_netbsd.h	COMPAT_10: COMPAT_11, COMPAT_NETBSD
    142 defflag	opt_compat_netbsd.h	COMPAT_09: COMPAT_10, COMPAT_NETBSD
    143 defflag				COMPAT_OSSAUDIO
    144 defflag				COMPAT_FREEBSD: COMPAT_30
    145 defflag				COMPAT_IBCS2
    146 defflag				COMPAT_LINUX: COMPAT_16
    147 defflag				COMPAT_LINUX32 : COMPAT_LINUX
    148 defflag				COMPAT_OSF1
    149 defflag				COMPAT_SUNOS: COMPAT_30
    150 defflag	opt_compat_svr4.h	COMPAT_SVR4 COMPAT_SVR4_32 SVR4_COMPAT_SOLARIS2
    151 defflag				COMPAT_ULTRIX: COMPAT_50
    152 defflag				COMPAT_NETBSD32
    153 defflag				COMPAT_AOUT_M68K: COMPAT_40
    154 defflag				COMPAT_M68K4K
    155 defflag				COMPAT_VAX1K
    156 defflag				COMPAT_43
    157 defflag	opt_compat_netbsd.h	COMPAT_NOMID
    158 
    159 define	machdep
    160 defflag	opt_machdep.h		MACHDEP
    161 
    162 #
    163 # Cryptography support.  Include this early, since several things
    164 # use it.
    165 
    166 # Individual crypto transforms
    167 include "crypto/arc4/files.arc4"
    168 include "crypto/des/files.des"
    169 include "crypto/blowfish/files.blowfish"
    170 include "crypto/cast128/files.cast128"
    171 include "crypto/rijndael/files.rijndael"
    172 include "crypto/skipjack/files.skipjack"
    173 include "crypto/camellia/files.camellia"
    174 # General-purpose crypto processing framework.
    175 include "opencrypto/files.opencrypto"
    176 
    177 # NIST SP800.90 CTR DRBG
    178 include "crypto/nist_ctr_drbg/files.nist_ctr_drbg"
    179 
    180 # ChaCha-based fast PRNG
    181 include "crypto/cprng_fast/files.cprng_fast"
    182 
    183 #
    184 # Kernel history/tracing. Old UVMHIST depends upon this.
    185 #
    186 defflag opt_kernhist.h			KERNHIST KERNHIST_PRINT
    187 defparam opt_kernhist.h			KERNHIST_DELAY
    188 file	kern/kern_history.c		kernhist
    189 
    190 #
    191 # System monitoring framework
    192 #
    193 include "dev/sysmon/files.sysmon"
    194 
    195 #
    196 # Networking protocols
    197 #
    198 
    199 # Attribute used by various things that need BPF's virtual machine
    200 #
    201 define	bpf_filter
    202 defparam opt_bpf.h	BPF_BUFSIZE
    203 
    204 defflag	opt_bpf.h	BPFJIT
    205 
    206 file	net/bpfjit.c	sljit & bpfjit
    207 
    208 include "net80211/files.net80211"
    209 include "netatalk/files.netatalk"
    210 include "netbt/files.netbt"
    211 include "netinet/files.netinet"
    212 include "netinet6/files.netinet6"
    213 include "netipsec/files.netipsec"
    214 include "netmpls/files.netmpls"
    215 include "netnatm/files.netnatm"
    216 include "netsmb/files.netsmb"
    217 
    218 include "net/npf/files.npf"
    219 include "netinet/files.ipfilter"
    220 include "net/files.pf"
    221 
    222 obsolete defflag		CCITT		# obsolete
    223 obsolete defflag		HDLC		# obsolete
    224 obsolete defflag		LLC		# obsolete
    225 obsolete defflag opt_ns.h	NS NSIP		# obsolete
    226 obsolete defflag		IPX		# obsolete
    227 obsolete defparam opt_md.h	MEMORY_RBFLAGS	# superseded by
    228 						# MEMORY_DISK_RBFLAGS
    229 
    230 defflag	opt_bridge_ipf.h	BRIDGE_IPF	# bridge(4) use inet_pfil_hooks
    231 defflag	opt_ppp.h		PPP_DEFLATE PPP_BSDCOMP PPP_FILTER
    232 						# Include deflate or bsd
    233 						# compression, enable pppd
    234 						# packet filtering support
    235 defflag opt_pppoe.h		PPPOE_SERVER PPPOE_TERM_UNKNOWN_SESSIONS
    236 
    237 # networking options
    238 #
    239 defflag				GATEWAY
    240 defparam opt_nmbclusters.h	NMBCLUSTERS
    241 defparam			SB_MAX
    242 
    243 # file system options
    244 #
    245 defflag	opt_quota.h		QUOTA QUOTA2		# XXX files.ufs?
    246 defflag				VNODE_LOCKDEBUG
    247 defflag				MAGICLINKS
    248 
    249 # buffer cache size options
    250 #
    251 defparam opt_bufcache.h		BUFCACHE BUFPAGES
    252 
    253 # userconf
    254 #
    255 defflag				USERCONF
    256 
    257 # sysctl related
    258 #
    259 defflag opt_sysctl.h		SYSCTL_DISALLOW_CREATE SYSCTL_DISALLOW_KWRITE
    260 				SYSCTL_DEBUG_SETUP SYSCTL_DEBUG_CREATE
    261 				SYSCTL_INCLUDE_DESCR
    262 
    263 #
    264 # Not entirely MI, but present on multiple arch's
    265 #
    266 
    267 # PC-style MBR handling
    268 #
    269 defflag	opt_mbr.h		COMPAT_386BSD_MBRPART
    270 
    271 #
    272 # debugging options
    273 #
    274 include "ddb/files.ddb"		# in-kernel dynamic debugger
    275 
    276 defflag	opt_kgdb.h		KGDB
    277 defparam opt_kgdb.h		KGDB_DEV KGDB_DEVNAME KGDB_DEVPORT
    278 				KGDB_DEVADDR KGDB_DEVRATE KGDB_DEVMODE
    279 defflag				LOCKDEBUG
    280 defflag				SYSCALL_DEBUG
    281 defflag	opt_kstack.h		KSTACK_CHECK_MAGIC
    282 
    283 # memory (ram) disk options
    284 #
    285 defflag	opt_md.h		MEMORY_DISK_HOOKS MEMORY_DISK_IS_ROOT
    286 				MEMORY_DISK_DYNAMIC
    287 defparam opt_md.h		MEMORY_DISK_SERVER=1 MEMORY_DISK_ROOT_SIZE
    288 				MEMORY_DISK_RBFLAGS
    289 
    290 defflag opt_tftproot.h		TFTPROOT TFTPROOT_DEBUG
    291 
    292 # Support for hardware performance monitoring counters
    293 #
    294 defflag	opt_perfctrs.h		PERFCTRS
    295 
    296 defflag	opt_wlan.h		WLAN
    297 
    298 # Machine-independent device majors assignements
    299 include "conf/majors"
    300 
    301 # generic attributes
    302 #
    303 define	videobus	{ }
    304 define	ata	        {[channel = -1]}
    305 define	sata
    306 define	sata_fis
    307 define	sata_pmp
    308 define	scsi_core
    309 define	scsi		{[channel = -1]}: scsi_core
    310 define	ata_hl		{[drive = -1]}
    311 define	atapi		{ }
    312 define	radiodev	{ }
    313 define	gpibdev		{[address = -1]}
    314 define	gpiobus		{ }
    315 define	onewirebus	{ }
    316 define 	pckbport	{[slot = -1]}
    317 define	pckbport_machdep_cnattach
    318 define	firmload
    319 
    320 include "dev/files.audio"
    321 
    322 # High definition audio
    323 include "dev/hdaudio/files.hdaudio"
    324 
    325 # Base verbose vendor/product printing support
    326 file	dev/dev_verbose.c
    327 
    328 # video devices, attaches to video hardware driver
    329 #
    330 device	video
    331 attach	video at videobus
    332 
    333 # DTV subsystem
    334 #
    335 include "dev/dtv/files.dtv"
    336 
    337 # HDMI CEC
    338 #
    339 include "dev/hdmicec/files.hdmicec"
    340 
    341 # National Semiconductor LM7[89]
    342 #
    343 # (included here so files.i2c can define an attachment)
    344 
    345 device	lm: sysmon_envsys
    346 file	dev/ic/nslm7x.c			lm			needs-flag
    347 
    348 # JEDEC standard SPD EPROM
    349 #
    350 # (included here so files.i2c can define an attachment)
    351 
    352 device	spdmem
    353 file	dev/ic/spdmem.c			spdmem
    354 
    355 # I2C device support
    356 include "dev/i2c/files.i2c"
    357 
    358 # SPI device support
    359 include "dev/spi/files.spi"
    360 
    361 # IR device support
    362 include	"dev/ir/files.ir"
    363 
    364 # Parallel Port Bus support
    365 include "dev/ppbus/files.ppbus"
    366 
    367 # raster operations attributes
    368 #
    369 define	rasops1
    370 define	rasops2
    371 define	rasops4
    372 define	rasops8
    373 define	rasops15
    374 define	rasops16
    375 define	rasops24
    376 define	rasops32
    377 define	rasops_rotation
    378 
    379 # image decoding support
    380 include "dev/stbi/files.stbi"
    381 
    382 # splash screen support
    383 include "dev/splash/files.splash"
    384 
    385 # videomode support
    386 include "dev/videomode/files.videomode"
    387 
    388 # net device attributes - we have generic code for arc(net), ether(net),
    389 # fddi, token ring, atm and eco(net).
    390 #
    391 define	arcnet
    392 define	atm
    393 define	eco
    394 define	ether
    395 define	fddi
    396 define	hippi
    397 define	ieee1394
    398 define	token
    399 define	sppp
    400 define	wlan
    401 define	crypto
    402 
    403 # TPM
    404 device	tpm
    405 file	dev/ic/tpm.c			tpm			needs-flag
    406 
    407 # devices ARPing IPv4 pull this in:
    408 #
    409 define	arp
    410 
    411 #
    412 # ALTQ network traffic shaping subsystem
    413 #
    414 include "altq/files.altq"
    415 
    416 #
    417 # IPKDB kernel debugger
    418 #
    419 include "ipkdb/files.ipkdb"
    420 
    421 # Logical disk
    422 #
    423 device	ld: disk
    424 file	dev/ld.c			ld			needs-flag
    425 
    426 #
    427 # MII/PHY support for network devices
    428 #
    429 include "dev/mii/files.mii"
    430 
    431 #
    432 # RAIDframe
    433 #
    434 include "dev/raidframe/files.raidframe"
    435 
    436 #
    437 # Hardware-assisted data mover API
    438 #
    439 include "dev/dmover/files.dmover"
    440 
    441 #
    442 # "Chipset" drivers.  These are the bus-independent routines which
    443 # contain the cfdrivers.  Attachments are provided by files.<bus>
    444 #
    445 
    446 # Adaptec AIC-6[32]60 ICs
    447 #
    448 device	aic: scsi
    449 file	dev/ic/aic6360.c		aic
    450 
    451 # SMC 93Cx6 Serial EEPROM devices
    452 #
    453 define	smc93cx6
    454 file	dev/ic/smc93cx6.c		smc93cx6
    455 
    456 # Adaptec 2[789]4X, 394X, aic7770 and aic78[5678]0 SCSI controllers
    457 #
    458 defparam opt_ahc.h		AHC_DEBUG
    459 defflag	opt_ahc.h		AHC_NO_TAGS
    460 device	ahc: scsi
    461 define	ahc_seeprom
    462 define	ahc_aic77xx
    463 file	dev/ic/aic7xxx.c		ahc
    464 file	dev/ic/aic7xxx_osm.c		ahc
    465 file	dev/ic/aic7xxx_seeprom.c	ahc_seeprom
    466 file	dev/ic/aic77xx.c		ahc_aic77xx
    467 
    468 # Adaptec aic79xx SCSI controllers
    469 defflag	opt_ahd.h		AHD_DEBUG
    470 device	ahd: scsi
    471 file	dev/ic/aic79xx.c		ahd
    472 file	dev/ic/aic79xx_osm.c		ahd
    473 
    474 # DPT EATA SCSI controllers
    475 #
    476 device	dpt: scsi
    477 file	dev/ic/dpt.c			dpt
    478 
    479 # Compaq Smart ARRAY controllers
    480 #
    481 device	cac {unit = -1}
    482 file	dev/ic/cac.c			cac
    483 
    484 attach	ld at cac with ld_cac
    485 file	dev/ic/ld_cac.c			ld_cac
    486 
    487 # HP/Compaq Command Interface for SCSI-3 Support
    488 #
    489 device ciss: scsi
    490 file	dev/ic/ciss.c			ciss
    491 
    492 # Mylex DAC960 RAID controllers
    493 #
    494 device	mlx {unit = -1}
    495 file	dev/ic/mlx.c			mlx			needs-flag
    496 
    497 attach	ld at mlx with ld_mlx
    498 file	dev/ic/ld_mlx.c			ld_mlx
    499 
    500 # ICP-Vortex/Intel RAID controllers
    501 #
    502 device	icp {unit = -1}
    503 file	dev/ic/icp.c			icp			needs-flag
    504 file	dev/ic/icp_ioctl.c		icp
    505 
    506 attach	ld at icp with ld_icp
    507 file	dev/ic/ld_icp.c			ld_icp
    508 
    509 device	icpsp: scsi
    510 file	dev/ic/icpsp.c			icpsp
    511 attach	icpsp at icp
    512 
    513 # Adaptec FSA RAID controllers
    514 #
    515 device	aac {unit = -1}
    516 file	dev/ic/aac.c			aac
    517 
    518 attach	ld at aac with ld_aac
    519 file	dev/ic/ld_aac.c			ld_aac
    520 
    521 # AdvanSys 1200A, 1200B and ULTRA SCSI controllers
    522 #
    523 device	adv: scsi
    524 file	dev/ic/adv.c			adv
    525 file	dev/ic/advlib.c			adv
    526 file	dev/ic/advmcode.c		adv
    527 
    528 # AdvanSys ULTRA WIDE SCSI controllers
    529 #
    530 device	adw: scsi
    531 file	dev/ic/adw.c			adw
    532 
    533 # BusLogic MultiMaster and MultiMaster Ultra SCSI controllers
    534 # (Must be declared before AHA to ensure bha probes before aha.
    535 #  Probing AHA first configures bhas as aha, via their AHA
    536 #  hardware-compatibility mode.)
    537 #
    538 device	bha: scsi
    539 file	dev/ic/bha.c			bha
    540 
    541 # Adaptec AHA-154x and AHA-164x controllers
    542 # (must be after bha, see above)
    543 #
    544 device	aha: scsi
    545 file	dev/ic/aha.c			aha
    546 
    547 # Initio INIC-940/950 SCSI controllers
    548 #
    549 device	iha: scsi
    550 file	dev/ic/iha.c			iha
    551 
    552 # Qlogic ISP 10x0 SCSI Controllers
    553 #
    554 defflag	opt_isp.h		ISP_DISABLE_1020_SUPPORT
    555 				ISP_DISABLE_1080_SUPPORT
    556 				ISP_DISABLE_2100_SUPPORT
    557 				ISP_DISABLE_2200_SUPPORT
    558 				ISP_DISABLE_2300_SUPPORT
    559 				ISP_DISABLE_2322_SUPPORT
    560 				ISP_DISABLE_2400_SUPPORT
    561 				ISP_DISABLE_FW
    562 				ISP_TARGET_MODE
    563 defparam opt_isp.h		ISP_LOGDEFAULT
    564 				ISP_VPORTS
    565 device	isp: scsi
    566 file	dev/ic/isp.c			isp
    567 file	dev/ic/isp_library.c		isp
    568 file	dev/ic/isp_netbsd.c		isp
    569 file	dev/ic/isp_target.c		isp & isp_target_mode
    570 # LSILogic MegaRAID SAS
    571 #
    572 device	mfi: scsi
    573 file	dev/ic/mfi.c			mfi
    574 
    575 # LSILogic Fusion-MPT I/O Processor SCSI/FC Controllers
    576 #
    577 device	mpt: scsi
    578 file	dev/ic/mpt.c			mpt
    579 file	dev/ic/mpt_debug.c		mpt
    580 file	dev/ic/mpt_netbsd.c		mpt
    581 
    582 # Workbit NinjaSCSI-32 controllers
    583 device	njs: scsi
    584 file	dev/ic/ninjascsi32.c		njs
    585 
    586 # Symbios/NCR 53c700 SCSI controllers
    587 device	oosiop: scsi
    588 file	dev/ic/oosiop.c			oosiop
    589 
    590 # Symbios/NCR 53c710 SCSI controllers
    591 #
    592 device	osiop: scsi
    593 file	dev/ic/osiop.c			osiop
    594 
    595 # common stuff for siop and esiop
    596 #
    597 define	siop_common
    598 file	dev/ic/siop_common.c		siop_common
    599 
    600 # Symbios/NCR 53c720/53c8xx SCSI controllers
    601 #
    602 device	siop: scsi,siop_common
    603 file	dev/ic/siop.c			siop & (siop_pci | siop_gedoens)
    604 defflag	opt_siop.h			SIOP_SYMLED
    605 
    606 device	esiop: scsi,siop_common
    607 file	dev/ic/esiop.c			esiop
    608 
    609 # UltraStor SCSI controllers
    610 #
    611 device	uha: scsi
    612 file	dev/ic/uha.c			uha
    613 
    614 # 3Com common probe code
    615 define  elink
    616 file    dev/isa/elink.c                 elink
    617 
    618 # Aironet PC4500/PC4800
    619 #
    620 device	an: arp, wlan, ifnet
    621 file	dev/ic/an.c			an
    622 
    623 # AMD 79c930-based 802.11 cards
    624 #
    625 device	awi: arp, wlan, ifnet
    626 file	dev/ic/awi.c			awi
    627 file	dev/ic/am79c930.c		awi
    628 
    629 # Lucent & Intersil WaveLan IEEE (802.11)
    630 #
    631 device	wi: arp, wlan, ifnet
    632 file	dev/ic/wi.c			wi
    633 
    634 # Atheros HAL
    635 #
    636 include "external/isc/atheros_hal/conf/files.ath_hal"
    637 
    638 # Atheros 5210/5211/5212 multi-mode 802.11
    639 #
    640 device	ath: arp, wlan, ifnet
    641 file	dev/ic/ath.c			ath
    642 file	dev/ic/ath_netbsd.c		ath
    643 file	dev/ic/athrate-sample.c		ath
    644 
    645 # ADMtek ADM8211 802.11
    646 #
    647 device	atw: arp, wlan, ifnet, smc93cx6
    648 file	dev/ic/atw.c			atw
    649 
    650 # Realtek RTL8180 802.11
    651 #
    652 device rtw: arp, wlan, ifnet, smc93cx6
    653 file	dev/ic/rtw.c			rtw
    654 file	dev/ic/rtwphy.c			rtw
    655 file	dev/ic/rtwphyio.c		rtw
    656 
    657 # Ralink RT2500/RT2600 802.11
    658 device	ral: arp, ether, ifnet, wlan, firmload
    659 file	dev/ic/rt2560.c			ral
    660 file	dev/ic/rt2661.c			ral
    661 
    662 # Marvell Libertas Open
    663 device  malo: arp, ether, ifnet, wlan, firmload
    664 file    dev/ic/malo.c           malo
    665 
    666 # 3Com Etherlink-III Ethernet controller
    667 #
    668 device	ep: arp, ether, ifnet, mii, mii_bitbang
    669 file	dev/ic/elink3.c			ep
    670 
    671 # 3Com EtherLink XL Controller
    672 #
    673 device	ex: arp, ether, ifnet, mii, mii_bitbang
    674 file	dev/ic/elinkxl.c		ex
    675 
    676 # DEC EtherWORKS III (LEMAC) Ethernet controllers
    677 #
    678 device	lc: arp, ether, ifnet
    679 file	dev/ic/lemac.c			lc
    680 
    681 # LANCE and PCnet Ethernet controllers
    682 #
    683 device	le: arp, ether, ifnet
    684 define	le24
    685 define	le32
    686 file	dev/ic/am7990.c			le24
    687 file	dev/ic/am79900.c		le32
    688 file	dev/ic/lance.c			le24 | le32
    689 
    690 # DEC DEPCA-family of LANCE Ethernet controllers
    691 #
    692 device	depca { }: le24
    693 file	dev/ic/depca.c			depca
    694 attach	le at depca with le_depca
    695 
    696 # Sun HME Ethernet controllers
    697 #
    698 device	hme: arp, ether, ifnet, mii
    699 file	dev/ic/hme.c			hme
    700 
    701 # Sun GEM Ethernet controllers
    702 #
    703 device	gem: arp, ether, ifnet, mii
    704 file	dev/ic/gem.c			gem
    705 
    706 # Synopsis Designware GMAC core, as found on allwinner a20
    707 # and other SoCs
    708 device	awge: arp, ether, ifnet, mii
    709 file	dev/ic/dwc_gmac.c		awge
    710 
    711 # 8390-family Ethernet controllers
    712 #
    713 defflag	opt_ipkdb.h		IPKDB_DP8390
    714 define	dp8390nic
    715 file	dev/ic/dp8390.c			dp8390nic | ipkdb_dp8390
    716 
    717 # National Semiconductor DP83905 AT/LANTIC Ethernet media support
    718 #
    719 define	dp83905
    720 file	dev/ic/dp83905.c		dp83905
    721 
    722 # Macronix MX98905 Ethernet controller
    723 # (use as an attribute for an "ne" bus attachment)
    724 #
    725 define	mx98905
    726 file	dev/ic/mx98905.c		mx98905
    727 
    728 # TROPIC Token-Ring controller
    729 #
    730 device	tr: arp, token, ifnet
    731 file	dev/ic/tropic.c			tr
    732 
    733 # NCR 5380 SCSI Bus Controller
    734 #
    735 define	ncr5380sbc
    736 file	dev/ic/ncr5380sbc.c		ncr5380sbc
    737 device	nca: scsi, ncr5380sbc
    738 
    739 # Sun sc PAL SCSI Bus Controller
    740 #
    741 define	sunscpal
    742 file	dev/ic/sunscpal.c		sunscpal
    743 device	ssc: scsi, sunscpal
    744 
    745 # DEC FDDI Chipset
    746 #
    747 define	pdq
    748 file	dev/ic/pdq.c			pdq
    749 file	dev/ic/pdq_ifsubr.c		pdq
    750 
    751 # Cyclades Cyclom-8/16/32
    752 #
    753 device	cy: tty
    754 file	dev/ic/cy.c			cy			needs-flag
    755 
    756 # Efficient Networks, Inc. ATM interface
    757 #
    758 device	en: atm, ifnet
    759 file	dev/ic/midway.c			en
    760 
    761 # NCR 53x9x or Emulex ESP SCSI Controller
    762 #
    763 define	ncr53c9x
    764 device	esp: scsi, ncr53c9x
    765 file	dev/ic/ncr53c9x.c		ncr53c9x
    766 
    767 # Fujitsu MB87030/MB89352 SCSI Protocol Controller
    768 device	spc: scsi
    769 file	dev/ic/mb89352.c		spc
    770 
    771 # Western Digital WD33C93/WD33C93A SCSI Bus Interface Controller
    772 define	wd33c93
    773 file	dev/ic/wd33c93.c		wd33c93
    774 
    775 # Hitachi HD44780 LCD panel controller
    776 define	hd44780
    777 file	dev/ic/hd44780_subr.c		hd44780
    778 file	dev/ic/lcdkp_subr.c		hd44780
    779 
    780 # Matrix keypad
    781 define	matrixkp
    782 file	dev/ic/matrixkp_subr.c		matrixkp
    783 
    784 # Hitachi HD64570 serial controller
    785 #
    786 define	hd64570
    787 file	dev/ic/hd64570.c		hd64570
    788 
    789 # Riscom/N2 ISA/PCI Sync Serial Controller
    790 #
    791 device	ntwoc: ifnet, hd64570
    792 
    793 # Intel 82586 Ethernet Controller
    794 #
    795 define	i82586
    796 file	dev/ic/i82586.c			i82586
    797 
    798 # Intel 82596 Ethernet Controller
    799 #
    800 define	i82596
    801 file	dev/ic/i82596.c			i82596
    802 
    803 # Intel 82557/82558/82559 Ethernet Controller
    804 #
    805 device	fxp: ether, ifnet, arp, mii
    806 file	dev/ic/i82557.c			fxp
    807 
    808 # SEEQ 8005 Advanced Ethernet Data Link Controller
    809 #
    810 define	seeq8005
    811 file	dev/ic/seeq8005.c		seeq8005
    812 
    813 # SMC 91Cxx Ethernet Controller
    814 #
    815 device	sm: arp, ether, ifnet, mii, mii_bitbang
    816 file	dev/ic/smc91cxx.c		sm
    817 
    818 # SMC 83C170 EPIC/100 Fast Ethernet Controller
    819 #
    820 device	epic: arp, ether, ifnet, mii
    821 file	dev/ic/smc83c170.c		epic
    822 
    823 # DEC SGEC Second Generation Ethernet Controller
    824 #
    825 define	sgec
    826 file	dev/ic/sgec.c			sgec
    827 
    828 # MB86950 Ethernet Controller
    829 #
    830 define	mb86950
    831 file	dev/ic/mb86950.c		mb86950
    832 
    833 # MB8696x Ethernet Controller
    834 #
    835 define	mb86960
    836 file	dev/ic/mb86960.c		mb86960
    837 
    838 # Generic MB8696x Ethernet Controller driver
    839 #
    840 device	mbe: arp, ether, ifnet, mb86960
    841 
    842 # Interwave Am78C201 audio driver
    843 #
    844 define	interwave
    845 file	dev/ic/interwave.c		interwave
    846 
    847 # TMS 320av110 MPEG2/audio driver
    848 #
    849 define	tms320av110
    850 file	dev/ic/tms320av110.c		tms320av110
    851 
    852 # Novell NE2000-compatible Ethernet cards, based on the
    853 # National Semiconductor DS8390.
    854 #
    855 defflag	opt_ipkdb.h		IPKDB_NE			: IPKDB_DP8390
    856 device	ne: ether, ifnet, arp, dp8390nic, mii
    857 file	dev/ic/ne2000.c			ne | ipkdb_ne
    858 
    859 # 8250/16[45]50-based "com" ports
    860 #
    861 defflag	opt_com.h		COM_DEBUG
    862 # XXX In a perfect world, this would be done with attributes
    863 defflag	opt_com.h		COM_16650 COM_16750
    864 				COM_HAYESP COM_PXA2X0 COM_AU1X00
    865 				COM_REGMAP COM_FUNCMAP
    866 defparam opt_com.h		COM_TOLERANCE
    867 device	com { } : tty
    868 file	dev/ic/com.c			com			needs-flag
    869 
    870 # PC-like keyboard controller
    871 #
    872 device	pckbc: pckbport
    873 file	dev/ic/pckbc.c			pckbc			needs-flag
    874 
    875 device	attimer
    876 file	dev/ic/attimer.c		attimer			needs-flag
    877 
    878 # Cirrus Logic CD240[01] 4-port Multi-Protocol Communications Controller
    879 #
    880 device	clmpcc: tty
    881 file	dev/ic/clmpcc.c			clmpcc			needs-flag
    882 
    883 # Abit uGuru
    884 #
    885 device	ug: sysmon_envsys
    886 file	dev/ic/ug.c			ug			needs-flag
    887 
    888 # Essential Communications Corp. HIPPI Interface
    889 #
    890 device	esh: hippi, ifnet
    891 file	dev/ic/rrunner.c		esh			needs-flag
    892 
    893 # SMC 90c26, SMC 90C56 (and 90C66 if in compat mode) chip driver
    894 #
    895 device	bah: ifnet, arcnet, arp
    896 file	dev/ic/smc90cx6.c		bah
    897 
    898 # OPL2/OPL3 FM synth driver
    899 #
    900 device	opl: midibus, midisyn
    901 file	dev/ic/opl.c			opl
    902 file	dev/ic/oplinstrs.c		opl
    903 
    904 # MPU401 MIDI UART compatibles
    905 #
    906 device	mpu: midibus
    907 file	dev/ic/mpu.c			mpu			needs-flag
    908 
    909 # AD1848 (CS4248, CS4231, AD1845) audio codec support; used by other drivers
    910 #
    911 define	ad1848
    912 file	dev/ic/ad1848.c			ad1848
    913 
    914 # AMD 7930 audio/ISDN codec
    915 #
    916 define	am7930
    917 file	dev/ic/am7930.c			am7930
    918 
    919 # Siemens PSB2160 audio codec, as found in HP systems
    920 device	arcofi: audiobus, auconv, mulaw
    921 file	dev/ic/arcofi.c			arcofi
    922 
    923 # SPARC `SUNW,audiocs'
    924 #
    925 device	audiocs: audiobus, auconv, ad1848
    926 file	dev/ic/cs4231.c			audiocs
    927 
    928 # AC-97 CODECs
    929 #
    930 define	ac97
    931 file	dev/ic/ac97.c			ac97
    932 
    933 # UDA1341 CODEC support
    934 define	uda1341
    935 file	dev/ic/uda1341.c		uda1341
    936 
    937 # Oki MSM6258 support code
    938 #
    939 define msm6258
    940 file	dev/ic/msm6258.c		msm6258
    941 
    942 # LSI64854 DMA controller back-end
    943 #
    944 define	lsi64854
    945 file	dev/ic/lsi64854.c		lsi64854
    946 
    947 # Cirrus Logic CL-CD180/1864/1865 multi port serial controller back-end
    948 #
    949 define	cd18xx
    950 file	dev/ic/cd18xx.c			cd18xx
    951 
    952 # Realtek 8019/8029 NE2000-compatible network interface subroutines
    953 #
    954 define	rtl80x9
    955 file	dev/ic/rtl80x9.c		rtl80x9			needs-flag
    956 
    957 # Realtek 8129/8139 Ethernet controllers
    958 #
    959 device	rtk: ether, ifnet, arp, mii
    960 file	dev/ic/rtl81x9.c		rtk | re
    961 
    962 # Realtek 8169 Ethernet controllers
    963 #
    964 device	re: ether, ifnet, arp, mii
    965 file	dev/ic/rtl8169.c		re
    966 
    967 # Common code for ESDI/IDE/etc. controllers
    968 #
    969 define	wdc_common
    970 define	ata_dma
    971 define	ata_udma
    972 define	ata_piobm
    973 device	wdc: ata, wdc_common
    974 
    975 defflag opt_ata.h	ATADEBUG
    976 defparam opt_ata.h	ATADEBUG_MASK
    977 defflag opt_wdc.h	WDC_NO_IDS
    978 
    979 device	atabus: atapi,ata_hl
    980 attach	atabus at ata
    981 # The strange expression is to dump ata_* definitions to ata_dma.h.
    982 file	dev/ic/wdc.c			(ata_dma | ata_udma | ata_piobm | atabus) & atabus & wdc_common	needs-flag
    983 
    984 # Workbit NinjaATA-32 IDE controllers
    985 device	njata: ata, ata_piobm, wdc_common
    986 file	dev/ic/ninjaata32.c		njata
    987 
    988 # CHIPS and Technologies 82C7[12][01] Universal Peripheral Controller
    989 #
    990 device	upc { [offset = -1] }
    991 attach	wdc at upc with wdc_upc
    992 attach	com at upc with com_upc
    993 attach	lpt at upc with lpt_upc
    994 file	dev/ic/upc.c			upc
    995 file	dev/ic/wdc_upc.c		wdc_upc
    996 file	dev/ic/com_upc.c		com_upc
    997 file	dev/ic/lpt_upc.c		lpt_upc
    998 
    999 # AHCI-compatible SATA controllers
   1000 define ahcisata_core
   1001 file dev/ic/ahcisata_core.c ahcisata_core
   1002 device ahcisata: ata, ata_dma, ata_udma, sata, sata_fis, sata_pmp, ahcisata_core
   1003 
   1004 # Silicon Image SteelVine SATA-II controllers
   1005 define	siisata
   1006 file	dev/ic/siisata.c		siisata
   1007 device	siisata: ata, ata_dma, ata_udma, sata, sata_fis, sata_pmp, siisata
   1008 
   1009 # Marvell Serial-ATA Host Controller
   1010 define mvsata
   1011 file dev/ic/mvsata.c			mvsata
   1012 device mvsata: ata, ata_dma, ata_udma, wdc_common, sata, sata_pmp, mvsata
   1013 defflag opt_mvsata.h		MVSATA_WITHOUTDMA
   1014 
   1015 # DECchip 21x4x Ethernet controller family, and assorted clones.
   1016 #
   1017 device	tlp: arp, ether, ifnet, mii, mii_bitbang
   1018 file	dev/ic/tulip.c			tlp
   1019 
   1020 # Adaptec AIC-6915 Ethernet interface
   1021 #
   1022 device	sf: arp, ether, ifnet, mii
   1023 file	dev/ic/aic6915.c		sf
   1024 
   1025 # Mostek time-of-day clock and NVRAM
   1026 #
   1027 define	mk48txx
   1028 file	dev/ic/mk48txx.c		mk48txx
   1029 
   1030 # OKI MSM6242B
   1031 #
   1032 define	msm6242b
   1033 file	dev/ic/msm6242b.c		msm6242b
   1034 
   1035 # Intersil 7170 time-of-day clock
   1036 #
   1037 define	intersil7170
   1038 file	dev/ic/intersil7170.c		intersil7170
   1039 
   1040 # National Semiconductor MM58167 time-of-day clock
   1041 #
   1042 define	mm58167
   1043 file	dev/ic/mm58167.c		mm58167
   1044 
   1045 # Motorola mc146818 (and compatible) time-of-day clock
   1046 #
   1047 define	mc146818
   1048 file	dev/ic/mc146818.c		mc146818
   1049 
   1050 # Ricoh RS5C313 time of-day-clock
   1051 #
   1052 define	rs5c313
   1053 file	dev/ic/rs5c313.c		rs5c313
   1054 
   1055 # D-Link DL10019/10022 NE2000-compatible network interface subroutines
   1056 #
   1057 define	dl10019
   1058 file	dev/ic/dl10019.c		dl10019
   1059 
   1060 # ASIX AX88190 NE2000-compatible network interface subroutines
   1061 #
   1062 define	ax88190
   1063 file	dev/ic/ax88190.c		ax88190
   1064 
   1065 # WD/SMC 80x3 family, SMC Elite Ultra [8216], SMC EtherEZ
   1066 #
   1067 device	we: ether, ifnet, arp, dp8390nic
   1068 file	dev/ic/we.c			we
   1069 
   1070 # Allied-Telesis Ethernet driver based on Fujitsu MB8696xA controllers
   1071 #
   1072 device	ate: arp, ether, ifnet, mb86960
   1073 
   1074 # Fujitsu FMV-18x Ethernet driver based on Fujitsu MB8696xA controllers
   1075 #
   1076 device	fmv: arp, ether, ifnet, mb86960
   1077 file	dev/ic/fmv.c			fmv
   1078 
   1079 # Crystal Semiconductor CS8900, CS8920, and CS8920M Ethernet
   1080 #
   1081 device	cs: arp, ether, ifnet
   1082 device	tscs: arp, ether, ifnet
   1083 file	dev/ic/cs89x0.c			cs | tscs
   1084 
   1085 # Radio device attributes
   1086 #
   1087 define	tea5757
   1088 file	dev/ic/tea5757.c		tea5757
   1089 define	lm700x
   1090 file	dev/ic/lm700x.c			lm700x
   1091 
   1092 # Philips PCF8584 i2c controller
   1093 define	pcf8584
   1094 file	dev/ic/pcf8584.c		pcf8584
   1095 
   1096 # PCA9564 i2c controller
   1097 define	pca9564
   1098 file	dev/ic/pca9564.c		pca9564
   1099 
   1100 # ACPI power management timer (hardware access, independent of ACPI)
   1101 #
   1102 define acpipmtimer
   1103 file	dev/ic/acpipmtimer.c	acpipmtimer
   1104 
   1105 device 	hpet
   1106 file 	dev/ic/hpet.c		hpet			needs-flag
   1107 
   1108 # DesignWare timer
   1109 device	dwctmr
   1110 file	dev/ic/dwc_tmr.c	dwctmr
   1111 
   1112 # SMSC LAN9118 Family Ethernet Controller
   1113 #
   1114 device	smsh: arp, ether, ifnet, mii
   1115 file	dev/ic/lan9118.c		smsh
   1116 
   1117 # Apple System Management Controller
   1118 #
   1119 define	applesmcbus	{ }
   1120 device	applesmc: applesmcbus
   1121 file	dev/ic/apple_smc.c		applesmc
   1122 
   1123 # Apple SMC fan sensors and control
   1124 device	applesmcfan: applesmcbus, sysmon_envsys
   1125 attach	applesmcfan at applesmcbus with apple_smc_fan
   1126 file	dev/ic/apple_smc_fan.c		applesmcfan
   1127 
   1128 # Apple SMC temperature sensors
   1129 device	applesmctemp: applesmcbus, sysmon_envsys
   1130 attach	applesmctemp at applesmcbus with apple_smc_temp
   1131 file	dev/ic/apple_smc_temp.c		applesmctemp
   1132 
   1133 # Apple SMC accelerometer (not yet implemented!)
   1134 #device	applesmcaccel: applesmcbus, sysmon_envsys
   1135 #attach	applesmcaccel at applesmcbus with apple_smc_accel
   1136 #file	dev/ic/apple_smc_accel.c	applesmcaccel
   1137 
   1138 # DRM - Direct Rendering Infrastructure: dev/drm
   1139 define drm {}
   1140 include "external/bsd/drm/conf/files.drm"
   1141 include "dev/drm/files.drm"
   1142 
   1143 # DRM/KMS - Newer direct rendering manager with kernel mode-switching
   1144 include "external/bsd/drm2/drm/files.drmkms"
   1145 
   1146 
   1147 # Definitions for wscons
   1148 # device attributes: display, display with emulator, keyboard, and mouse
   1149 #
   1150 define	wsdisplaydev		{[kbdmux = 1]}
   1151 define	wsemuldisplaydev	{[console = -1], [kbdmux = 1]}
   1152 define	wskbddev		{[console = -1], [mux = 1]}
   1153 define	wsmousedev		{[mux = 0]}
   1154 define	vcons
   1155 # attribute to pull in raster support
   1156 #
   1157 define	wsrasteremulops
   1158 # common PC display functions
   1159 #
   1160 defflag	opt_pcdisplay.h		PCDISPLAY_SOFTCURSOR
   1161 define	pcdisplayops
   1162 file	dev/ic/pcdisplay_subr.c	pcdisplayops
   1163 file	dev/ic/pcdisplay_chars.c	pcdisplayops
   1164 # an attribute used by arch specific config files to include /dev/fb* (or
   1165 # equivalent) support - on most archs this is just a NOP (untill, maybe
   1166 # someday when we might make /dev/fb* support MI)
   1167 define	fb
   1168 # VGA graphics
   1169 #
   1170 defparam opt_vga.h		VGA_CONSOLE_SCREENTYPE
   1171 defflag opt_vga.h 		VGA_CONSOLE_ATI_BROKEN_FONTSEL
   1172 defflag opt_vga.h		VGA_RASTERCONSOLE
   1173 defflag opt_vga.h		VGA_RESET
   1174 device	vga: displaydev, wsemuldisplaydev, pcdisplayops, drm
   1175 file	dev/ic/vga.c		vga & !vga_rasterconsole	needs-flag
   1176 file	dev/ic/vga_raster.c	vga_rasterconsole		needs-flag
   1177 file	dev/ic/vga_subr.c	vga | vga_rasterconsole
   1178 file	dev/ic/vga_common.c	vga | vga_rasterconsole
   1179 
   1180 # Integraphics Systems IGA168x and CyberPro framebuffers (linear non-VGA mode)
   1181 #
   1182 device	igsfb: wsemuldisplaydev, rasops8, vcons, videomode
   1183 file	dev/ic/igsfb.c			igsfb			needs-flag
   1184 file	dev/ic/igsfb_subr.c		igsfb
   1185 
   1186 device	chipsfb: wsemuldisplaydev, rasops8, vcons, videomode
   1187 file	dev/ic/ct65550.c		chipsfb
   1188 defflag	opt_chipsfb.h	CHIPSFB_DEBUG
   1189 defflag	opt_chipsfb.h	CHIPSFB_WAIT
   1190 
   1191 # STI (hp graphics)
   1192 device	sti: wsemuldisplaydev
   1193 file	dev/ic/sti.c		sti
   1194 
   1195 include "dev/wscons/files.wscons"
   1196 include "dev/rasops/files.rasops"
   1197 include "dev/wsfont/files.wsfont"
   1198 include "dev/wsfb/files.wsfb"
   1199 
   1200 # Attributes which machine-independent bus support can be attached to.
   1201 # These should be defined here, because some of these busses can have
   1202 # devices which provide these attributes, and we'd like to avoid hairy
   1203 # ordering constraints on inclusion of the busses' "files" files.
   1204 #
   1205 define	isabus	{ }			# ISA attachment
   1206 define	eisabus	{ }			# EISA attachment
   1207 define	pcibus	{[bus = -1]}		# PCI attachment
   1208 define	tcbus	{ }			# TurboChannel attachment
   1209 define	mcabus	{ }			# MicroChannel attachment
   1210 define	usbus	{ }			# USB attachment
   1211 define	fwbus	{ }			# IEEE 1394 attachment
   1212 define	vmebus	{ }			# VME bus attachment
   1213 define	acpibus	{ }			# ACPI "bus" attachment
   1214 define	pcmciabus { [controller = -1], [socket = -1]}	# PCMCIA bus attachment
   1215 define	cbbus	{ }			# CardBus attachment
   1216 define	pcmciaslot { }			# PCMCIA slot itself
   1217 define	sdmmcbus { }			# SD/MMC attachment
   1218 
   1219 # We need the USB bus controllers here so different busses can
   1220 # use them in an 'attach-with'.
   1221 #
   1222 
   1223 defparam USB_MEM_RESERVE
   1224 
   1225 define	usbroothub
   1226 file	dev/usb/usbroothub_subr.c	usbroothub
   1227 
   1228 define	usb_dma
   1229 
   1230 # UHCI USB controller
   1231 #
   1232 device	uhci: usbus, usbroothub, usb_dma
   1233 file	dev/usb/uhci.c			uhci			needs-flag
   1234 
   1235 # OHCI USB controller
   1236 #
   1237 device	ohci: usbus, usbroothub, usb_dma
   1238 file	dev/usb/ohci.c			ohci			needs-flag
   1239 
   1240 # EHCI USB2 controller
   1241 #
   1242 device	ehci: usbus, usbroothub, usb_dma
   1243 file	dev/usb/ehci.c			ehci			needs-flag
   1244 
   1245 # xHCI USB3 controller
   1246 #
   1247 device	xhci: usbus, usbroothub, usb_dma
   1248 file	dev/usb/xhci.c			xhci			needs-flag
   1249 
   1250 # Mentor graphics OTG IP
   1251 defflag	opt_motg.h	MOTG_ALLWINNER
   1252 device	motg: usbus, usbroothub, usb_dma
   1253 file	dev/usb/motg.c			motg			needs-flag
   1254 
   1255 # SL811HS/T USB controller
   1256 defflag	opt_slhci.h	SLHCI_DEBUG SLHCI_TRY_LSVH SLHCI_PROFILE_TRANSFER
   1257 device	slhci: usbus, usbroothub
   1258 file	dev/ic/sl811hs.c		slhci			needs-flag
   1259 
   1260 # DesignWare OTG host controller
   1261 #
   1262 include "external/bsd/dwc2/conf/files.dwc2"
   1263 
   1264 # USB HID processing (as used by bluetooth and usb code)
   1265 define	hid
   1266 file	dev/usb/hid.c			hid
   1267 
   1268 # SD Host controller
   1269 device	sdhc: sdmmcbus
   1270 file	dev/sdmmc/sdhc.c		sdhc			needs-flag
   1271 
   1272 # Winbond Integrated Media Reader
   1273 device	wb: sdmmcbus
   1274 file	dev/ic/w83l518d.c		wb
   1275 file	dev/ic/w83l518d_sdmmc.c		wb
   1276 
   1277 # Realtek RTS5209/RTS5229 Card Reader
   1278 device	rtsx: sdmmcbus
   1279 file	dev/ic/rtsx.c			rtsx
   1280 
   1281 # DesignWare SD/MMC host controller
   1282 defflag	opt_dwc_mmc.h	DWC_MMC_DEBUG
   1283 device	dwcmmc: sdmmcbus
   1284 file	dev/ic/dwc_mmc.c		dwcmmc
   1285 
   1286 # ARM PrimeCell PL181 (MMCI) host controller
   1287 device	plmmc: sdmmcbus
   1288 file	dev/ic/pl181.c			plmmc
   1289 
   1290 # Myson MTD803 3-in-1 Fast Ethernet Controller
   1291 device	mtd: arp, ether, ifnet, mii
   1292 file	dev/ic/mtd803.c			mtd
   1293 
   1294 # radio devices, attaches to radio hardware driver
   1295 device	radio
   1296 attach	radio at radiodev
   1297 
   1298 # IEEE 1394 controllers
   1299 # (These need to be here since it will have both PCI and CardBus attachments)
   1300 #
   1301 device	fwohci: fwbus
   1302 
   1303 # Sony Programmable I/O Controller
   1304 device	spic: wsmousedev
   1305 file	dev/ic/spic.c			spic
   1306 
   1307 # IBM CPC700 PowerPC bridge
   1308 define	cpcbus { addr, [irq=-1] }
   1309 device	cpc: cpcbus, pcibus
   1310 file	dev/ic/cpc700.c			cpc
   1311 
   1312 attach	com at cpcbus with com_cpcbus
   1313 file	dev/ic/com_cpcbus.c		com_cpcbus
   1314 
   1315 device	cpctim
   1316 attach	cpctim at cpcbus
   1317 file	dev/ic/timer_cpcbus.c		cpctim
   1318 
   1319 device	cpciic
   1320 attach	cpciic at cpcbus with iic_cpcbus
   1321 file	dev/ic/iic_cpcbus.c		iic_cpcbus
   1322 
   1323 
   1324 # Attributes used by the ISDN subsystem
   1325 #
   1326 define	isdndev		# the ISDN subsystem
   1327 define	passive_isdn	# files needed by passive cards (XXX - protocol
   1328 			# specific)
   1329 define	isdncapi	# ISDN CAPI (http://www.capi.org/)
   1330 
   1331 # The isac found on the Fritz V2.0 Card.
   1332 define	nisacsx
   1333 file	dev/ic/isacsx.c			nisacsx	needs-flag
   1334 
   1335 # The 'standard' isac
   1336 define	nisac
   1337 file	dev/ic/isac.c			nisac	needs-flag
   1338 
   1339 # ISDN cards based on the Siemens ISAC/HSCX chipset (or lookalikes)
   1340 #
   1341 device	isic: isdndev, passive_isdn, nisac
   1342 
   1343 file	dev/ic/isic.c			isic
   1344 file	dev/ic/isic_l1.c		isic|ifpci|ifritz
   1345 file	dev/ic/isic_l1fsm.c		isic|ifpci|ifritz
   1346 file	dev/ic/hscx.c			isic
   1347 file	dev/ic/isic_bchan.c		isic
   1348 
   1349 # (old) Diehl active ISDN cards
   1350 #
   1351 #device	daic: isdndev
   1352 #file	dev/ic/daic.c			daic
   1353 
   1354 # AWM B1/T1
   1355 # XXX: passive_isdn
   1356 device	iavc: isdndev, isdncapi, passive_isdn
   1357 file	dev/ic/iavc.c			iavc
   1358 
   1359 # Broadcom AirForce / Apple Airport Extreme
   1360 device	bwi: arp, ifnet, firmload, wlan
   1361 file	dev/ic/bwi.c			bwi
   1362 
   1363 # DM9000 Ethernet controllers
   1364 #
   1365 device	dme: arp, ether, ifnet
   1366 file	dev/ic/dm9000.c			dme
   1367 
   1368 # legitimate pseudo-devices
   1369 #
   1370 defpseudodev vnd:	disk
   1371 defflag opt_vnd.h	VND_COMPRESSION
   1372 defpseudo ccd:		disk
   1373 defpseudodev cgd:	disk, des, blowfish, cast128
   1374 defpseudodev md:	disk
   1375 defpseudodev fss:	disk
   1376 
   1377 defpseudo pty:		tty
   1378 defpseudo rnd
   1379 defpseudo ksyms
   1380 defpseudo nullcons
   1381 defpseudo lockstat
   1382 defpseudo bio:		sysmon_envsys
   1383 
   1384 defpseudo loop:		ifnet
   1385 defpseudo sl:		ifnet
   1386 defpseudo ppp:		ifnet, bpf_filter
   1387 defpseudo pppoe:	ifnet, ether, sppp
   1388 defpseudo sppp:		ifnet
   1389 defpseudo tun:		ifnet
   1390 defpseudo vlan:		ifnet, ether
   1391 defpseudo bridge:	ifnet, ether
   1392 defpseudo bpfilter:	ifnet, bpf_filter
   1393 defpseudo strip:	ifnet
   1394 defpseudo gre:		ifnet
   1395 defpseudo gif:		ifnet
   1396 defpseudo faith:	ifnet
   1397 defpseudo ifmpls:	ifnet
   1398 defpseudo srt:		ifnet
   1399 defpseudo stf:		ifnet
   1400 defpseudodev tap:	ifnet, ether, arp
   1401 defpseudo carp:		ifnet, ether, arp
   1402 defpseudodev etherip:	ifnet, ether, arp
   1403 
   1404 defpseudo sequencer
   1405 defpseudo clockctl
   1406 
   1407 #
   1408 # Accept filters.  XXX should use another registration/initialization method.
   1409 #
   1410 defpseudo accf_data
   1411 defpseudo accf_http
   1412 
   1413 # ISDN userland pseudo devices
   1414 #
   1415 defpseudo isdntrc:	isdndev, tty
   1416 defpseudo isdnbchan:	isdndev, tty
   1417 defpseudo isdntel:	isdndev, tty
   1418 defpseudo isdnctl:	isdndev, tty
   1419 defpseudo isdn:		isdndev, tty
   1420 
   1421 # ISDN network interfaces
   1422 defpseudo irip:		isdndev, ifnet
   1423 defflag opt_irip.h	IRIP_VJ
   1424 defpseudo ippp:		isdndev, sppp, ifnet
   1425 
   1426 # KTTCP network throughput testing pseudo-device
   1427 defpseudo kttcp
   1428 file	dev/kttcp.c			kttcp		needs-flag
   1429 
   1430 # Veriexec
   1431 defpseudo veriexec
   1432 file	kern/kern_veriexec.c	veriexec
   1433 file	dev/verified_exec.c		veriexec	needs-flag
   1434 
   1435 # driver attach / detach user interface
   1436 defpseudo drvctl
   1437 file	kern/kern_drvctl.c		drvctl		needs-flag
   1438 
   1439 # cpu control
   1440 defpseudo cpuctl
   1441 defflag				CPU_UCODE: firmload
   1442 
   1443 # pass-to-userspace transporter
   1444 defpseudo putter
   1445 file	dev/putter/putter.c		putter
   1446 
   1447 # userspace block/char device drivers
   1448 defpseudo pud
   1449 file	dev/pud/pud.c			pud
   1450 file	dev/pud/pud_dev.c		pud
   1451 
   1452 # device-mapper driver for LVM
   1453 include "dev/dm/files.dm"
   1454 
   1455 #
   1456 # File systems
   1457 #
   1458 include "coda/files.coda"
   1459 include "fs/adosfs/files.adosfs"
   1460 include "fs/cd9660/files.cd9660"
   1461 include "fs/efs/files.efs"
   1462 include "fs/filecorefs/files.filecorefs"
   1463 include "fs/hfs/files.hfs"
   1464 include "fs/msdosfs/files.msdosfs"
   1465 include "fs/nilfs/files.nilfs"
   1466 include "fs/ntfs/files.ntfs"
   1467 include "fs/ptyfs/files.ptyfs"
   1468 include "fs/puffs/files.puffs"
   1469 include "fs/udf/files.udf"
   1470 include "fs/smbfs/files.smbfs"
   1471 include "fs/sysvbfs/files.sysvbfs"
   1472 include "fs/tmpfs/files.tmpfs"
   1473 include "fs/union/files.union"
   1474 include "fs/v7fs/files.v7fs"
   1475 include "miscfs/fdesc/files.fdesc"
   1476 include "miscfs/kernfs/files.kernfs"
   1477 include "miscfs/nullfs/files.nullfs"
   1478 include "miscfs/overlay/files.overlay"
   1479 include "miscfs/procfs/files.procfs"
   1480 include "miscfs/umapfs/files.umapfs"
   1481 include "nfs/files.nfs"
   1482 include "ufs/files.ufs"
   1483 
   1484 #
   1485 # UVM (virtual memory)
   1486 #
   1487 include "uvm/files.uvm"
   1488 
   1489 #
   1490 # Security models
   1491 #
   1492 include "secmodel/files.secmodel"
   1493 
   1494 include "kern/files.kern"
   1495 
   1496 include "net/files.net"
   1497 
   1498 # Game adapter (joystick)
   1499 device	joy
   1500 file	dev/ic/joy.c			joy needs-flag
   1501 
   1502 # process monitor for make(1)
   1503 # normally built as module
   1504 defpseudo filemon
   1505 file	dev/filemon/filemon.c		filemon
   1506 file	dev/filemon/filemon_wrapper.c	filemon
   1507 
   1508 #
   1509 # General Purpose Input/Output framework
   1510 #
   1511 define	onewire_bitbang
   1512 include	"dev/gpio/files.gpio"
   1513 
   1514 include "dev/onewire/files.onewire"
   1515 
   1516 #
   1517 # Pseudo audio device
   1518 #
   1519 include "dev/pad/files.pad"
   1520 
   1521 #
   1522 # Intel 386 Real Mode emulator
   1523 #
   1524 include "lib/libx86emu/files.x86emu"
   1525 
   1526 #
   1527 # "tprof" profiler.
   1528 #
   1529 include	"dev/tprof/files.tprof"
   1530 
   1531 #
   1532 # alternate memory device
   1533 #
   1534 include "dev/altmem/files.altmem"
   1535 
   1536 #
   1537 # Flash subsystem
   1538 #
   1539 include "dev/flash/files.flash"
   1540 
   1541 #
   1542 # NAND subsytem
   1543 #
   1544 include "dev/nand/files.nand"
   1545 
   1546 #
   1547 # NOR subsytem
   1548 #
   1549 include "dev/nor/files.nor"
   1550 
   1551 #
   1552 # iscsi
   1553 #
   1554 include "dev/iscsi/files.iscsi"
   1555 
   1556 #
   1557 # athn
   1558 #
   1559 include "dev/ic/files.athn"
   1560