GENERIC revision 1.106
11.106Sisaki# $NetBSD: GENERIC,v 1.106 2019/04/13 08:23:00 isaki 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.106Sisaki#ident "GENERIC-$Revision: 1.106 $" 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.37Sabs#options 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.1Sgavan#options PMAP_DEBUG # Enable pmap_debug_level code 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.37Sabs#file-system SMBFS # experimental - CIFS; also needs nsmb (below) 1181.105Smacallanfile-system PTYFS # /dev/ptm support 1191.105Smacallanfile-system TMPFS # Efficient memory file-system 1201.37Sabs#file-system UDF # experimental - OSTA UDF CD/DVD file-system 1211.37Sabs#file-system HFS # experimental - Apple HFS+ (read-only) 1221.37Sabsfile-system FILECORE # Acorn filecore file system 1231.37Sabs 1241.37Sabs# File system options 1251.62Sbouyer#options QUOTA # legacy UFS quotas 1261.62Sbouyer#options QUOTA2 # new, in-filesystem UFS quotas 1271.37Sabs#options FFS_EI # FFS Endian Independent support 1281.69Sdhollandoptions WAPBL # File system journaling support 1291.37Sabs# Note that UFS_DIRHASH is suspected of causing kernel memory corruption. 1301.37Sabs# It is not recommended for general use. 1311.37Sabs#options UFS_DIRHASH # UFS Large Directory Hashing - Experimental 1321.37Sabs#options NFSSERVER # Network File System server 1331.37Sabsoptions FFS_NO_SNAPSHOT # No FFS snapshot support 1341.87Smanu#options UFS_EXTATTR # Extended attribute support for UFS1 1351.37Sabs#options EXT2FS_SYSTEM_FLAGS # makes ext2fs file flags (append and 1361.37Sabs # immutable) behave as system flags. 1371.37Sabs 1381.37Sabs# Networking options 1391.37Sabs#options GATEWAY # packet forwarding 1401.37Sabsoptions INET # IP + ICMP + TCP + UDP 1411.105Smacallanoptions INET6 # IPV6 1421.37Sabs#options IPSEC # IP security 1431.37Sabs#options IPSEC_DEBUG # debug for IP security 1441.37Sabs#options MROUTING # IP multicast routing 1451.37Sabs#options PIM # Protocol Independent Multicast 1461.37Sabs#options NETATALK # AppleTalk networking protocols 1471.37Sabs#options PPP_BSDCOMP # BSD-Compress compression support for PPP 1481.37Sabs#options PPP_DEFLATE # Deflate compression support for PPP 1491.37Sabs#options PPP_FILTER # Active filter support for PPP (requires bpf) 1501.37Sabs#options TCP_DEBUG # Record last TCP_NDEBUG packets with SO_DEBUG 1511.37Sabs 1521.37Sabs#options ALTQ # Manipulate network interfaces' output queues 1531.37Sabs#options ALTQ_BLUE # Stochastic Fair Blue 1541.37Sabs#options ALTQ_CBQ # Class-Based Queueing 1551.37Sabs#options ALTQ_CDNR # Diffserv Traffic Conditioner 1561.37Sabs#options ALTQ_FIFOQ # First-In First-Out Queue 1571.37Sabs#options ALTQ_FLOWVALVE # RED/flow-valve (red-penalty-box) 1581.37Sabs#options ALTQ_HFSC # Hierarchical Fair Service Curve 1591.37Sabs#options ALTQ_LOCALQ # Local queueing discipline 1601.37Sabs#options ALTQ_PRIQ # Priority Queueing 1611.37Sabs#options ALTQ_RED # Random Early Detection 1621.37Sabs#options ALTQ_RIO # RED with IN/OUT 1631.37Sabs#options ALTQ_WFQ # Weighted Fair Queueing 1641.37Sabs 1651.37Sabs 1661.37Sabsoptions NFS_BOOT_DHCP,NFS_BOOT_BOOTPARAM 1671.37Sabs 1681.105Smacallan#options DKWEDGE_AUTODISCOVER 1691.105Smacallan#options DKWEDGE_METHOD_BSDLABEL 1701.105Smacallan#options DKWEDGE_METHOD_MBR 1711.105Smacallan 1721.105Smacallanoptions INSECURE 1731.105Smacallan 1741.37Sabs# Kernel root file system and dump configuration. 1751.37Sabsconfig netbsd root on ? type ? 1761.105Smacallan#config netbsd root on wd1a type ffs 1771.105Smacallan#config netbsd root on wm0 type nfs 1781.105Smacallan#config netbsd root on "wedge:system/a" type ffs 1791.1Sgavan 1801.37Sabs# 1811.37Sabs# Device configuration 1821.37Sabs# 1831.1Sgavan 1841.37Sabsmainbus0 at root 1851.1Sgavan 1861.37Sabscpu0 at mainbus? 1871.1Sgavan 1881.1Sgavan# i80321 I/O Processor peripheral support 1891.1Sgavaniopxs* at mainbus? 1901.1Sgavan 1911.1Sgavaniopaau* at iopxs? # Application Accelerator Unit 1921.1Sgavaniopiic* at iopxs? # I2C Controller Unit(s) 1931.1Sgavaniic0 at iopiic? 1941.1Sgavaniic1 at iopiic? 1951.1Sgavaniopwdog* at iopxs? # Watchdog timer 1961.1Sgavanpci0 at iopxs? bus ? # PCI/PCI-X support 1971.1Sgavan 1981.55Sgavan# The curious can see their RAM timings. 1991.55Sgavanspdmem* at iic1 addr 0x56 2001.55Sgavan 2011.105Smacallan# onboard RTC. RISC OS starts counting years at 2000 2021.105Smacallandsrtc0 at iic0 addr 0x68 2031.105Smacallanoptions DSRTC_YEAR_START_2K 2041.105Smacallan 2051.1Sgavan# PCI bridges 2061.37Sabsppb* at pci? dev ? function ? # PCI-PCI bridges 2071.37Sabspci* at ppb? bus ? 2081.37Sabs# XXX 'puc's aren't really bridges, but there's no better place for them here 2091.37Sabs#puc* at pci? dev ? function ? # PCI "universal" comm. cards 2101.1Sgavan 2111.55Sgavan#options COMCONSOLE 2121.55Sgavan 2131.1Sgavan# VGA 2141.1Sgavan#vga* at pci? dev ? function ? 2151.55Sgavangenfb* at pci? dev ? function ? 2161.105Smacallan#options GENFB_PCI_DEBUG 2171.105Smacallan#gffb* at pci? dev ? function ? 2181.105Smacallan 2191.105Smacallan# these exist but aren't configured by RISC OS 2201.105Smacallan#alipm* at pci? 2211.105Smacallan#iic* at alipm? 2221.55Sgavan 2231.55Sgavan# Display 2241.55Sgavanwsdisplay0 at wsemuldisplaydev? console 1 2251.55Sgavanwsdisplay* at wsemuldisplaydev? 2261.55Sgavan 2271.105Smacallan#options WSEMUL_SUN # sun terminal emulation 2281.105Smacallanoptions WSEMUL_VT100 # vt100 terminal emulation 2291.105Smacallanoptions WS_DEFAULT_FG=WSCOL_BLACK 2301.105Smacallanoptions WS_DEFAULT_BG=WSCOL_LIGHT_WHITE 2311.105Smacallanoptions WS_KERNEL_FG=WSCOL_GREEN 2321.105Smacallanoptions WS_KERNEL_BG=WSCOL_LIGHT_WHITE 2331.105Smacallanoptions WSDISPLAY_COMPAT_PCVT # emulate some ioctls 2341.105Smacallanoptions WSDISPLAY_COMPAT_SYSCONS # emulate some ioctls 2351.105Smacallanoptions WSDISPLAY_COMPAT_USL # VT handling 2361.105Smacallanoptions WSDISPLAY_COMPAT_RAWKBD # can get raw scancodes 2371.105Smacallan#options WSDISPLAY_DEFAULTSCREENS=4 2381.105Smacallanoptions FONT_GO_MONO12x23 2391.105Smacallanoptions WSDISPLAY_SCROLLSUPPORT 2401.105Smacallanoptions VCONS_DRAW_INTR 2411.105Smacallanoptions RASOPS_DEFAULT_WIDTH=100 2421.105Smacallanoptions RASOPS_DEFAULT_HEIGHT=30 2431.37Sabs 2441.1Sgavan# IDE and related devices 2451.1Sgavan# PCI IDE controllers - see pciide(4) for supported hardware. 2461.1Sgavan# The 0x0001 flag force the driver to use DMA, even if the driver doesn't know 2471.1Sgavan# how to set up DMA modes for this chip. This may work, or may cause 2481.1Sgavan# a machine hang with some controllers. 2491.105Smacallan#pciide* at pci? dev ? function ? flags 0x0000 # GENERIC pciide driver 2501.1Sgavanaceride* at pci? dev ? function ? # Acer Lab IDE controllers 2511.105Smacallan#mvsata* at pci? dev ? function ? 2521.37Sabs 2531.1Sgavan# ATA (IDE) bus support 2541.1Sgavanatabus* at ata? 2551.37Sabs#options ATADEBUG 2561.1Sgavan 2571.1Sgavan# IDE drives 2581.1Sgavan# Flags are used only with controllers that support DMA operations 2591.1Sgavan# and mode settings (e.g. some pciide controllers) 2601.1Sgavan# The lowest order four bits (rightmost digit) of the flags define the PIO 2611.1Sgavan# mode to use, the next set of four bits the DMA mode and the third set the 2621.1Sgavan# UltraDMA mode. For each set of four bits, the 3 lower bits define the mode 2631.1Sgavan# to use, and the last bit must be 1 for this setting to be used. 2641.1Sgavan# For DMA and UDMA, 0xf (1111) means 'disable'. 2651.1Sgavan# 0x0fac means 'use PIO mode 4, DMA mode 2, disable UltraDMA'. 2661.1Sgavan# (0xc=1100, 0xa=1010, 0xf=1111) 2671.1Sgavan# 0x0000 means "use whatever the drive claims to support". 2681.1Sgavanwd* at atabus? drive ? flags 0x0000 2691.1Sgavan 2701.1Sgavan# ATAPI bus support 2711.1Sgavanatapibus* at atapi? 2721.1Sgavan 2731.1Sgavan# ATAPI devices 2741.1Sgavan# flags have the same meaning as for IDE drives. 2751.1Sgavan# XXX No DMA on IDE devices for now 2761.1Sgavancd* at atapibus? drive ? flags 0x0ff0 # ATAPI CD-ROM drives 2771.1Sgavansd* at atapibus? drive ? flags 0x0000 # ATAPI disk drives 2781.1Sgavanst* at atapibus? drive ? flags 0x0000 # ATAPI tape drives 2791.1Sgavanuk* at atapibus? drive ? flags 0x0000 # ATAPI unknown 2801.1Sgavan 2811.37Sabs 2821.37Sabs# Network Interfaces 2831.37Sabs 2841.105Smacallan# onboard ethernet 2851.1Sgavanwm* at pci? dev ? function ? # Intel 8254x gigabit 2861.1Sgavan 2871.1Sgavan# MII/PHY support 2881.1Sgavanmakphy* at mii? phy ? # Marvell Semiconductor 88E1000 PHYs 2891.1Sgavanukphy* at mii? phy ? # generic unknown PHYs 2901.1Sgavan 2911.37Sabs 2921.1Sgavan# USB Controller and Devices 2931.1Sgavan 2941.105Smacallan# Iyonix ships with an ehci/ohci card 2951.105Smacallanehci* at pci? dev ? function ? # Enhanced Host Controller 2961.1Sgavanohci* at pci? dev ? function ? # Open Host Controller 2971.105Smacallan#uhci* at pci? dev ? function ? # Universal Host Controller (Intel) 2981.41Skiyohara 2991.1Sgavan# USB bus support 3001.105Smacallanusb* at ehci? 3011.1Sgavanusb* at ohci? 3021.105Smacallan#usb* at uhci? 3031.1Sgavan#usb* at slhci? 3041.1Sgavan 3051.1Sgavan# USB Hubs 3061.37Sabsuhub* at usb? 3071.37Sabsuhub* at uhub? port ? 3081.1Sgavan 3091.1Sgavan# USB HID device 3101.37Sabsuhidev* at uhub? port ? configuration ? interface ? 3111.1Sgavan 3121.1Sgavan# USB Mice 3131.37Sabsums* at uhidev? reportid ? 3141.37Sabswsmouse* at ums? mux 0 3151.1Sgavan 3161.1Sgavan# USB eGalax touch-panel 3171.37Sabs#uep* at uhub? port ? 3181.37Sabs#wsmouse* at uep? mux 0 3191.1Sgavan 3201.1Sgavan# USB Keyboards 3211.37Sabsukbd* at uhidev? reportid ? 3221.37Sabswskbd* at ukbd? console ? mux 1 3231.1Sgavan 3241.1Sgavan# USB Generic HID devices 3251.37Sabsuhid* at uhidev? reportid ? 3261.1Sgavan 3271.1Sgavan# USB Mass Storage 3281.37Sabsumass* at uhub? port ? configuration ? interface ? 3291.1Sgavan 3301.1Sgavan# USB audio 3311.37Sabsuaudio* at uhub? port ? configuration ? 3321.1Sgavan 3331.1Sgavan# USB MIDI 3341.37Sabs#umidi* at uhub? port ? configuration ? 3351.1Sgavan 3361.1Sgavan# USB Ethernet adapters 3371.37Sabs#axe* at uhub? port ? # ASIX AX88172 based adapters 3381.1Sgavan 3391.37Sabsuplcom* at uhub? port ? # I/O DATA USB-RSAQ2 serial adapter 3401.37Sabsucom* at uplcom? portno ? 3411.1Sgavan 3421.1Sgavan# USB Generic driver 3431.37Sabs#ugen* at uhub? port ? 3441.1Sgavan 3451.1Sgavan 3461.105Smacallan# Iyonix onboard audio 3471.1Sgavanautri* at pci? dev ? function ? # Trident 4DWAVE based AC'97 Audio 3481.1Sgavan 3491.1Sgavan# Audio support 3501.1Sgavanaudio* at audiobus? 3511.1Sgavan 3521.93Schristosspkr* at audio? # PC speaker (synthesized) 3531.91Snat 3541.1Sgavan# On-board device support 3551.37Sabs 3561.1Sgavanobio* at mainbus? 3571.105Smacallancom1 at obio? addr 0x900003e8 xint 1 # on-board UART 3581.1Sgavancom0 at obio? addr 0x900002f8 xint 1 # on-board UART 3591.1Sgavan#com* at obio? addr 0x900003e8 xint 1 # on-board UART 3601.1Sgavan#com* at obio? addr 0x900003f8 xint 1 # on-board UART 3611.1Sgavan 3621.1Sgavan# Pseudo-Devices 3631.1Sgavan 3641.37Sabs#pseudo-device crypto # /dev/crypto device 3651.37Sabs#pseudo-device swcrypto # software crypto implementation 3661.37Sabs 3671.1Sgavan# disk/mass storage pseudo-devices 3681.37Sabs 3691.59Spookapseudo-device fss # file system snapshot device 3701.37Sabs 3711.1Sgavan# network pseudo-devices 3721.26Srpaulopseudo-device bpfilter # Berkeley packet filter 3731.30Sliamjfoy#pseudo-device carp # Common Address Redundancy Protocol 3741.99Smaxv#pseudo-device npf # NPF packet filter 3751.1Sgavanpseudo-device loop # network loopback 3761.37Sabs#pseudo-device ppp # Point-to-Point Protocol 3771.37Sabs#pseudo-device pppoe # PPP over Ethernet (RFC 2516) 3781.37Sabs#pseudo-device sl # Serial Line IP 3791.37Sabs#pseudo-device strip # Starmode Radio IP (Metricom) 3801.37Sabs#pseudo-device irframetty # IrDA frame line discipline 3811.37Sabs#pseudo-device tap # virtual Ethernet 3821.37Sabs#pseudo-device tun # network tunneling over tty 3831.37Sabs#pseudo-device gre # generic L3 over IP tunnel 3841.37Sabs#pseudo-device gif # IPv[46] over IPv[46] tunnel (RFC1933) 3851.37Sabs#pseudo-device faith # IPv[46] tcp relay translation i/f# 3861.37Sabs#pseudo-device stf # 6to4 IPv6 over IPv4 encapsulation 3871.37Sabs#pseudo-device vlan # IEEE 802.1q encapsulation 3881.37Sabs#pseudo-device bridge # simple inter-network bridging 3891.37Sabs#options BRIDGE_IPF # bridge uses IP/IPv6 pfil hooks too 3901.38Smartin#pseudo-device agr # IEEE 802.3ad link aggregation 3911.37Sabs# srt is EXPERIMENTAL 3921.37Sabs#pseudo-device srt # source-address-based routing 3931.1Sgavan 3941.50Stls# 3951.50Stls# accept filters 3961.50Stlspseudo-device accf_data # "dataready" accept filter 3971.50Stlspseudo-device accf_http # "httpready" accept filter 3981.50Stls 3991.1Sgavan# miscellaneous pseudo-devices 4001.1Sgavanpseudo-device pty # pseudo-terminals 4011.37Sabs#options RND_COM # use "com" randomness as well (BROKEN) 4021.1Sgavanpseudo-device clockctl # user control of clock subsystem 4031.106Sisakipseudo-device drvctl # user control of drive subsystem 4041.1Sgavanpseudo-device ksyms # /dev/ksyms 4051.1Sgavan 4061.37Sabs# wscons pseudo-devices 4071.37Sabspseudo-device wsmux # mouse & keyboard multiplexor 4081.55Sgavanpseudo-device wsfont 4091.37Sabs 4101.105Smacallan#options FILEASSOC # fileassoc(9) - required for Veriexec 4111.105Smacallan # and PAX_SEGVGUARD 4121.24Selad 4131.24Selad# Veriexec 4141.105Smacallan#pseudo-device veriexec 4151.24Selad# 4161.24Selad# Uncomment the fingerprint methods below that are desired. Note that 4171.24Selad# removing fingerprint methods will have almost no impact on the kernel 4181.24Selad# code size. 4191.24Selad# 4201.24Selad#options VERIFIED_EXEC_FP_SHA256 4211.24Selad#options VERIFIED_EXEC_FP_SHA384 4221.24Selad#options VERIFIED_EXEC_FP_SHA512 4231.37Sabs 4241.105Smacallan#options PAX_MPROTECT=0 # PaX mprotect(2) restrictions 425