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