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