Home | History | Annotate | Line # | Download | only in conf
files revision 1.570
      1 #	$NetBSD: files,v 1.570 2002/10/11 01:52:04 thorpej Exp $
      2 
      3 #	@(#)files.newconf	7.5 (Berkeley) 5/10/93
      4 
      5 #
      6 # device classes
      7 #
      8 devclass disk
      9 devclass tape
     10 devclass ifnet
     11 devclass tty
     12 
     13 # options understood by the machine-independent part of the kernel
     14 # (note, these are case-sensitive)
     15 #
     16 defflag				INSECURE
     17 defflag				KMEMSTATS
     18 defflag				KTRACE
     19 defflag				SYSTRACE
     20 defparam			MAXUPRC
     21 defparam			RTC_OFFSET
     22 defparam			DEFCORENAME
     23 defflag				UCONSOLE
     24 defflag	opt_pipe.h		PIPE_SOCKETPAIR PIPE_NODIRECT
     25 
     26 defflag	opt_sock_counters.h	SOSEND_COUNTERS
     27 defflag	opt_sosend_loan.h	SOSEND_NO_LOAN
     28 
     29 defflag				MULTIPROCESSOR
     30 
     31 defflag	opt_config.h		INCLUDE_CONFIG_FILE INCLUDE_JUST_CONFIG
     32 
     33 defflag	opt_callout.h		CALLWHEEL_STATS
     34 
     35 defflag	opt_sysv.h		SYSVMSG SYSVSEM	SYSVSHM
     36 defparam opt_sysvparam.h	SHMMAXPGS SEMMNI SEMMNS SEMUME SEMMNU
     37 
     38 defflag	opt_ntp.h		PPS_SYNC NTP
     39 
     40 defparam opt_kmempages.h	NKMEMPAGES KMEMPAGES_MIN NKMEMPAGES_MAX
     41 defflag	opt_malloclog.h		MALLOCLOG
     42 defparam opt_malloclog.h	MALLOCLOGSIZE
     43 defflag	opt_malloc_debug.h	MALLOC_DEBUG
     44 defflag	opt_pool.h		POOL_DIAGNOSTIC
     45 defparam opt_poollog.h		POOL_LOGSIZE
     46 
     47 defflag	opt_revcache.h		NAMECACHE_ENTER_REVERSE
     48 
     49 defflag	opt_execfmt.h		EXEC_AOUT EXEC_COFF EXEC_ECOFF EXEC_ELF32
     50 				EXEC_ELF64 EXEC_MACHO EXEC_SCRIPT
     51 				EXEC_ELF_NOTELESS
     52 
     53 # compatibility options
     54 #
     55 defflag				COMPAT_FREEBSD
     56 defflag				COMPAT_HPUX
     57 defflag				COMPAT_IBCS2
     58 defflag				COMPAT_IRIX
     59 defflag				COMPAT_LINUX
     60 defflag				COMPAT_OSF1
     61 defflag				COMPAT_SUNOS
     62 defflag	opt_compat_svr4.h	COMPAT_SVR4 COMPAT_SVR4_32 SVR4_COMPAT_SOLARIS2
     63 defflag				COMPAT_ULTRIX
     64 defflag				COMPAT_NETBSD32
     65 defflag				COMPAT_AOUT
     66 defflag				COMPAT_AOUT_M68K
     67 defflag				COMPAT_M68K4K
     68 defflag				COMPAT_MACH
     69 defflag				COMPAT_VAX1K
     70 defflag				COMPAT_43
     71 defflag				COMPAT_PECOFF
     72 defflag	opt_compat_netbsd.h	COMPAT_09 COMPAT_10 COMPAT_11 COMPAT_12
     73 				COMPAT_13 COMPAT_14 COMPAT_15 COMPAT_NOMID
     74 
     75 #
     76 # Cryptography support.  Include this early, since several things
     77 # use it.
     78 #
     79 include "crypto/arc4/files.arc4"
     80 include "crypto/des/files.des"
     81 include "crypto/blowfish/files.blowfish"
     82 include "crypto/cast128/files.cast128"
     83 include "crypto/rijndael/files.rijndael"
     84 
     85 #
     86 # Networking protocols
     87 #
     88 include "netatalk/files.netatalk"
     89 include "netccitt/files.netccitt"
     90 include "netinet/files.netinet"
     91 include "netinet/files.ipfilter"
     92 include "netinet6/files.netinet6"
     93 include "netinet6/files.netipsec"
     94 include "netiso/files.netiso"
     95 include "netnatm/files.netnatm"
     96 include "netns/files.netns"
     97 
     98 defflag opt_smb.h		SMB		# SMB network stack
     99 defflag				IPX		# IPX network stack
    100 defflag				PFIL_HOOKS	# pfil(9)
    101 defflag	opt_ppp.h		PPP_DEFLATE PPP_BSDCOMP PPP_FILTER
    102 						# Include deflate or bsd
    103 						# compression, enable pppd
    104 						# packet filtering support
    105 
    106 # networking options
    107 #
    108 defflag				GATEWAY
    109 
    110 defparam			SB_MAX
    111 
    112 # UVM options
    113 #
    114 defflag	opt_uvmhist.h		UVMHIST UVMHIST_PRINT
    115 
    116 # file system options
    117 #
    118 defflag				SOFTDEP			# XXX files.ufs?
    119 defflag				QUOTA			# XXX files.ufs?
    120 defflag				VNODE_OP_NOINLINE
    121 
    122 # buffer cache size options
    123 #
    124 defparam opt_bufcache.h		BUFCACHE BUFPAGES
    125 
    126 # userconf
    127 #
    128 defflag				USERCONF
    129 
    130 #
    131 # Not entirely MI, but present on multiple arch's
    132 #
    133 
    134 # PC-style MBR handling
    135 #
    136 defflag	opt_mbr.h		COMPAT_386BSD_MBRPART
    137 
    138 # debugging options
    139 #
    140 defflag	opt_ddb.h		DDB
    141 defparam opt_ddb.h		DDB_FROMCONSOLE DDB_ONPANIC DDB_HISTORY_SIZE
    142 				DDB_BREAK_CHAR DDB_KEYCODE SYMTAB_SPACE
    143 defflag	opt_kgdb.h		KGDB
    144 defparam opt_kgdb.h		KGDB_DEV KGDB_DEVNAME
    145 				KGDB_DEVADDR KGDB_DEVRATE KGDB_DEVMODE
    146 defflag				LOCKDEBUG
    147 defflag				SYSCALL_DEBUG
    148 defflag	opt_kstack.h		KSTACK_CHECK_MAGIC
    149 
    150 # memory (ram) disk options
    151 #
    152 defflag	opt_md.h		MEMORY_DISK_HOOKS MEMORY_DISK_IS_ROOT
    153 				MEMORY_DISK_DYNAMIC
    154 defparam opt_md.h		MEMORY_DISK_SERVER MEMORY_DISK_ROOT_SIZE
    155 
    156 # Support for hardware performance monitoring counters
    157 #
    158 defflag	opt_perfctrs.h		PERFCTRS
    159 
    160 # generic attributes
    161 #
    162 define	audiobus	{ }
    163 define	midibus		{ }
    164 define	midisyn
    165 define	wdc_base
    166 define	scsi_core
    167 define	scsi		{[channel = -1]}: scsi_core
    168 define	ata		{[channel = -1], [drive = -1]}
    169 define	atapi		{[channel = -1]}
    170 define	radiodev	{ }
    171 
    172 # audio device attributes
    173 #
    174 define	mulaw
    175 define	auconv
    176 define	aurateconv
    177 file	dev/aurateconv.c	aurateconv	needs-flag
    178 
    179 # audio and midi devices, attaches to audio hardware driver
    180 #
    181 device	audio
    182 attach	audio at audiobus
    183 device	midi
    184 attach	midi at midibus
    185 
    186 # IR device support
    187 include	"dev/ir/files.ir"
    188 
    189 # Bluetooth device support
    190 include "dev/bluetooth/files.bluetooth"
    191 
    192 # raster operations attributes
    193 #
    194 define	rasops1
    195 define	rasops2
    196 define	rasops4
    197 define	rasops8
    198 define	rasops15
    199 define	rasops16
    200 define	rasops24
    201 define	rasops32
    202 
    203 # net device attributes - we have generic code for arc(net), ether(net),
    204 # fddi, token ring, atm and eco(net).
    205 #
    206 define	arc
    207 define	atm
    208 define	eco
    209 define	ether
    210 define	fddi
    211 define	hippi
    212 define	ieee1394
    213 define	token
    214 define	sppp
    215 define	wlan: arc4
    216 define	crypto
    217 
    218 # devices ARPing IPv4 pull this in:
    219 #
    220 define	arp
    221 
    222 #
    223 # ALTQ network traffic shaping subsystem
    224 #
    225 include "altq/files.altq"
    226 
    227 #
    228 # IPKDB kernel debugger
    229 #
    230 include "ipkdb/files.ipkdb"
    231 
    232 # Logical disk
    233 #
    234 device	ld: disk
    235 file	dev/ld.c			ld			needs-flag
    236 
    237 #
    238 # System monitoring framework
    239 #
    240 include "dev/sysmon/files.sysmon"
    241 
    242 #
    243 # MII/PHY support for network devices
    244 #
    245 include "dev/mii/files.mii"
    246 
    247 #
    248 # RAIDframe
    249 #
    250 include "dev/raidframe/files.raidframe"
    251 
    252 #
    253 # Hardware-assisted data mover API
    254 #
    255 include "dev/dmover/files.dmover"
    256 
    257 #
    258 # "Chipset" drivers.  These are the bus-independent routines which
    259 # contain the cfdrivers.  Attachments are provided by files.<bus>
    260 #
    261 
    262 # Adaptec AIC-6[32]60 ICs
    263 #
    264 device	aic: scsi
    265 file	dev/ic/aic6360.c		aic
    266 
    267 # SMC 93Cx6 Serial EEPROM devices
    268 #
    269 define	smc93cx6
    270 file	dev/ic/smc93cx6.c		smc93cx6
    271 
    272 # Adaptec 2[789]4X, 394X, aic7770 and aic78[5678]0 SCSI controllers
    273 #
    274 defparam opt_ahc.h		AHC_DEBUG
    275 defflag	opt_ahc.h		AHC_NO_TAGS
    276 device	ahc: scsi
    277 define	ahc_seeprom
    278 define	ahc_aic77xx
    279 file	dev/ic/aic7xxx.c		ahc
    280 file	dev/ic/aic7xxx_seeprom.c	ahc_seeprom
    281 file	dev/ic/aic77xx.c		ahc_aic77xx
    282 
    283 # DPT EATA SCSI controllers
    284 #
    285 device	dpt: scsi
    286 file	dev/ic/dpt.c			dpt
    287 
    288 # Compaq Smart ARRAY controllers
    289 #
    290 device	cac {unit = -1}
    291 file	dev/ic/cac.c			cac
    292 
    293 attach	ld at cac with ld_cac
    294 file	dev/ic/ld_cac.c			ld_cac
    295 
    296 # Mylex DAC960 RAID controllers
    297 #
    298 device	mlx {unit = -1}
    299 file	dev/ic/mlx.c			mlx			needs-flag
    300 
    301 attach	ld at mlx with ld_mlx
    302 file	dev/ic/ld_mlx.c			ld_mlx
    303 
    304 # ICP-Vortex/Intel RAID controllers
    305 #
    306 device	icp {unit = -1}
    307 file	dev/ic/icp.c			icp			needs-flag
    308 
    309 attach	ld at icp with ld_icp
    310 file	dev/ic/ld_icp.c			ld_icp
    311 
    312 device	icpsp: scsi
    313 file	dev/ic/icpsp.c			icpsp
    314 attach	icpsp at icp
    315 
    316 # Adaptec FSA RAID controllers
    317 #
    318 device	aac {unit = -1}
    319 file	dev/ic/aac.c			aac
    320 
    321 attach	ld at aac with ld_aac
    322 file	dev/ic/ld_aac.c			ld_aac
    323 
    324 # AdvanSys 1200A, 1200B and ULTRA SCSI controllers
    325 #
    326 device	adv: scsi
    327 file	dev/ic/adv.c			adv
    328 file	dev/ic/advlib.c			adv
    329 file	dev/ic/advmcode.c		adv
    330 
    331 # AdvanSys ULTRA WIDE SCSI controllers
    332 #
    333 device	adw: scsi
    334 file	dev/ic/adw.c			adw
    335 
    336 # BusLogic MultiMaster and MultiMaster Ultra SCSI controllers
    337 # (Must be declared before AHA to ensure bha probes before aha.
    338 #  Probing AHA first configures bhas as aha, via their AHA
    339 #  hardware-compatibility mode.)
    340 #
    341 device	bha: scsi
    342 file	dev/ic/bha.c			bha
    343 
    344 # Adaptec AHA-154x and AHA-164x controllers
    345 # (must be after bha, see above)
    346 #
    347 device	aha: scsi
    348 file	dev/ic/aha.c			aha
    349 
    350 # Initio INIC-940/950 SCSI controllers
    351 #
    352 device	iha: scsi
    353 file	dev/ic/iha.c			iha
    354 
    355 # Qlogic ISP 10x0 SCSI Controllers
    356 #
    357 defflag	opt_isp.h		ISP_DISABLE_1020_SUPPORT
    358 				ISP_DISABLE_1080_SUPPORT
    359 				ISP_DISABLE_2100_SUPPORT
    360 				ISP_DISABLE_2200_SUPPORT
    361 				ISP_DISABLE_FW ISP_TARGET_MODE
    362 				ISP_FW_CRASH_DUMP
    363 defparam opt_isp.h		ISP_LOGDEFAULT
    364 device	isp: scsi
    365 file	dev/ic/isp.c			isp
    366 file	dev/ic/isp_netbsd.c		isp
    367 file	dev/ic/isp_target.c		isp
    368 
    369 # LSILogic Fusion-MPT I/O Processor SCSI/FC Controllers
    370 #
    371 device	lfmiop: scsi
    372 file	dev/ic/lfmiop.c			lfmiop
    373 
    374 # Symbios/NCR 53c710 SCSI controllers
    375 #
    376 device	osiop: scsi
    377 file	dev/ic/osiop.c			osiop
    378 
    379 # common stuff for siop and esiop
    380 #
    381 define	siop_common
    382 file	dev/ic/siop_common.c		siop_common
    383 
    384 # Symbios/NCR 53c720/53c8xx SCSI controllers
    385 #
    386 device	siop: scsi,siop_common
    387 file	dev/ic/siop.c			siop
    388 defflag	opt_siop.h			SIOP_SYMLED
    389 
    390 device	esiop: scsi,siop_common
    391 file	dev/ic/esiop.c			esiop
    392 
    393 # UltraStor SCSI controllers
    394 #
    395 device	uha: scsi
    396 file	dev/ic/uha.c			uha
    397 
    398 # Aironet PC4500/PC4800
    399 #
    400 device	an: arp, ether, ifnet
    401 file	dev/ic/an.c			an
    402 
    403 # AMD 79c930-based 802.11 cards
    404 #
    405 device	awi: arp, wlan, ifnet
    406 file	dev/ic/awi.c			awi
    407 file	dev/ic/am79c930.c		awi
    408 
    409 # Lucent & Intersil WaveLan IEEE (802.11)
    410 #
    411 device wi: arp, wlan, ifnet
    412 file	dev/ic/wi.c			wi
    413 
    414 # 3Com Etherlink-III Ethernet controller
    415 #
    416 device	ep: arp, ether, ifnet, mii, mii_bitbang
    417 file	dev/ic/elink3.c			ep
    418 
    419 # 3Com EtherLink XL Controller
    420 #
    421 device	ex: arp, ether, ifnet, mii, mii_bitbang
    422 file	dev/ic/elinkxl.c		ex
    423 
    424 # DEC EtherWORKS III (LEMAC) Ethernet controllers
    425 #
    426 device	lc: arp, ether, ifnet
    427 file	dev/ic/lemac.c			lc
    428 
    429 # LANCE and PCnet Ethernet controllers
    430 #
    431 device	le: arp, ether, ifnet
    432 define	le24
    433 define	le32
    434 file	dev/ic/am7990.c			le24
    435 file	dev/ic/am79900.c		le32
    436 file	dev/ic/lance.c			le24 | le32
    437 
    438 # DEC DEPCA-family of LANCE Ethernet controllers
    439 #
    440 device	depca { }: le24
    441 file	dev/ic/depca.c			depca
    442 attach	le at depca with le_depca
    443 
    444 # Sun HME Ethernet controllers
    445 #
    446 device	hme: arp, ether, ifnet, mii
    447 file	dev/ic/hme.c			hme
    448 
    449 # Sun GEM Ethernet controllers
    450 #
    451 device	gem: arp, ether, ifnet, mii
    452 file	dev/ic/gem.c			gem
    453 
    454 # 8390-family Ethernet controllers
    455 #
    456 defflag	opt_ipkdb.h		IPKDB_DP8390
    457 define	dp8390nic
    458 file	dev/ic/dp8390.c			dp8390nic | ipkdb_dp8390
    459 
    460 # National Semiconductor DP83905 AT/LANTIC Ethernet media support
    461 #
    462 define	dp83905
    463 file	dev/ic/dp83905.c		dp83905
    464 
    465 # Macronix MX98905 Ethernet controller
    466 # (use as an attribute for an "ne" bus attachment)
    467 #
    468 define	mx98905
    469 file	dev/ic/mx98905.c		mx98905
    470 
    471 # TROPIC Token-Ring controller
    472 #
    473 device	tr: arp, token, ifnet
    474 file	dev/ic/tropic.c			tr
    475 
    476 # NCR 5380 SCSI Bus Controller
    477 #
    478 define	ncr5380sbc
    479 file	dev/ic/ncr5380sbc.c		ncr5380sbc
    480 device	nca: scsi, ncr5380sbc
    481 
    482 # Sun sc PAL SCSI Bus Controller
    483 #
    484 define	sunscpal
    485 file	dev/ic/sunscpal.c		sunscpal
    486 device	ssc: scsi, sunscpal
    487 
    488 # DEC FDDI Chipset
    489 #
    490 define	pdq
    491 file	dev/ic/pdq.c			pdq
    492 file	dev/ic/pdq_ifsubr.c		pdq
    493 
    494 # Cyclades Cyclom-8/16/32
    495 #
    496 device	cy: tty
    497 file	dev/ic/cy.c			cy			needs-flag
    498 
    499 # Efficient Networks, Inc. ATM interface
    500 #
    501 device	en: atm, ifnet
    502 file	dev/ic/midway.c			en
    503 
    504 # NCR 53x9x or Emulex ESP SCSI Controller
    505 #
    506 define	ncr53c9x
    507 device	esp: scsi, ncr53c9x
    508 file	dev/ic/ncr53c9x.c		ncr53c9x
    509 
    510 # Hitachi HD64570 serial controller
    511 #
    512 define	hd64570
    513 file	dev/ic/hd64570.c		hd64570
    514 
    515 # Riscom/N2 ISA/PCI Sync Serial Controller
    516 #
    517 device	ntwoc: ifnet, hd64570
    518 
    519 # Intel 82586 Ethernet Controller
    520 #
    521 define	i82586
    522 file	dev/ic/i82586.c			i82586
    523 
    524 # Intel 82557/82558/82559 Ethernet Controller
    525 #
    526 device	fxp: ether, ifnet, arp, mii
    527 file	dev/ic/i82557.c			fxp
    528 
    529 # SEEQ 8005 Advanced Ethernet Data Link Controller
    530 #
    531 define	seeq8005
    532 file	dev/ic/seeq8005.c		seeq8005
    533 
    534 # SMC 91Cxx Ethernet Controller
    535 #
    536 device	sm: arp, ether, ifnet, mii, mii_bitbang
    537 file	dev/ic/smc91cxx.c		sm
    538 
    539 # SMC 83C170 EPIC/100 Fast Ethernet Controller
    540 #
    541 device	epic: arp, ether, ifnet, mii
    542 file	dev/ic/smc83c170.c		epic
    543 
    544 # DEC SGEC Second Generation Ethernet Controller
    545 #
    546 define	sgec
    547 file	dev/ic/sgec.c			sgec
    548 
    549 # MB8696x Ethernet Controller
    550 #
    551 define	mb86960
    552 file	dev/ic/mb86960.c		mb86960
    553 
    554 # Generic MB8696x Ethernet Controller driver
    555 #
    556 device	mbe: arp, ether, ifnet, mb86960
    557 
    558 # Interwave Am78C201 audio driver
    559 #
    560 define	interwave
    561 file	dev/ic/interwave.c		interwave
    562 
    563 # TMS 320av110 MPEG2/audio driver
    564 #
    565 define	tms320av110
    566 file	dev/ic/tms320av110.c		tms320av110
    567 
    568 # Novell NE2000-compatible Ethernet cards, based on the
    569 # National Semiconductor DS8390.
    570 #
    571 defflag	opt_ipkdb.h		IPKDB_NE			: IPKDB_DP8390
    572 device	ne: ether, ifnet, arp, dp8390nic, mii
    573 file	dev/ic/ne2000.c			ne | ipkdb_ne
    574 
    575 # 8250/16[45]50-based "com" ports
    576 # XXX In a perfect world, this would be done with attributes
    577 #
    578 defflag	opt_com.h		COM16650 COM_HAYESP COM_DEBUG COM_MPLOCK
    579 device	com { } : tty
    580 file	dev/ic/com.c			com			needs-flag
    581 
    582 # PC-like keyboard controller
    583 #
    584 device	pckbc { [slot = -1] }
    585 file	dev/ic/pckbc.c			pckbc			needs-flag
    586 
    587 # Cirrus Logic CD240[01] 4-port Multi-Protocol Communications Controller
    588 #
    589 device	clmpcc: tty
    590 file	dev/ic/clmpcc.c			clmpcc			needs-flag
    591 
    592 # Device description for i2c bus and i2c eeprom
    593 #
    594 define	i2c
    595 define	i2c_eeprom
    596 
    597 # National Semiconductor LM7[89]
    598 #
    599 device	lm: sysmon_envsys
    600 file	dev/ic/nslm7x.c			lm			needs-flag
    601 
    602 # Essential Communications Corp. HIPPI Interface
    603 #
    604 device	esh: hippi, ifnet
    605 file	dev/ic/rrunner.c		esh			needs-flag
    606 
    607 # SMC 90c26, SMC 90C56 (and 90C66 if in compat mode) chip driver
    608 #
    609 device	bah: ifnet, arc, arp
    610 file	dev/ic/smc90cx6.c		bah
    611 
    612 # OPL2/OPL3 FM synth driver
    613 #
    614 device	opl: midibus, midisyn
    615 file	dev/ic/opl.c			opl
    616 file	dev/ic/oplinstrs.c		opl
    617 
    618 # MPU401 MIDI UART compatibles
    619 #
    620 device	mpu: midibus
    621 file	dev/ic/mpu.c			mpu			needs-flag
    622 
    623 # AD1848 (CS4248, CS4231, AD1845) audio codec support; used by other drivers
    624 #
    625 define	ad1848
    626 file	dev/ic/ad1848.c			ad1848
    627 
    628 # AMD 7930 audio/ISDN codec
    629 #
    630 define	am7930
    631 file	dev/ic/am7930.c			am7930
    632 
    633 # SPARC `SUNW,audiocs'
    634 #
    635 device	audiocs: audiobus, auconv, ad1848
    636 file	dev/ic/cs4231.c			audiocs
    637 
    638 # AC-97 CODECs
    639 #
    640 define	ac97
    641 file	dev/ic/ac97.c			ac97
    642 
    643 # Oki MSM6258 support code
    644 #
    645 define msm6258
    646 file	dev/ic/msm6258.c		msm6258
    647 
    648 # LSI64854 DMA controller back-end
    649 #
    650 define	lsi64854
    651 file	dev/ic/lsi64854.c		lsi64854
    652 
    653 # Cirrus Logic CL-CD180/1864/1865 multi port serial controller back-end
    654 #
    655 define	cd18xx
    656 file	dev/ic/cd18xx.c			cd18xx
    657 
    658 # RealTek 8019/8029 NE2000-compatible network interface subroutines
    659 #
    660 define	rtl80x9
    661 file	dev/ic/rtl80x9.c		rtl80x9
    662 
    663 # RealTek 8129/8139 Ethernet controllers
    664 #
    665 device	rtk: ether, ifnet, arp, mii
    666 file	dev/ic/rtl81x9.c		rtk
    667 
    668 # Common code for ESDI/IDE/etc. controllers
    669 #
    670 device	wdc: ata, atapi, wdc_base
    671 file	dev/ic/wdc.c			wdc_base
    672 
    673 # CHIPS and Technologies 82C7[12][01] Universal Peripheral Controller
    674 # lpt attachment commented out because "device lpt" isn't in this file.
    675 #
    676 device	upc { [offset = -1] }
    677 attach	wdc at upc with wdc_upc
    678 attach	com at upc with com_upc
    679 # attach lpt at upc with lpt_upc
    680 file	dev/ic/upc.c			upc
    681 file	dev/ic/wdc_upc.c		wdc_upc
    682 file	dev/ic/com_upc.c		com_upc
    683 # file	dev/ic/lpt_upc.c		lpt_upc
    684 
    685 # Common code for ISA/PCMCIA (non 802.11) WaveLAN adapters
    686 #
    687 define	wavelan
    688 device	wl: ether, ifnet, arp
    689 file	dev/ic/wavelan.c		wavelan
    690 
    691 # DECchip 21x4x Ethernet controller family, and assorted clones.
    692 #
    693 device	tlp: arp, ether, ifnet, mii, mii_bitbang
    694 file	dev/ic/tulip.c			tlp
    695 
    696 # Adaptec AIC-6915 Ethernet interface
    697 #
    698 device	sf: arp, ether, ifnet, mii
    699 file	dev/ic/aic6915.c		sf
    700 
    701 # Mostek time-of-day clock and NVRAM
    702 #
    703 define	mk48txx
    704 file	dev/ic/mk48txx.c		mk48txx
    705 
    706 # Intersil 7170 time-of-day clock
    707 #
    708 define	intersil7170
    709 file	dev/ic/intersil7170.c		intersil7170
    710 
    711 # National Semiconductor MM58167 time-of-day clock
    712 #
    713 define	mm58167
    714 file	dev/ic/mm58167.c		mm58167
    715 
    716 # D-Link DL10019/10022 NE2000-compatible network interface subroutines
    717 #
    718 define	dl10019
    719 file	dev/ic/dl10019.c		dl10019
    720 
    721 # ASIX AX88190 NE2000-compatible network interface subroutines
    722 #
    723 define	ax88190
    724 file	dev/ic/ax88190.c		ax88190
    725 
    726 # WD/SMC 80x3 family, SMC Elite Ultra [8216], SMC EtherEZ
    727 #
    728 device	we: ether, ifnet, arp, dp8390nic
    729 file	dev/ic/we.c			we
    730 
    731 # Allied-Telesis Ethernet driver based on Fujitsu MB8696xA controllers
    732 #
    733 device	ate: arp, ether, ifnet, mb86960
    734 
    735 # Fujitsu FMV-18x Ethernet driver based on Fujitsu MB8696xA controllers
    736 #
    737 device	fmv: arp, ether, ifnet, mb86960
    738 file	dev/ic/fmv.c			fmv
    739 
    740 # Crystal Semiconductor CS8900, CS8920, and CS8920M Ethernet
    741 #
    742 device	cs: arp, ether, ifnet
    743 file	dev/ic/cs89x0.c			cs
    744 
    745 # Radio device attributes
    746 #
    747 define	tea5757
    748 file dev/ic/tea5757.c			tea5757
    749 define	lm700x
    750 file dev/ic/lm700x.c			lm700x
    751 
    752 # Definitions for wscons
    753 # device attributes: display, display with emulator, keyboard, and mouse
    754 #
    755 define	wsdisplaydev		{[kbdmux = 1]}
    756 define	wsemuldisplaydev	{[console = -1], [kbdmux = 1]}
    757 define	wskbddev		{[console = -1], [mux = 1]}
    758 define	wsmousedev		{[mux = 0]}
    759 # attribute to pull in raster support
    760 #
    761 define	wsrasteremulops
    762 # common PC display functions
    763 #
    764 defflag	opt_pcdisplay.h		PCDISPLAY_SOFTCURSOR
    765 define	pcdisplayops
    766 file	dev/ic/pcdisplay_subr.c	pcdisplayops
    767 file	dev/ic/pcdisplay_chars.c	pcdisplayops
    768 # VGA graphics
    769 #
    770 defparam opt_vga.h		VGA_CONSOLE_SCREENTYPE
    771 defflag opt_vga.h 		VGA_CONSOLE_ATI_BROKEN_FONTSEL
    772 device	vga: wsemuldisplaydev, pcdisplayops
    773 file	dev/ic/vga.c			vga			needs-flag
    774 file	dev/ic/vga_subr.c		vga
    775 # Integraphics Systems IGA168x and CyberPro framebuffers (linear non-VGA mode)
    776 #
    777 device	igsfb: wsemuldisplaydev, wsrasteremulops, rasops8
    778 file	dev/ic/igsfb.c			igsfb
    779 file	dev/ic/igsfb_subr.c		igsfb
    780 
    781 # Attributes which machine-independent bus support can be attached to.
    782 # These should be defined here, because some of these busses can have
    783 # devices which provide these attributes, and we'd like to avoid hairy
    784 # ordering constraints on inclusion of the busses' "files" files.
    785 #
    786 define	isabus	{ }			# ISA attachment
    787 define	eisabus	{ }			# EISA attachment
    788 define	pcibus	{[bus = -1]}		# PCI attachment
    789 define	tcbus	{ }			# TurboChannel attachment
    790 define	mcabus	{ }			# MicroChannel attachment
    791 define	usbus	{ }			# USB attachment
    792 define	fwbus	{[idhi=-1],[idlo=-1]}	# IEEE 1394 attachment
    793 define	vmebus	{ }			# VME bus attachment
    794 define	acpibus	{ }			# ACPI "bus" attachment
    795 define	pcmciabus { [controller = -1], [socket = -1]}	# PCMCIA bus attachment
    796 define	cbbus	{[slot = -1]}		# CardBus attachment
    797 define	pcmciaslot {[slot = -1]}	# PCMCIA slot itself
    798 
    799 # We need the USB bus controllers here so different busses can
    800 # use them in an 'attach-with'.
    801 # UHCI USB controller
    802 #
    803 device	uhci: usbus
    804 file	dev/usb/uhci.c			uhci			needs-flag
    805 
    806 # OHCI USB controller
    807 #
    808 device	ohci: usbus
    809 file	dev/usb/ohci.c			ohci			needs-flag
    810 
    811 # EHCI USB controller
    812 #
    813 device	ehci: usbus
    814 file	dev/usb/ehci.c			ehci			needs-flag
    815 
    816 # SL811HS/T USB controller
    817 defflag	opt_slhci.h	SLHCI_DEBUG	
    818 device	slhci: usbus
    819 file	dev/ic/sl811hs.c		slhci			needs-flag
    820 
    821 # radio devices, attaches to radio hardware driver
    822 device	radio
    823 attach	radio at radiodev
    824 
    825 #
    826 # IEEE 1212 routines
    827 define	ieee1212
    828 file	dev/std/ieee1212.c		ieee1212
    829 
    830 #
    831 # SBP2 routines for IEEE 1394
    832 define	sbp2
    833 file	dev/ieee1394/sbp2.c		sbp2
    834 
    835 # IEEE 1394 controllers
    836 # (These need to be here since it will have both PCI and CardBus attachments)
    837 #
    838 device	fwlynx: fwbus
    839 device	fwohci: fwbus
    840 
    841 # Sony Programmable I/O Controller
    842 device	spic: wsmousedev
    843 file	dev/ic/spic.c			spic
    844 
    845 # IBM CPC700 PowerPC bridge
    846 define	cpcbus { addr, [irq=-1] }
    847 device	cpc: cpcbus, pcibus
    848 file	dev/ic/cpc700.c			cpc
    849 
    850 attach	com at cpcbus with com_cpcbus
    851 file	dev/ic/com_cpcbus.c		com_cpcbus
    852 
    853 device	cpctim
    854 attach	cpctim at cpcbus
    855 file	dev/ic/timer_cpcbus.c		cpctim
    856 
    857 device	cpciic
    858 attach	cpciic at cpcbus with iic_cpcbus
    859 file	dev/ic/iic_cpcbus.c		iic_cpcbus
    860 
    861 
    862 # Attribute used by various things that need BPF's virtual machine
    863 #
    864 define	bpf_filter
    865 defparam opt_bpf.h	BPF_BUFSIZE
    866 
    867 # Attributes used by the ISDN subsystem
    868 #
    869 define	isdndev		# the ISDN subsystem
    870 define	passive_isdn	# files needed by passive cards (XXX - protocol
    871 			# specific)
    872 
    873 # ISDN cards based on the Siemens ISAC/HSCX chipset (or lookalikes)
    874 #
    875 device	isic: isdndev, passive_isdn
    876 
    877 file	dev/ic/isic.c			isic
    878 file	dev/ic/isac.c			isic|ifpci
    879 file	dev/ic/isic_l1.c		isic|ifpci
    880 file	dev/ic/isic_l1fsm.c		isic|ifpci
    881 file	dev/ic/hscx.c			isic
    882 file	dev/ic/isic_bchan.c		isic
    883 
    884 # (old) Diehl active ISDN cards
    885 #
    886 device	daic: isdndev
    887 file	dev/ic/daic.c			daic
    888 
    889 # legitimate pseudo-devices
    890 #
    891 defpseudo vnd:		disk
    892 defpseudo ccd:		disk
    893 defpseudo cgd:		disk, des, blowfish, cast128, rijndael
    894 defpseudo md:		disk
    895 defpseudo netsmb
    896 
    897 defpseudo pty:		tty
    898 defpseudo tb:		tty
    899 defpseudo rnd
    900 
    901 defpseudo loop:		ifnet
    902 defpseudo sl:		ifnet
    903 defpseudo ppp:		ifnet, bpf_filter
    904 defpseudo pppoe:	ifnet, ether, sppp
    905 defpseudo sppp:		ifnet
    906 defpseudo tun:		ifnet
    907 defpseudo vlan:		ifnet, ether
    908 defpseudo bridge:	ifnet, ether
    909 defpseudo bpfilter:	ifnet, bpf_filter
    910 defpseudo strip:	ifnet
    911 defpseudo gre:		ifnet
    912 defpseudo gif:		ifnet
    913 defpseudo faith:	ifnet
    914 defpseudo stf:		ifnet
    915 
    916 defpseudo sequencer
    917 defpseudo clockctl
    918 defpseudo irix_kmem
    919 defpseudo irix_usema
    920 
    921 # ISDN userland pseudo devices
    922 #
    923 defpseudo isdntrc:	isdndev, tty
    924 defpseudo isdnbchan:	isdndev, tty
    925 defpseudo isdntel:	isdndev, tty
    926 defpseudo isdnctl:	isdndev, tty
    927 defpseudo isdn:		isdndev, tty
    928 
    929 # ISDN network interfaces
    930 defpseudo irip:		isdndev, ifnet
    931 defpseudo ippp:		isdndev, sppp, ifnet
    932 
    933 # KTTCP network throughput testing pseudo-device
    934 defpseudo kttcp
    935 file	dev/kttcp.c			kttcp		needs-flag
    936 
    937 #
    938 # File systems
    939 #
    940 include "adosfs/files.adosfs"
    941 include "coda/files.coda"
    942 include "filecorefs/files.filecorefs"
    943 include "fs/smbfs/files.smbfs"
    944 include "isofs/cd9660/files.cd9660"
    945 include "miscfs/fdesc/files.fdesc"
    946 include "miscfs/kernfs/files.kernfs"
    947 include "miscfs/nullfs/files.nullfs"
    948 include "miscfs/overlay/files.overlay"
    949 include "miscfs/portal/files.portal"
    950 include "miscfs/procfs/files.procfs"
    951 include "miscfs/umapfs/files.umapfs"
    952 include "miscfs/union/files.union"
    953 include "msdosfs/files.msdosfs"
    954 include "nfs/files.nfs"
    955 include "ntfs/files.ntfs"
    956 include "ufs/files.ufs"
    957 
    958 #
    959 # kernel sources
    960 #
    961 file	ddb/db_access.c			ddb | kgdb
    962 file	ddb/db_aout.c			ddb
    963 file	ddb/db_break.c			ddb
    964 file	ddb/db_command.c		ddb
    965 file	ddb/db_elf.c			ddb
    966 file	ddb/db_examine.c		ddb
    967 file	ddb/db_expr.c			ddb
    968 file	ddb/db_input.c			ddb
    969 file	ddb/db_lex.c			ddb
    970 file	ddb/db_output.c			ddb
    971 file	ddb/db_print.c			ddb
    972 file	ddb/db_run.c			ddb | kgdb
    973 file	ddb/db_sym.c			ddb
    974 file	ddb/db_trap.c			ddb
    975 file	ddb/db_variables.c		ddb
    976 file	ddb/db_watch.c			ddb
    977 file	ddb/db_write_cmd.c		ddb
    978 file	ddb/db_xxx.c			ddb
    979 file	dev/auconv.c			auconv
    980 file	dev/audio.c			audio | midi | midibus	needs-flag
    981 file	dev/ccd.c			ccd			needs-flag
    982 file	dev/cgd.c			cgd			needs-flag
    983 file	dev/cgd_crypto.c		cgd
    984 file	dev/clockctl.c			clockctl		needs-flag
    985 file	dev/dksubr.c			cgd
    986 file	dev/i2c/i2c_bus.c		i2c
    987 file	dev/i2c/i2c_eeprom.c		i2c_eeprom
    988 file	dev/md.c			md			needs-count
    989 file	dev/midi.c			midi | midibus		needs-flag
    990 file	dev/midisyn.c			midisyn
    991 file	dev/mm.c
    992 file	dev/mulaw.c			mulaw
    993 file	dev/radio.c			radio			needs-flag
    994 file	dev/rnd.c			rnd			needs-flag
    995 file	dev/rndpool.c			rnd			needs-flag
    996 file	dev/sequencer.c			sequencer		needs-flag
    997 file	dev/vnd.c			vnd			needs-flag
    998 file	kern/core_elf32.c		exec_elf32
    999 file	kern/core_elf64.c		exec_elf64
   1000 file	kern/core_netbsd.c
   1001 file	kern/cnmagic.c
   1002 file	kern/exec_aout.c		exec_aout
   1003 file	kern/exec_conf.c
   1004 file	kern/exec_ecoff.c		exec_ecoff
   1005 file	kern/exec_elf32.c		exec_elf32
   1006 file	kern/exec_elf64.c		exec_elf64
   1007 file	kern/exec_elf_common.c		exec_elf32 | exec_elf64
   1008 file	kern/exec_macho.c		exec_macho
   1009 file	kern/exec_script.c		exec_script
   1010 file	kern/exec_subr.c
   1011 file	kern/init_main.c
   1012 file	kern/init_sysent.c
   1013 file	kern/kern_acct.c
   1014 file	kern/kern_allocsys.c
   1015 file	kern/kern_clock.c
   1016 file	kern/kern_descrip.c
   1017 file	kern/kern_exec.c
   1018 file	kern/kern_exit.c
   1019 file	kern/kern_fork.c
   1020 file	kern/kern_kthread.c
   1021 file	kern/kern_ktrace.c
   1022 file	kern/kern_systrace.c		systrace
   1023 file	kern/kern_lkm.c			lkm
   1024 file	kern/kern_lock.c
   1025 file	kern/kern_malloc.c
   1026 file	kern/kern_malloc_debug.c	malloc_debug
   1027 file	kern/kern_ntptime.c
   1028 file	kern/kern_physio.c
   1029 file	kern/kern_proc.c
   1030 file	kern/kern_prot.c
   1031 file	kern/kern_ras.c
   1032 file	kern/kern_resource.c
   1033 file	kern/kern_sig.c
   1034 file	kern/kern_subr.c
   1035 file	kern/kern_synch.c
   1036 file	kern/kern_sysctl.c
   1037 file	kern/kern_time.c
   1038 file	kern/kern_xxx.c
   1039 file	kern/kgdb_stub.c		kgdb
   1040 file	kern/subr_autoconf.c
   1041 file	kern/subr_devsw.c
   1042 file	kern/subr_disk.c
   1043 file	kern/subr_extent.c
   1044 file	kern/subr_log.c
   1045 file	kern/subr_pool.c
   1046 file	kern/subr_prf.c
   1047 file	kern/subr_prof.c
   1048 file	kern/subr_prop.c
   1049 file	kern/subr_userconf.c		userconf
   1050 file	kern/subr_xxx.c
   1051 file	kern/sys_generic.c
   1052 file	kern/sys_pipe.c			!pipe_socketpair
   1053 file	kern/sys_pmc.c
   1054 file	kern/sys_process.c
   1055 file	kern/sys_socket.c
   1056 file	kern/syscalls.c			syscall_debug
   1057 file	kern/sysv_ipc.c			sysvshm | sysvsem | sysvmsg
   1058 file	kern/sysv_msg.c			sysvmsg
   1059 file	kern/sysv_sem.c			sysvsem
   1060 file	kern/sysv_shm.c			sysvshm
   1061 file	kern/tty.c
   1062 file	kern/tty_conf.c
   1063 file	kern/tty_pty.c			pty			needs-flag
   1064 file	kern/tty_subr.c
   1065 file	kern/tty_tb.c			tb			needs-count
   1066 file	kern/tty_tty.c
   1067 file	kern/uipc_domain.c
   1068 file	kern/uipc_mbuf.c
   1069 file	kern/uipc_mbuf2.c
   1070 file	kern/uipc_proto.c
   1071 file	kern/uipc_socket.c
   1072 file	kern/uipc_socket2.c
   1073 file	kern/uipc_syscalls.c
   1074 file	kern/uipc_usrreq.c
   1075 file	kern/vfs_bio.c
   1076 file	kern/vfs_cache.c
   1077 file	kern/vfs_getcwd.c
   1078 file	kern/vfs_init.c
   1079 file	kern/vfs_lockf.c
   1080 file	kern/vfs_lookup.c
   1081 file	kern/vfs_subr.c
   1082 file	kern/vfs_syscalls.c
   1083 file	kern/vfs_vnops.c
   1084 file	kern/vnode_if.c
   1085 file	miscfs/deadfs/dead_vnops.c
   1086 file	miscfs/fifofs/fifo_vnops.c
   1087 file	miscfs/genfs/genfs_vnops.c
   1088 file	miscfs/genfs/layer_subr.c	nullfs | overlay | umapfs | lkm
   1089 file	miscfs/genfs/layer_vfsops.c	nullfs | overlay | umapfs | lkm
   1090 file	miscfs/genfs/layer_vnops.c	nullfs | overlay | umapfs | lkm
   1091 file	miscfs/specfs/spec_vnops.c
   1092 file	miscfs/syncfs/sync_subr.c
   1093 file	miscfs/syncfs/sync_vnops.c
   1094 file	net/bpf.c			bpfilter		needs-count
   1095 file	net/bpf_filter.c		bpf_filter
   1096 file	net/bsd-comp.c			ppp & ppp_bsdcomp
   1097 file	net/if.c
   1098 file	net/if_arcsubr.c		arc			needs-flag
   1099 file	net/if_atmsubr.c		atm
   1100 file	net/if_bridge.c			bridge			needs-flag
   1101 file	net/bridgestp.c			bridge
   1102 file	net/if_ecosubr.c		eco
   1103 file	net/if_ethersubr.c		ether | fddi | netatalk | token |
   1104 					    wlan
   1105 file	net/if_faith.c			faith & inet & inet6	needs-flag
   1106 file	net/if_fddisubr.c		fddi			needs-flag
   1107 file	net/if_gif.c			gif			needs-flag
   1108 file	net/if_gre.c			gre			needs-flag
   1109 file	net/if_hippisubr.c		hippi			needs-flag
   1110 file	net/if_ieee1394subr.c		ieee1394
   1111 file	net/if_ieee80211subr.c		wlan
   1112 file	net/if_loop.c			loop			needs-count
   1113 file	net/if_media.c
   1114 file	net/if_ppp.c			ppp			needs-count
   1115 file	net/if_stf.c			stf & inet & inet6	needs-flag
   1116 file	net/if_sl.c			sl			needs-count
   1117 file	net/if_spppsubr.c		sppp
   1118 file	net/if_strip.c			strip			needs-count
   1119 file	net/if_tokensubr.c		token			needs-flag
   1120 file	net/if_tun.c			tun			needs-flag
   1121 file	net/if_vlan.c			vlan			needs-flag
   1122 file	net/if_pppoe.c			pppoe			needs-flag
   1123 #file	net/net_osdep.c
   1124 file	net/pfil.c			pfil_hooks | ipfilter
   1125 file	net/ppp-deflate.c		ppp & ppp_deflate
   1126 file	net/ppp_tty.c			ppp
   1127 file	net/radix.c
   1128 file	net/raw_cb.c
   1129 file	net/raw_usrreq.c
   1130 file	net/route.c
   1131 file	net/rtsock.c
   1132 file	net/slcompress.c		sl | ppp | strip | irip
   1133 file	net/zlib.c			(ppp & ppp_deflate) | ipsec
   1134 file	netinet/if_arp.c		arp | netatalk		needs-flag
   1135 file	netinet/if_atm.c		atm
   1136 file	netinet/in_gif.c		gif & inet
   1137 file	netinet/ip_ecn.c		ipsec | gif | stf
   1138 file	netinet/ip_encap.c		inet | inet6
   1139 file	netinet/ip_gre.c		inet & gre
   1140 file	netinet6/in6_gif.c		gif & inet6
   1141 file	netsmb/iconv.c			netsmb
   1142 file	netsmb/smb_conn.c		netsmb	needs-count
   1143 file	netsmb/smb_crypt.c		netsmb	needs-count
   1144 file	netsmb/smb_dev.c		netsmb	needs-count
   1145 file	netsmb/smb_iod.c		netsmb	needs-count
   1146 file	netsmb/smb_rq.c			netsmb	needs-count
   1147 file	netsmb/smb_smb.c		netsmb	needs-count
   1148 file	netsmb/smb_subr.c		netsmb	needs-count
   1149 file	netsmb/smb_trantcp.c		netsmb	needs-count
   1150 file	netsmb/smb_usr.c		netsmb	needs-count
   1151 file	netsmb/subr_mchain.c		netsmb
   1152 
   1153 file	uvm/uvm_amap.c
   1154 file	uvm/uvm_anon.c
   1155 file	uvm/uvm_aobj.c
   1156 file	uvm/uvm_bio.c
   1157 file	uvm/uvm_device.c
   1158 file	uvm/uvm_fault.c
   1159 file	uvm/uvm_glue.c
   1160 file	uvm/uvm_init.c
   1161 file	uvm/uvm_io.c
   1162 file	uvm/uvm_km.c
   1163 file	uvm/uvm_loan.c
   1164 file	uvm/uvm_map.c
   1165 file	uvm/uvm_meter.c
   1166 file	uvm/uvm_mmap.c
   1167 file	uvm/uvm_page.c
   1168 file	uvm/uvm_pager.c
   1169 file	uvm/uvm_pdaemon.c
   1170 file	uvm/uvm_pglist.c
   1171 file	uvm/uvm_stat.c
   1172 file	uvm/uvm_swap.c
   1173 file	uvm/uvm_unix.c
   1174 file	uvm/uvm_user.c
   1175 file	uvm/uvm_vnode.c
   1176 
   1177 file	netisdn/i4b_ctl.c		isdnctl			needs-flag
   1178 file	netisdn/i4b_isppp.c		ippp			needs-count
   1179 file	netisdn/i4b_ipr.c		irip			needs-count
   1180 file	netisdn/i4b_rbch.c		isdnbchan		needs-count
   1181 file	netisdn/i4b_tel.c		isdntel			needs-count
   1182 file	netisdn/i4b_trace.c		isdntrc			needs-count
   1183 
   1184 file	netisdn/i4b_mbuf.c		passive_isdn
   1185 file	netisdn/i4b_l2.c		passive_isdn
   1186 file	netisdn/i4b_l2fsm.c		passive_isdn
   1187 file	netisdn/i4b_uframe.c		passive_isdn
   1188 file	netisdn/i4b_tei.c		passive_isdn
   1189 file	netisdn/i4b_sframe.c		passive_isdn
   1190 file	netisdn/i4b_iframe.c		passive_isdn
   1191 file	netisdn/i4b_l2timer.c		passive_isdn
   1192 file	netisdn/i4b_util.c		passive_isdn
   1193 file	netisdn/i4b_lme.c		passive_isdn
   1194 # Q.931 handler
   1195 file	netisdn/i4b_q931.c		passive_isdn
   1196 file	netisdn/i4b_q932fac.c		passive_isdn
   1197 file	netisdn/i4b_l3fsm.c		passive_isdn
   1198 file	netisdn/i4b_l3timer.c		passive_isdn
   1199 file	netisdn/i4b_l2if.c		passive_isdn
   1200 file	netisdn/i4b_l4if.c		passive_isdn
   1201 # isdn device driver, interface to isdnd
   1202 file	netisdn/i4b_i4bdrv.c		isdn			needs-flag
   1203 file	netisdn/i4b_l4.c		isdndev			needs-flag
   1204 file	netisdn/i4b_l4mgmt.c		isdndev			needs-flag
   1205 file	netisdn/i4b_l4timer.c		isdndev			needs-flag
   1206 
   1207 # Game adapter (joystick)
   1208 device	joy
   1209 file	dev/ic/joy.c			joy needs-flag
   1210