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