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