GENERIC revision 1.114
11.114Ssimonb# $NetBSD: GENERIC,v 1.114 2022/08/07 02:52:27 simonb 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.114Ssimonb#ident "GENERIC-$Revision: 1.114 $" 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.37Sabs#options EXT2FS_SYSTEM_FLAGS # makes ext2fs file flags (append and 1321.37Sabs # immutable) behave as system flags. 1331.114Ssimonb#options NFSSERVER # Network File System server 1341.37Sabs 1351.37Sabs# Networking options 1361.37Sabs#options GATEWAY # packet forwarding 1371.37Sabsoptions INET # IP + ICMP + TCP + UDP 1381.105Smacallanoptions INET6 # IPV6 1391.37Sabs#options IPSEC # IP security 1401.37Sabs#options IPSEC_DEBUG # debug for IP security 1411.37Sabs#options MROUTING # IP multicast routing 1421.37Sabs#options PIM # Protocol Independent Multicast 1431.37Sabs#options NETATALK # AppleTalk networking protocols 1441.37Sabs#options PPP_BSDCOMP # BSD-Compress compression support for PPP 1451.37Sabs#options PPP_DEFLATE # Deflate compression support for PPP 1461.37Sabs#options PPP_FILTER # Active filter support for PPP (requires bpf) 1471.37Sabs#options TCP_DEBUG # Record last TCP_NDEBUG packets with SO_DEBUG 1481.37Sabs 1491.37Sabs#options ALTQ # Manipulate network interfaces' output queues 1501.37Sabs#options ALTQ_BLUE # Stochastic Fair Blue 1511.37Sabs#options ALTQ_CBQ # Class-Based Queueing 1521.37Sabs#options ALTQ_CDNR # Diffserv Traffic Conditioner 1531.37Sabs#options ALTQ_FIFOQ # First-In First-Out Queue 1541.37Sabs#options ALTQ_FLOWVALVE # RED/flow-valve (red-penalty-box) 1551.37Sabs#options ALTQ_HFSC # Hierarchical Fair Service Curve 1561.37Sabs#options ALTQ_LOCALQ # Local queueing discipline 1571.37Sabs#options ALTQ_PRIQ # Priority Queueing 1581.37Sabs#options ALTQ_RED # Random Early Detection 1591.37Sabs#options ALTQ_RIO # RED with IN/OUT 1601.37Sabs#options ALTQ_WFQ # Weighted Fair Queueing 1611.37Sabs 1621.37Sabs 1631.37Sabsoptions NFS_BOOT_DHCP,NFS_BOOT_BOOTPARAM 1641.37Sabs 1651.105Smacallan#options DKWEDGE_AUTODISCOVER 1661.105Smacallan#options DKWEDGE_METHOD_BSDLABEL 1671.105Smacallan#options DKWEDGE_METHOD_MBR 1681.105Smacallan 1691.105Smacallanoptions INSECURE 1701.105Smacallan 1711.37Sabs# Kernel root file system and dump configuration. 1721.37Sabsconfig netbsd root on ? type ? 1731.105Smacallan#config netbsd root on wd1a type ffs 1741.105Smacallan#config netbsd root on wm0 type nfs 1751.105Smacallan#config netbsd root on "wedge:system/a" type ffs 1761.1Sgavan 1771.37Sabs# 1781.37Sabs# Device configuration 1791.37Sabs# 1801.1Sgavan 1811.37Sabsmainbus0 at root 1821.1Sgavan 1831.37Sabscpu0 at mainbus? 1841.1Sgavan 1851.1Sgavan# i80321 I/O Processor peripheral support 1861.1Sgavaniopxs* at mainbus? 1871.1Sgavan 1881.1Sgavaniopaau* at iopxs? # Application Accelerator Unit 1891.110Sskrlliopiic* at iopxs? # I2C Controller Unit(s) 1901.1Sgavaniic0 at iopiic? 1911.1Sgavaniic1 at iopiic? 1921.1Sgavaniopwdog* at iopxs? # Watchdog timer 1931.1Sgavanpci0 at iopxs? bus ? # PCI/PCI-X support 1941.1Sgavan 1951.55Sgavan# The curious can see their RAM timings. 1961.55Sgavanspdmem* at iic1 addr 0x56 1971.55Sgavan 1981.105Smacallan# onboard RTC. RISC OS starts counting years at 2000 1991.105Smacallandsrtc0 at iic0 addr 0x68 2001.105Smacallanoptions DSRTC_YEAR_START_2K 2011.105Smacallan 2021.1Sgavan# PCI bridges 2031.37Sabsppb* at pci? dev ? function ? # PCI-PCI bridges 2041.37Sabspci* at ppb? bus ? 2051.37Sabs# XXX 'puc's aren't really bridges, but there's no better place for them here 2061.37Sabs#puc* at pci? dev ? function ? # PCI "universal" comm. cards 2071.1Sgavan 2081.55Sgavan#options COMCONSOLE 2091.55Sgavan 2101.1Sgavan# VGA 2111.1Sgavan#vga* at pci? dev ? function ? 2121.55Sgavangenfb* at pci? dev ? function ? 2131.105Smacallan#options GENFB_PCI_DEBUG 2141.105Smacallan#gffb* at pci? dev ? function ? 2151.105Smacallan 2161.105Smacallan# these exist but aren't configured by RISC OS 2171.105Smacallan#alipm* at pci? 2181.105Smacallan#iic* at alipm? 2191.55Sgavan 2201.55Sgavan# Display 2211.55Sgavanwsdisplay0 at wsemuldisplaydev? console 1 2221.55Sgavanwsdisplay* at wsemuldisplaydev? 2231.55Sgavan 2241.105Smacallan#options WSEMUL_SUN # sun terminal emulation 2251.105Smacallanoptions WSEMUL_VT100 # vt100 terminal emulation 2261.105Smacallanoptions WS_DEFAULT_FG=WSCOL_BLACK 2271.105Smacallanoptions WS_DEFAULT_BG=WSCOL_LIGHT_WHITE 2281.105Smacallanoptions WS_KERNEL_FG=WSCOL_GREEN 2291.105Smacallanoptions WS_KERNEL_BG=WSCOL_LIGHT_WHITE 2301.105Smacallanoptions WSDISPLAY_COMPAT_PCVT # emulate some ioctls 2311.105Smacallanoptions WSDISPLAY_COMPAT_SYSCONS # emulate some ioctls 2321.105Smacallanoptions WSDISPLAY_COMPAT_USL # VT handling 2331.105Smacallanoptions WSDISPLAY_COMPAT_RAWKBD # can get raw scancodes 2341.105Smacallan#options WSDISPLAY_DEFAULTSCREENS=4 2351.105Smacallanoptions FONT_GO_MONO12x23 2361.105Smacallanoptions WSDISPLAY_SCROLLSUPPORT 2371.105Smacallanoptions VCONS_DRAW_INTR 2381.105Smacallanoptions RASOPS_DEFAULT_WIDTH=100 2391.105Smacallanoptions RASOPS_DEFAULT_HEIGHT=30 2401.37Sabs 2411.1Sgavan# IDE and related devices 2421.1Sgavan# PCI IDE controllers - see pciide(4) for supported hardware. 2431.1Sgavan# The 0x0001 flag force the driver to use DMA, even if the driver doesn't know 2441.1Sgavan# how to set up DMA modes for this chip. This may work, or may cause 2451.1Sgavan# a machine hang with some controllers. 2461.105Smacallan#pciide* at pci? dev ? function ? flags 0x0000 # GENERIC pciide driver 2471.1Sgavanaceride* at pci? dev ? function ? # Acer Lab IDE controllers 2481.105Smacallan#mvsata* at pci? dev ? function ? 2491.37Sabs 2501.1Sgavan# ATA (IDE) bus support 2511.1Sgavanatabus* at ata? 2521.37Sabs#options ATADEBUG 2531.1Sgavan 2541.1Sgavan# IDE drives 2551.1Sgavan# Flags are used only with controllers that support DMA operations 2561.1Sgavan# and mode settings (e.g. some pciide controllers) 2571.1Sgavan# The lowest order four bits (rightmost digit) of the flags define the PIO 2581.1Sgavan# mode to use, the next set of four bits the DMA mode and the third set the 2591.1Sgavan# UltraDMA mode. For each set of four bits, the 3 lower bits define the mode 2601.1Sgavan# to use, and the last bit must be 1 for this setting to be used. 2611.1Sgavan# For DMA and UDMA, 0xf (1111) means 'disable'. 2621.1Sgavan# 0x0fac means 'use PIO mode 4, DMA mode 2, disable UltraDMA'. 2631.1Sgavan# (0xc=1100, 0xa=1010, 0xf=1111) 2641.1Sgavan# 0x0000 means "use whatever the drive claims to support". 2651.1Sgavanwd* at atabus? drive ? flags 0x0000 2661.1Sgavan 2671.1Sgavan# ATAPI bus support 2681.1Sgavanatapibus* at atapi? 2691.1Sgavan 2701.1Sgavan# ATAPI devices 2711.1Sgavan# flags have the same meaning as for IDE drives. 2721.1Sgavan# XXX No DMA on IDE devices for now 2731.1Sgavancd* at atapibus? drive ? flags 0x0ff0 # ATAPI CD-ROM drives 2741.1Sgavansd* at atapibus? drive ? flags 0x0000 # ATAPI disk drives 2751.1Sgavanst* at atapibus? drive ? flags 0x0000 # ATAPI tape drives 2761.1Sgavanuk* at atapibus? drive ? flags 0x0000 # ATAPI unknown 2771.1Sgavan 2781.37Sabs 2791.37Sabs# Network Interfaces 2801.37Sabs 2811.105Smacallan# onboard ethernet 2821.1Sgavanwm* at pci? dev ? function ? # Intel 8254x gigabit 2831.1Sgavan 2841.1Sgavan# MII/PHY support 2851.1Sgavanmakphy* at mii? phy ? # Marvell Semiconductor 88E1000 PHYs 2861.1Sgavanukphy* at mii? phy ? # generic unknown PHYs 2871.1Sgavan 2881.37Sabs 2891.1Sgavan# USB Controller and Devices 2901.1Sgavan 2911.105Smacallan# Iyonix ships with an ehci/ohci card 2921.105Smacallanehci* at pci? dev ? function ? # Enhanced Host Controller 2931.1Sgavanohci* at pci? dev ? function ? # Open Host Controller 2941.105Smacallan#uhci* at pci? dev ? function ? # Universal Host Controller (Intel) 2951.41Skiyohara 2961.1Sgavan# USB bus support 2971.105Smacallanusb* at ehci? 2981.1Sgavanusb* at ohci? 2991.105Smacallan#usb* at uhci? 3001.1Sgavan#usb* at slhci? 3011.1Sgavan 3021.1Sgavan# USB Hubs 3031.37Sabsuhub* at usb? 3041.37Sabsuhub* at uhub? port ? 3051.1Sgavan 3061.1Sgavan# USB HID device 3071.37Sabsuhidev* at uhub? port ? configuration ? interface ? 3081.1Sgavan 3091.1Sgavan# USB Mice 3101.37Sabsums* at uhidev? reportid ? 3111.37Sabswsmouse* at ums? mux 0 3121.1Sgavan 3131.1Sgavan# USB eGalax touch-panel 3141.37Sabs#uep* at uhub? port ? 3151.37Sabs#wsmouse* at uep? mux 0 3161.1Sgavan 3171.1Sgavan# USB Keyboards 3181.37Sabsukbd* at uhidev? reportid ? 3191.37Sabswskbd* at ukbd? console ? mux 1 3201.1Sgavan 3211.1Sgavan# USB Generic HID devices 3221.37Sabsuhid* at uhidev? reportid ? 3231.1Sgavan 3241.1Sgavan# USB Mass Storage 3251.37Sabsumass* at uhub? port ? configuration ? interface ? 3261.1Sgavan 3271.1Sgavan# USB audio 3281.37Sabsuaudio* at uhub? port ? configuration ? 3291.1Sgavan 3301.1Sgavan# USB MIDI 3311.37Sabs#umidi* at uhub? port ? configuration ? 3321.1Sgavan 3331.1Sgavan# USB Ethernet adapters 3341.37Sabs#axe* at uhub? port ? # ASIX AX88172 based adapters 3351.1Sgavan 3361.37Sabsuplcom* at uhub? port ? # I/O DATA USB-RSAQ2 serial adapter 3371.37Sabsucom* at uplcom? portno ? 3381.1Sgavan 3391.1Sgavan# USB Generic driver 3401.37Sabs#ugen* at uhub? port ? 3411.1Sgavan 3421.1Sgavan 3431.105Smacallan# Iyonix onboard audio 3441.1Sgavanautri* at pci? dev ? function ? # Trident 4DWAVE based AC'97 Audio 3451.1Sgavan 3461.1Sgavan# Audio support 3471.1Sgavanaudio* at audiobus? 3481.1Sgavan 3491.93Schristosspkr* at audio? # PC speaker (synthesized) 3501.91Snat 3511.1Sgavan# On-board device support 3521.37Sabs 3531.1Sgavanobio* at mainbus? 3541.105Smacallancom1 at obio? addr 0x900003e8 xint 1 # on-board UART 3551.1Sgavancom0 at obio? addr 0x900002f8 xint 1 # on-board UART 3561.1Sgavan#com* at obio? addr 0x900003e8 xint 1 # on-board UART 3571.1Sgavan#com* at obio? addr 0x900003f8 xint 1 # on-board UART 3581.1Sgavan 3591.1Sgavan# Pseudo-Devices 3601.1Sgavan 3611.37Sabs#pseudo-device crypto # /dev/crypto device 3621.37Sabs#pseudo-device swcrypto # software crypto implementation 3631.37Sabs 3641.1Sgavan# disk/mass storage pseudo-devices 3651.37Sabs 3661.59Spookapseudo-device fss # file system snapshot device 3671.37Sabs 3681.1Sgavan# network pseudo-devices 3691.26Srpaulopseudo-device bpfilter # Berkeley packet filter 3701.107Ssevanpseudo-device carp # Common Address Redundancy Protocol 3711.99Smaxv#pseudo-device npf # NPF packet filter 3721.1Sgavanpseudo-device loop # network loopback 3731.37Sabs#pseudo-device ppp # Point-to-Point Protocol 3741.37Sabs#pseudo-device pppoe # PPP over Ethernet (RFC 2516) 3751.37Sabs#pseudo-device sl # Serial Line IP 3761.37Sabs#pseudo-device irframetty # IrDA frame line discipline 3771.37Sabs#pseudo-device tap # virtual Ethernet 3781.37Sabs#pseudo-device tun # network tunneling over tty 3791.37Sabs#pseudo-device gre # generic L3 over IP tunnel 3801.37Sabs#pseudo-device gif # IPv[46] over IPv[46] tunnel (RFC1933) 3811.37Sabs#pseudo-device faith # IPv[46] tcp relay translation i/f# 3821.37Sabs#pseudo-device stf # 6to4 IPv6 over IPv4 encapsulation 3831.37Sabs#pseudo-device vlan # IEEE 802.1q encapsulation 3841.37Sabs#pseudo-device bridge # simple inter-network bridging 3851.113Sroy#pseudo-device vether # Virtual Ethernet for bridge 3861.38Smartin#pseudo-device agr # IEEE 802.3ad link aggregation 3871.37Sabs# srt is EXPERIMENTAL 3881.37Sabs#pseudo-device srt # source-address-based routing 3891.1Sgavan 3901.50Stls# 3911.50Stls# accept filters 3921.50Stlspseudo-device accf_data # "dataready" accept filter 3931.50Stlspseudo-device accf_http # "httpready" accept filter 3941.50Stls 3951.1Sgavan# miscellaneous pseudo-devices 3961.1Sgavanpseudo-device pty # pseudo-terminals 3971.37Sabs#options RND_COM # use "com" randomness as well (BROKEN) 3981.1Sgavanpseudo-device clockctl # user control of clock subsystem 3991.106Sisakipseudo-device drvctl # user control of drive subsystem 4001.1Sgavanpseudo-device ksyms # /dev/ksyms 4011.1Sgavan 4021.37Sabs# wscons pseudo-devices 4031.37Sabspseudo-device wsmux # mouse & keyboard multiplexor 4041.55Sgavanpseudo-device wsfont 4051.37Sabs 4061.107Ssevaninclude "dev/veriexec.config" 4071.37Sabs 4081.105Smacallan#options PAX_MPROTECT=0 # PaX mprotect(2) restrictions 409