11.118Sthorpej# $NetBSD: GENERIC,v 1.118 2025/10/13 14:49:16 thorpej Exp $ 21.1Sgavan# 31.37Sabs# GENERIC machine description file 41.1Sgavan# 51.37Sabs# This machine description file is used to generate the default NetBSD 61.37Sabs# kernel. The generic kernel does not include all options, subsystems 71.37Sabs# and device drivers, but should be useful for most applications. 81.37Sabs# 91.37Sabs# The machine description file can be customised for your specific 101.37Sabs# machine to reduce the kernel size and improve its performance. 111.37Sabs# 121.37Sabs# For further information on compiling NetBSD kernels, see the config(8) 131.37Sabs# man page. 141.37Sabs# 151.37Sabs# For further information on hardware support for this architecture, see 161.37Sabs# the intro(4) man page. For further information about kernel options 171.37Sabs# for this architecture, see the options(4) man page. For an explanation 181.37Sabs# of each device driver in this file see the section 4 man page for the 191.37Sabs# device. 201.1Sgavan 211.1Sgavaninclude "arch/iyonix/conf/std.iyonix" 221.1Sgavan 231.1Sgavanoptions INCLUDE_CONFIG_FILE # embed config file in kernel binary 241.1Sgavan 251.118Sthorpej#ident "GENERIC-$Revision: 1.118 $" 261.1Sgavan 271.37Sabsmaxusers 32 # estimated number of users 281.1Sgavan 291.96Smrgoptions MSGBUFSIZE=65536 301.1Sgavan 311.1Sgavan# CPU options 321.1Sgavan 331.1Sgavan# For XScale systems 341.1Sgavanoptions CPU_XSCALE_80321 # Support the XScale core 351.1Sgavanmakeoptions CPUFLAGS="-mcpu=xscale" 361.1Sgavan 371.1Sgavan# Architecture options 381.1Sgavanoptions XSCALE_CACHE_READ_WRITE_ALLOCATE 391.1Sgavan#options HZ=512 401.1Sgavan 411.37Sabs# Standard system options 421.1Sgavan 431.37Sabsoptions RTC_OFFSET=0 # hardware clock is this many mins. west of GMT 441.37Sabs#options NTP # NTP phase/frequency locked loop 451.1Sgavan 461.37Sabs#options KTRACE # system call tracing via ktrace(1) 471.1Sgavan 481.1Sgavan 491.1Sgavan#options SYSVMSG # System V-like message queues 501.1Sgavan#options SYSVSEM # System V-like semaphores 511.1Sgavan#options SYSVSHM # System V-like memory sharing 521.1Sgavan 531.1Sgavan# Device options 541.1Sgavan 551.1Sgavan# Console options. The default console is speed is 115200 baud. 561.1Sgavan#options CONSPEED=9600 # Console speed 571.1Sgavan 581.1Sgavan# Miscellaneous kernel options 591.1Sgavanoptions KTRACE # system call tracing, a la ktrace(1) 601.1Sgavanoptions IRQSTATS # manage IRQ statistics 611.1Sgavan#options SCSIVERBOSE # Verbose SCSI errors 621.1Sgavanoptions PCIVERBOSE # Verbose PCI descriptions 631.1Sgavanoptions MIIVERBOSE # Verbose MII autoconfuration messages 641.1Sgavan#options PCI_CONFIG_DUMP # verbosely dump PCI config space 651.37Sabs 661.1Sgavanoptions USERCONF # userconf(4) support 671.37Sabs#options PIPE_SOCKETPAIR # smaller, but slower pipe(2) 681.37Sabs#options SYSCTL_INCLUDE_DESCR # Include sysctl descriptions in kernel 691.1Sgavan 701.1Sgavan# Development and Debugging options 711.1Sgavan 721.97Ssevan# Alternate buffer queue strategies for better responsiveness under high 731.97Ssevan# disk I/O load. 741.37Sabs#options BUFQ_READPRIO 751.107Ssevanoptions BUFQ_PRIOCSCAN 761.37Sabs 771.37Sabs# Diagnostic/debugging support options 781.37Sabs#options DIAGNOSTIC # expensive kernel consistency checks 791.37Sabs#options DEBUG # expensive debugging checks/support 801.37Sabsoptions DDB # in-kernel debugger 811.82Sszptvlfn#options DDB_ONPANIC=1 # see also sysctl(7): `ddb.onpanic' 821.37Sabsoptions DDB_HISTORY_SIZE=512 # enable history editing in DDB 831.37Sabs#options DDB_KEYCODE=0x40 841.37Sabs#options KGDB # remote debugger 851.37Sabs#options KGDB_DEVNAME="\"com\"",KGDB_DEVADDR=0x3f8,KGDB_DEVRATE=9600 861.105Smacallan#makeoptions DEBUG="-g" # compile full symbol table 871.85Sjoergmakeoptions COPY_SYMTAB=1 881.111Sskrll#options UVMHIST # kernhist for uvm/pmap subsystems 891.1Sgavan#options VERBOSE_INIT_ARM # verbose bootstraping messages 901.1Sgavan 911.37Sabs#options PMAP_INCLUDE_PTE_SYNC 921.37Sabs#options LOCKDEBUG 931.37Sabs 941.37Sabs 951.37Sabs# Compatibility options 961.96Smrg 971.105Smacallaninclude "conf/compat_netbsd70.config" 981.96Smrgoptions COMPAT_NETBSD32 # allow running arm (e.g. non-earm) binaries 991.37Sabs 1001.37Sabs# File systems 1011.37Sabsfile-system FFS # UFS 1021.37Sabs#file-system EXT2FS # second extended file system (linux) 1031.37Sabs#file-system LFS # log-structured file system 1041.37Sabs#file-system MFS # memory file system 1051.37Sabsfile-system NFS # Network File System client 1061.37Sabs#file-system NTFS # Windows/NT file system (experimental) 1071.37Sabsfile-system CD9660 # ISO 9660 + Rock Ridge file system 1081.37Sabsfile-system MSDOSFS # MS-DOS file system 1091.37Sabs#file-system FDESC # /dev/fd 1101.105Smacallanfile-system KERNFS # /kern 1111.37Sabs#file-system NULLFS # loopback file system 1121.37Sabs#file-system OVERLAY # overlay file system 1131.105Smacallanfile-system PROCFS # /proc 1141.37Sabs#file-system UMAPFS # NULLFS + uid and gid remapping 1151.37Sabs#file-system UNION # union file system 1161.37Sabs#file-system CODA # Coda File System; also needs vcoda (below) 1171.105Smacallanfile-system PTYFS # /dev/ptm support 1181.105Smacallanfile-system TMPFS # Efficient memory file-system 1191.37Sabs#file-system UDF # experimental - OSTA UDF CD/DVD file-system 1201.37Sabs#file-system HFS # experimental - Apple HFS+ (read-only) 1211.37Sabsfile-system FILECORE # Acorn filecore file system 1221.37Sabs 1231.37Sabs# File system options 1241.114Ssimonb#options FFS_EI # FFS Endian Independent support 1251.114Ssimonboptions FFS_NO_SNAPSHOT # No FFS snapshot support 1261.62Sbouyer#options QUOTA # legacy UFS quotas 1271.62Sbouyer#options QUOTA2 # new, in-filesystem UFS quotas 1281.114Ssimonb#options UFS_DIRHASH # UFS Large Directory Hashing 1291.114Ssimonb#options UFS_EXTATTR # Extended attribute support for UFS1 1301.69Sdhollandoptions WAPBL # File system journaling support 1311.114Ssimonb#options NFSSERVER # Network File System server 1321.37Sabs 1331.37Sabs# Networking options 1341.37Sabs#options GATEWAY # packet forwarding 1351.37Sabsoptions INET # IP + ICMP + TCP + UDP 1361.105Smacallanoptions INET6 # IPV6 1371.37Sabs#options IPSEC # IP security 1381.37Sabs#options IPSEC_DEBUG # debug for IP security 1391.37Sabs#options MROUTING # IP multicast routing 1401.37Sabs#options PIM # Protocol Independent Multicast 1411.37Sabs#options NETATALK # AppleTalk networking protocols 1421.37Sabs#options PPP_BSDCOMP # BSD-Compress compression support for PPP 1431.37Sabs#options PPP_DEFLATE # Deflate compression support for PPP 1441.37Sabs#options PPP_FILTER # Active filter support for PPP (requires bpf) 1451.37Sabs#options TCP_DEBUG # Record last TCP_NDEBUG packets with SO_DEBUG 1461.37Sabs 1471.37Sabs#options ALTQ # Manipulate network interfaces' output queues 1481.37Sabs#options ALTQ_BLUE # Stochastic Fair Blue 1491.37Sabs#options ALTQ_CBQ # Class-Based Queueing 1501.37Sabs#options ALTQ_CDNR # Diffserv Traffic Conditioner 1511.37Sabs#options ALTQ_FIFOQ # First-In First-Out Queue 1521.37Sabs#options ALTQ_FLOWVALVE # RED/flow-valve (red-penalty-box) 1531.37Sabs#options ALTQ_HFSC # Hierarchical Fair Service Curve 1541.37Sabs#options ALTQ_LOCALQ # Local queueing discipline 1551.37Sabs#options ALTQ_PRIQ # Priority Queueing 1561.37Sabs#options ALTQ_RED # Random Early Detection 1571.37Sabs#options ALTQ_RIO # RED with IN/OUT 1581.37Sabs#options ALTQ_WFQ # Weighted Fair Queueing 1591.37Sabs 1601.37Sabs 1611.37Sabsoptions NFS_BOOT_DHCP,NFS_BOOT_BOOTPARAM 1621.37Sabs 1631.105Smacallan#options DKWEDGE_AUTODISCOVER 1641.105Smacallan#options DKWEDGE_METHOD_BSDLABEL 1651.105Smacallan#options DKWEDGE_METHOD_MBR 1661.105Smacallan 1671.105Smacallanoptions INSECURE 1681.105Smacallan 1691.37Sabs# Kernel root file system and dump configuration. 1701.37Sabsconfig netbsd root on ? type ? 1711.105Smacallan#config netbsd root on wd1a type ffs 1721.105Smacallan#config netbsd root on wm0 type nfs 1731.105Smacallan#config netbsd root on "wedge:system/a" type ffs 1741.1Sgavan 1751.37Sabs# 1761.37Sabs# Device configuration 1771.37Sabs# 1781.1Sgavan 1791.37Sabsmainbus0 at root 1801.1Sgavan 1811.37Sabscpu0 at mainbus? 1821.1Sgavan 1831.1Sgavan# i80321 I/O Processor peripheral support 1841.1Sgavaniopxs* at mainbus? 1851.1Sgavan 1861.1Sgavaniopaau* at iopxs? # Application Accelerator Unit 1871.110Sskrlliopiic* at iopxs? # I2C Controller Unit(s) 1881.1Sgavaniic0 at iopiic? 1891.1Sgavaniic1 at iopiic? 1901.1Sgavaniopwdog* at iopxs? # Watchdog timer 1911.1Sgavanpci0 at iopxs? bus ? # PCI/PCI-X support 1921.1Sgavan 1931.55Sgavan# The curious can see their RAM timings. 1941.55Sgavanspdmem* at iic1 addr 0x56 1951.55Sgavan 1961.118Sthorpej# onboard RTC. 1971.105Smacallandsrtc0 at iic0 addr 0x68 1981.105Smacallan 1991.1Sgavan# PCI bridges 2001.37Sabsppb* at pci? dev ? function ? # PCI-PCI bridges 2011.37Sabspci* at ppb? bus ? 2021.37Sabs# XXX 'puc's aren't really bridges, but there's no better place for them here 2031.37Sabs#puc* at pci? dev ? function ? # PCI "universal" comm. cards 2041.1Sgavan 2051.55Sgavan#options COMCONSOLE 2061.55Sgavan 2071.1Sgavan# VGA 2081.1Sgavan#vga* at pci? dev ? function ? 2091.55Sgavangenfb* at pci? dev ? function ? 2101.105Smacallan#options GENFB_PCI_DEBUG 2111.105Smacallan#gffb* at pci? dev ? function ? 2121.105Smacallan 2131.105Smacallan# these exist but aren't configured by RISC OS 2141.105Smacallan#alipm* at pci? 2151.105Smacallan#iic* at alipm? 2161.55Sgavan 2171.55Sgavan# Display 2181.55Sgavanwsdisplay0 at wsemuldisplaydev? console 1 2191.55Sgavanwsdisplay* at wsemuldisplaydev? 2201.55Sgavan 2211.105Smacallan#options WSEMUL_SUN # sun terminal emulation 2221.105Smacallanoptions WSEMUL_VT100 # vt100 terminal emulation 2231.105Smacallanoptions WS_DEFAULT_FG=WSCOL_BLACK 2241.105Smacallanoptions WS_DEFAULT_BG=WSCOL_LIGHT_WHITE 2251.105Smacallanoptions WS_KERNEL_FG=WSCOL_GREEN 2261.105Smacallanoptions WS_KERNEL_BG=WSCOL_LIGHT_WHITE 2271.105Smacallanoptions WSDISPLAY_COMPAT_PCVT # emulate some ioctls 2281.105Smacallanoptions WSDISPLAY_COMPAT_SYSCONS # emulate some ioctls 2291.105Smacallanoptions WSDISPLAY_COMPAT_USL # VT handling 2301.105Smacallanoptions WSDISPLAY_COMPAT_RAWKBD # can get raw scancodes 2311.105Smacallan#options WSDISPLAY_DEFAULTSCREENS=4 2321.105Smacallanoptions FONT_GO_MONO12x23 2331.105Smacallanoptions WSDISPLAY_SCROLLSUPPORT 2341.105Smacallanoptions VCONS_DRAW_INTR 2351.105Smacallanoptions RASOPS_DEFAULT_WIDTH=100 2361.105Smacallanoptions RASOPS_DEFAULT_HEIGHT=30 2371.37Sabs 2381.1Sgavan# IDE and related devices 2391.1Sgavan# PCI IDE controllers - see pciide(4) for supported hardware. 2401.1Sgavan# The 0x0001 flag force the driver to use DMA, even if the driver doesn't know 2411.1Sgavan# how to set up DMA modes for this chip. This may work, or may cause 2421.1Sgavan# a machine hang with some controllers. 2431.105Smacallan#pciide* at pci? dev ? function ? flags 0x0000 # GENERIC pciide driver 2441.1Sgavanaceride* at pci? dev ? function ? # Acer Lab IDE controllers 2451.105Smacallan#mvsata* at pci? dev ? function ? 2461.37Sabs 2471.1Sgavan# ATA (IDE) bus support 2481.1Sgavanatabus* at ata? 2491.37Sabs#options ATADEBUG 2501.1Sgavan 2511.1Sgavan# IDE drives 2521.1Sgavan# Flags are used only with controllers that support DMA operations 2531.1Sgavan# and mode settings (e.g. some pciide controllers) 2541.1Sgavan# The lowest order four bits (rightmost digit) of the flags define the PIO 2551.1Sgavan# mode to use, the next set of four bits the DMA mode and the third set the 2561.1Sgavan# UltraDMA mode. For each set of four bits, the 3 lower bits define the mode 2571.1Sgavan# to use, and the last bit must be 1 for this setting to be used. 2581.1Sgavan# For DMA and UDMA, 0xf (1111) means 'disable'. 2591.1Sgavan# 0x0fac means 'use PIO mode 4, DMA mode 2, disable UltraDMA'. 2601.1Sgavan# (0xc=1100, 0xa=1010, 0xf=1111) 2611.1Sgavan# 0x0000 means "use whatever the drive claims to support". 2621.1Sgavanwd* at atabus? drive ? flags 0x0000 2631.1Sgavan 2641.1Sgavan# ATAPI bus support 2651.1Sgavanatapibus* at atapi? 2661.1Sgavan 2671.1Sgavan# ATAPI devices 2681.1Sgavan# flags have the same meaning as for IDE drives. 2691.1Sgavan# XXX No DMA on IDE devices for now 2701.1Sgavancd* at atapibus? drive ? flags 0x0ff0 # ATAPI CD-ROM drives 2711.1Sgavansd* at atapibus? drive ? flags 0x0000 # ATAPI disk drives 2721.1Sgavanst* at atapibus? drive ? flags 0x0000 # ATAPI tape drives 2731.1Sgavanuk* at atapibus? drive ? flags 0x0000 # ATAPI unknown 2741.1Sgavan 2751.37Sabs 2761.37Sabs# Network Interfaces 2771.37Sabs 2781.105Smacallan# onboard ethernet 2791.1Sgavanwm* at pci? dev ? function ? # Intel 8254x gigabit 2801.1Sgavan 2811.1Sgavan# MII/PHY support 2821.1Sgavanmakphy* at mii? phy ? # Marvell Semiconductor 88E1000 PHYs 2831.1Sgavanukphy* at mii? phy ? # generic unknown PHYs 2841.1Sgavan 2851.37Sabs 2861.1Sgavan# USB Controller and Devices 2871.1Sgavan 2881.105Smacallan# Iyonix ships with an ehci/ohci card 2891.105Smacallanehci* at pci? dev ? function ? # Enhanced Host Controller 2901.1Sgavanohci* at pci? dev ? function ? # Open Host Controller 2911.105Smacallan#uhci* at pci? dev ? function ? # Universal Host Controller (Intel) 2921.41Skiyohara 2931.1Sgavan# USB bus support 2941.105Smacallanusb* at ehci? 2951.1Sgavanusb* at ohci? 2961.105Smacallan#usb* at uhci? 2971.1Sgavan#usb* at slhci? 2981.1Sgavan 2991.1Sgavan# USB Hubs 3001.37Sabsuhub* at usb? 3011.37Sabsuhub* at uhub? port ? 3021.1Sgavan 3031.1Sgavan# USB HID device 3041.37Sabsuhidev* at uhub? port ? configuration ? interface ? 3051.1Sgavan 3061.1Sgavan# USB Mice 3071.37Sabsums* at uhidev? reportid ? 3081.37Sabswsmouse* at ums? mux 0 3091.1Sgavan 3101.1Sgavan# USB eGalax touch-panel 3111.37Sabs#uep* at uhub? port ? 3121.37Sabs#wsmouse* at uep? mux 0 3131.1Sgavan 3141.1Sgavan# USB Keyboards 3151.37Sabsukbd* at uhidev? reportid ? 3161.37Sabswskbd* at ukbd? console ? mux 1 3171.1Sgavan 3181.1Sgavan# USB Generic HID devices 3191.37Sabsuhid* at uhidev? reportid ? 3201.1Sgavan 3211.1Sgavan# USB Mass Storage 3221.37Sabsumass* at uhub? port ? configuration ? interface ? 3231.1Sgavan 3241.1Sgavan# USB audio 3251.37Sabsuaudio* at uhub? port ? configuration ? 3261.1Sgavan 3271.1Sgavan# USB MIDI 3281.37Sabs#umidi* at uhub? port ? configuration ? 3291.1Sgavan 3301.1Sgavan# USB Ethernet adapters 3311.37Sabs#axe* at uhub? port ? # ASIX AX88172 based adapters 3321.1Sgavan 3331.37Sabsuplcom* at uhub? port ? # I/O DATA USB-RSAQ2 serial adapter 3341.37Sabsucom* at uplcom? portno ? 3351.1Sgavan 3361.1Sgavan# USB Generic driver 3371.37Sabs#ugen* at uhub? port ? 3381.1Sgavan 3391.1Sgavan 3401.105Smacallan# Iyonix onboard audio 3411.1Sgavanautri* at pci? dev ? function ? # Trident 4DWAVE based AC'97 Audio 3421.1Sgavan 3431.1Sgavan# Audio support 3441.1Sgavanaudio* at audiobus? 3451.1Sgavan 3461.93Schristosspkr* at audio? # PC speaker (synthesized) 3471.91Snat 3481.1Sgavan# On-board device support 3491.37Sabs 3501.1Sgavanobio* at mainbus? 3511.105Smacallancom1 at obio? addr 0x900003e8 xint 1 # on-board UART 3521.1Sgavancom0 at obio? addr 0x900002f8 xint 1 # on-board UART 3531.1Sgavan#com* at obio? addr 0x900003e8 xint 1 # on-board UART 3541.1Sgavan#com* at obio? addr 0x900003f8 xint 1 # on-board UART 3551.1Sgavan 3561.1Sgavan# Pseudo-Devices 3571.1Sgavan 3581.37Sabs#pseudo-device crypto # /dev/crypto device 3591.37Sabs#pseudo-device swcrypto # software crypto implementation 3601.37Sabs 3611.1Sgavan# disk/mass storage pseudo-devices 3621.37Sabs 3631.59Spookapseudo-device fss # file system snapshot device 3641.37Sabs 3651.1Sgavan# network pseudo-devices 3661.26Srpaulopseudo-device bpfilter # Berkeley packet filter 3671.107Ssevanpseudo-device carp # Common Address Redundancy Protocol 3681.99Smaxv#pseudo-device npf # NPF packet filter 3691.1Sgavanpseudo-device loop # network loopback 3701.37Sabs#pseudo-device ppp # Point-to-Point Protocol 3711.37Sabs#pseudo-device pppoe # PPP over Ethernet (RFC 2516) 3721.37Sabs#pseudo-device sl # Serial Line IP 3731.37Sabs#pseudo-device irframetty # IrDA frame line discipline 3741.37Sabs#pseudo-device tap # virtual Ethernet 3751.37Sabs#pseudo-device tun # network tunneling over tty 3761.37Sabs#pseudo-device gre # generic L3 over IP tunnel 3771.37Sabs#pseudo-device gif # IPv[46] over IPv[46] tunnel (RFC1933) 3781.37Sabs#pseudo-device faith # IPv[46] tcp relay translation i/f# 3791.37Sabs#pseudo-device stf # 6to4 IPv6 over IPv4 encapsulation 3801.37Sabs#pseudo-device vlan # IEEE 802.1q encapsulation 3811.37Sabs#pseudo-device bridge # simple inter-network bridging 3821.113Sroy#pseudo-device vether # Virtual Ethernet for bridge 3831.38Smartin#pseudo-device agr # IEEE 802.3ad link aggregation 3841.37Sabs# srt is EXPERIMENTAL 3851.37Sabs#pseudo-device srt # source-address-based routing 3861.1Sgavan 3871.50Stls# 3881.50Stls# accept filters 3891.50Stlspseudo-device accf_data # "dataready" accept filter 3901.50Stlspseudo-device accf_http # "httpready" accept filter 3911.50Stls 3921.1Sgavan# miscellaneous pseudo-devices 3931.1Sgavanpseudo-device pty # pseudo-terminals 3941.37Sabs#options RND_COM # use "com" randomness as well (BROKEN) 3951.1Sgavanpseudo-device clockctl # user control of clock subsystem 3961.106Sisakipseudo-device drvctl # user control of drive subsystem 3971.1Sgavanpseudo-device ksyms # /dev/ksyms 3981.115Sriastradpseudo-device swwdog # software watchdog timer -- swwdog(4) 3991.1Sgavan 4001.37Sabs# wscons pseudo-devices 4011.37Sabspseudo-device wsmux # mouse & keyboard multiplexor 4021.55Sgavanpseudo-device wsfont 4031.37Sabs 4041.107Ssevaninclude "dev/veriexec.config" 4051.37Sabs 4061.105Smacallan#options PAX_MPROTECT=0 # PaX mprotect(2) restrictions 4071.116Sabs 4081.116Sabs# Pull in optional local configuration - always at end 4091.116Sabscinclude "arch/iyonix/conf/GENERIC.local" 410