RPI revision 1.60
11.1Sskrll# 21.60Sskrll# $NetBSD: RPI,v 1.60 2015/02/28 09:34:34 skrll Exp $ 31.1Sskrll# 41.1Sskrll# RPi -- Raspberry Pi 51.1Sskrll# 61.1Sskrll 71.1Sskrllinclude "arch/evbarm/conf/std.rpi" 81.1Sskrll 91.1Sskrll# estimated number of users 101.1Sskrll 111.1Sskrllmaxusers 32 121.1Sskrll 131.1Sskrll# Standard system options 141.1Sskrll 151.1Sskrlloptions RTC_OFFSET=0 # hardware clock is this many mins. west of GMT 161.1Sskrll#options NTP # NTP phase/frequency locked loop 171.1Sskrll 181.1Sskrll# CPU options 191.1Sskrll 201.60Sskrlloptions CPU_ARM1176 211.1Sskrlloptions PMAPCOUNTERS 221.60Sskrlloptions TPIDRPRW_IS_CURLWP 231.60Sskrlloptions __HAVE_MM_MD_CACHE_ALIASING 241.60Sskrllmakeoptions CPUFLAGS="-march=armv6z -mtune=arm1176jzf-s -mfpu=vfp" 251.1Sskrll 261.1Sskrll# Architecture options 271.1Sskrll 281.1Sskrll# File systems 291.1Sskrll 301.1Sskrllfile-system FFS # UFS 311.1Sskrll#file-system LFS # log-structured file system 321.1Sskrllfile-system MFS # memory file system 331.1Sskrllfile-system NFS # Network file system 341.1Sskrll#file-system ADOSFS # AmigaDOS-compatible file system 351.1Sskrllfile-system EXT2FS # second extended file system (linux) 361.1Sskrll#file-system CD9660 # ISO 9660 + Rock Ridge file system 371.1Sskrllfile-system MSDOSFS # MS-DOS file system 381.1Sskrll#file-system FDESC # /dev/fd 391.1Sskrllfile-system KERNFS # /kern 401.1Sskrllfile-system NULLFS # loopback file system 411.1Sskrllfile-system PROCFS # /proc 421.37Sskrllfile-system PUFFS # Userspace file systems (e.g. ntfs-3g & sshfs) 431.1Sskrll#file-system UMAPFS # NULLFS + uid and gid remapping 441.1Sskrll#file-system UNION # union file system 451.1Sskrllfile-system TMPFS # memory file system 461.33Sreinoud#file-system UDF # experimental - OSTA UDF CD/DVD file-system 471.33Sreinoud#file-system HFS # experimental - Apple HFS+ (read-only) 481.33Sreinoud#file-system NILFS # experimental - NTT's NiLFS(2) 491.1Sskrllfile-system PTYFS # /dev/pts/N support 501.1Sskrll 511.1Sskrll# File system options 521.1Sskrlloptions QUOTA # legacy UFS quotas 531.1Sskrlloptions QUOTA2 # new, in-filesystem UFS quotas 541.1Sskrll#options FFS_EI # FFS Endian Independent support 551.1Sskrll#options NFSSERVER 561.1Sskrlloptions WAPBL # File system journaling support 571.1Sskrll#options FFS_NO_SNAPSHOT # No FFS snapshot support 581.1Sskrll 591.1Sskrll# Networking options 601.1Sskrll 611.1Sskrll#options GATEWAY # packet forwarding 621.1Sskrlloptions INET # IP + ICMP + TCP + UDP 631.1Sskrlloptions INET6 # IPV6 641.1Sskrll#options IPSEC # IP security 651.1Sskrll#options IPSEC_DEBUG # debug for IP security 661.1Sskrll#options MROUTING # IP multicast routing 671.1Sskrll#options PIM # Protocol Independent Multicast 681.1Sskrll#options NETATALK # AppleTalk networking 691.1Sskrll#options PPP_BSDCOMP # BSD-Compress compression support for PPP 701.1Sskrll#options PPP_DEFLATE # Deflate compression support for PPP 711.1Sskrll#options PPP_FILTER # Active filter support for PPP (requires bpf) 721.1Sskrll#options TCP_DEBUG # Record last TCP_NDEBUG packets with SO_DEBUG 731.1Sskrll 741.55Sjakllschoptions NFS_BOOT_BOOTP 751.55Sjakllschoptions NFS_BOOT_DHCP 761.1Sskrll#options NFS_BOOT_BOOTSTATIC 771.1Sskrll#options NFS_BOOTSTATIC_MYIP="\"192.168.1.4\"" 781.1Sskrll#options NFS_BOOTSTATIC_GWIP="\"192.168.1.1\"" 791.1Sskrll#options NFS_BOOTSTATIC_MASK="\"255.255.255.0\"" 801.1Sskrll#options NFS_BOOTSTATIC_SERVADDR="\"192.168.1.1\"" 811.1Sskrll#options NFS_BOOTSTATIC_SERVER="\"192.168.1.1:/nfs/sdp2430\"" 821.1Sskrll 831.1Sskrlloptions NFS_BOOT_RWSIZE=1024 841.1Sskrll 851.1Sskrll# Compatibility options 861.1Sskrll 871.46Smartinoptions COMPAT_NETBSD32 # allow running arm (e.g. non-earm) binaries 881.1Sskrll#options COMPAT_43 # 4.3BSD compatibility. 891.49Sdholland#options COMPAT_09 # NetBSD 0.9, 901.49Sdholland#options COMPAT_10 # NetBSD 1.0, 911.49Sdholland#options COMPAT_11 # NetBSD 1.1, 921.49Sdholland#options COMPAT_12 # NetBSD 1.2, 931.49Sdholland#options COMPAT_13 # NetBSD 1.3, 941.49Sdholland#options COMPAT_14 # NetBSD 1.4, 951.49Sdholland#options COMPAT_15 # NetBSD 1.5, 961.49Sdholland#options COMPAT_16 # NetBSD 1.6, 971.49Sdholland#options COMPAT_20 # NetBSD 2.0, 981.49Sdholland#options COMPAT_30 # NetBSD 3.0, 991.49Sdholland#options COMPAT_40 # NetBSD 4.0, 1001.49Sdholland#options COMPAT_50 # NetBSD 5.0, 1011.49Sdhollandoptions COMPAT_60 # NetBSD 6.0, and 1021.49Sdhollandoptions COMPAT_70 # NetBSD 7.0 binary compatibility. 1031.1Sskrll#options TCP_COMPAT_42 # 4.2BSD TCP/IP bug compat. Not recommended. 1041.1Sskrll#options COMPAT_BSDPTY # /dev/[pt]ty?? ptys. 1051.1Sskrll 1061.1Sskrll# Shared memory options 1071.1Sskrll 1081.1Sskrlloptions SYSVMSG # System V-like message queues 1091.1Sskrlloptions SYSVSEM # System V-like semaphores 1101.1Sskrll#options SEMMNI=10 # number of semaphore identifiers 1111.1Sskrll#options SEMMNS=60 # number of semaphores in system 1121.1Sskrll#options SEMUME=10 # max number of undo entries per process 1131.1Sskrll#options SEMMNU=30 # number of undo structures in system 1141.1Sskrlloptions SYSVSHM # System V-like memory sharing 1151.1Sskrll 1161.1Sskrll# Device options 1171.1Sskrll 1181.1Sskrll#options MEMORY_DISK_HOOKS # boottime setup of ramdisk 1191.1Sskrll#options MEMORY_DISK_ROOT_SIZE=8192 # Size in blocks 1201.1Sskrll#options MEMORY_DISK_DYNAMIC 1211.1Sskrll#options MINIROOTSIZE=1000 # Size in blocks 1221.1Sskrll#options MEMORY_DISK_IS_ROOT # use memory disk as root 1231.1Sskrll 1241.1Sskrll# Miscellaneous kernel options 1251.1Sskrlloptions KTRACE # system call tracing, a la ktrace(1) 1261.1Sskrll#options KMEMSTATS # kernel memory statistics 1271.1Sskrll#options SCSIVERBOSE # Verbose SCSI errors 1281.1Sskrll#options MIIVERBOSE # Verbose MII autoconfuration messages 1291.1Sskrll#options DDB_KEYCODE=0x40 1301.1Sskrll#options USERCONF # userconf(4) support 1311.1Sskrll#options PIPE_SOCKETPAIR # smaller, but slower pipe(2) 1321.1Sskrll 1331.1Sskrll# Development and Debugging options 1341.1Sskrll#options PERFCTRS # performance counters 1351.45Sdhollandoptions DIAGNOSTIC # internal consistency checks 1361.1Sskrlloptions DEBUG 1371.9Sskrll#options LOCKDEBUG 1381.1Sskrll#options IPKDB # remote kernel debugging 1391.11Sskrll#options VERBOSE_INIT_ARM # verbose bootstraping messages 1401.1Sskrlloptions DDB # in-kernel debugger 1411.1Sskrlloptions DDB_ONPANIC=1 1421.1Sskrlloptions DDB_HISTORY_SIZE=100 # Enable history editing in DDB 1431.33Sreinoud#options KGDB,KGDB_PLCOMUNIT=0,KGDB_DEVRATE=115200,KGDB_CONMODE=0xB00 1441.1Sskrllmakeoptions DEBUG="-g" # compile full symbol table 1451.48Sjoergmakeoptions COPY_SYMTAB=1 1461.1Sskrlloptions PLCONSOLE 1471.1Sskrll#options PLCONSOLE,PLCOMCNUNIT=0,PLCONSPEED=115200,PLCONMODE=0xB00 1481.1Sskrll 1491.1Sskrll## USB Debugging options 1501.1Sskrlloptions USB_DEBUG 1511.1Sskrll#options EHCI_DEBUG 1521.1Sskrll#options OHCI_DEBUG 1531.1Sskrll#options UHUB_DEBUG 1541.1Sskrll 1551.1Sskrll 1561.1Sskrll# Valid options for BOOT_ARGS: 1571.1Sskrll# single Boot to single user only 1581.1Sskrll# kdb Give control to kernel debugger 1591.1Sskrll# ask Ask for file name to reboot from 1601.1Sskrll# pmapdebug=<n> If PMAP_DEBUG, set pmap_debug_level to <n> 1611.1Sskrll# memorydisk=<n> Set memorydisk size to <n> KB 1621.1Sskrll# quiet Show aprint_naive output 1631.1Sskrll# verbose Show aprint_normal and aprint_verbose output 1641.1Sskrll#options BOOT_ARGS="\"\"" 1651.1Sskrll 1661.22Sjakllschconfig netbsd root on ? type ? 1671.1Sskrll 1681.1Sskrll# The main bus device 1691.1Sskrllmainbus0 at root 1701.1Sskrll 1711.60Sskrll# The CPU(s) 1721.60Sskrllcpu* at mainbus? 1731.1Sskrll 1741.1Sskrll# OBIO 1751.1Sskrllobio0 at mainbus? 1761.1Sskrll 1771.1Sskrll# Interrupt Controller 1781.1Sskrllbcmicu0 at obio? 1791.1Sskrll 1801.4Sskrll# VC Mailbox 1811.4Sskrllbcmmbox0 at obio? 1821.13Sjmcneillvcmbox0 at bcmmbox0 1831.4Sskrll 1841.51Sjmcneill# DMA Controller 1851.54Sskrllbcmdmac0 at obio? 1861.51Sjmcneill 1871.27Sjmcneill# VCHIQ 1881.30Sjmcneillvchiq0 at obio? 1891.30Sjmcneill 1901.30Sjmcneill# AUDS 1911.30Sjmcneillvcaudio0 at vchiq0 1921.30Sjmcneillaudio0 at vcaudio0 1931.27Sjmcneill 1941.1Sskrll# PL011 uart 1951.1Sskrllplcom0 at obio? 1961.1Sskrll 1971.15Sjmcneill# Framebuffer console 1981.20Sjmcneillgenfb0 at obio? 1991.20Sjmcneillwsdisplay* at genfb? 2001.31Sreinoudoptions VCONS_DRAW_INTR 2011.56Sskrll#options RPI_HWCURSOR 2021.15Sjmcneill 2031.1Sskrll# System timer 2041.1Sskrllbcmtmr0 at obio? 2051.1Sskrll 2061.1Sskrll# Power management, Reset controller and Watchdog registers 2071.1Sskrllbcmpm0 at obio? 2081.1Sskrll 2091.23Sjmcneill# Random number generator 2101.23Sjmcneillbcmrng0 at obio? 2111.23Sjmcneill 2121.44Skardel# GPIO 2131.44Skardelbcmgpio0 at obio? # pins 0 ... 31 2141.44Skardelbcmgpio1 at obio? # pins 32 ... 53 2151.44Skardel 2161.1Sskrll# Arasan SD/MMC Interface 2171.1Sskrllsdhc* at obio? 2181.1Sskrllsdmmc* at sdhc? 2191.1Sskrll 2201.1Sskrllld* at sdmmc? 2211.1Sskrll 2221.17Sskrll# On-board USB 2231.41Sskrlldwctwo* at obio? 2241.41Sskrllusb* at dwctwo? 2251.7Sjakllsch 2261.38Sskrll# USB device drivers 2271.17Sskrllinclude "dev/usb/usbdevices.config" 2281.7Sjakllsch 2291.57Suebayasimidi* at midibus? 2301.57Suebayasi 2311.50Sskrll# MII/PHY support 2321.50Sskrllexphy* at mii? phy ? # 3Com internal PHYs 2331.50Sskrllgentbi* at mii? phy ? # Generic Ten-Bit 1000BASE-[CLS]X PHYs 2341.50Sskrllglxtphy* at mii? phy ? # Level One LXT-1000 PHYs 2351.50Sskrllgphyter* at mii? phy ? # NS83861 Gig-E PHY 2361.50Sskrllicsphy* at mii? phy ? # Integrated Circuit Systems ICS189x 2371.50Sskrlligphy* at mii? phy ? # Intel IGP01E1000 2381.50Sskrllihphy* at mii? phy ? # Intel 82577 PHYs 2391.50Sskrllikphy* at mii? phy ? # Intel 82563 PHYs 2401.50Sskrllinphy* at mii? phy ? # Intel 82555 PHYs 2411.50Sskrlliophy* at mii? phy ? # Intel 82553 PHYs 2421.50Sskrlllxtphy* at mii? phy ? # Level One LXT-970 PHYs 2431.50Sskrllmakphy* at mii? phy ? # Marvell Semiconductor 88E1000 PHYs 2441.50Sskrllnsphy* at mii? phy ? # NS83840 PHYs 2451.50Sskrllnsphyter* at mii? phy ? # NS83843 PHYs 2461.50Sskrllpnaphy* at mii? phy ? # generic HomePNA PHYs 2471.50Sskrllqsphy* at mii? phy ? # Quality Semiconductor QS6612 PHYs 2481.50Sskrllrdcphy* at mii? phy ? # RDC R6040 10/100 PHY 2491.50Sskrllrgephy* at mii? phy ? # Realtek 8169S/8110S internal PHYs 2501.50Sskrllrlphy* at mii? phy ? # Realtek 8139/8201L PHYs 2511.50Sskrllsqphy* at mii? phy ? # Seeq 80220/80221/80223 PHYs 2521.50Sskrlltlphy* at mii? phy ? # ThunderLAN PHYs 2531.50Sskrlltqphy* at mii? phy ? # TDK Semiconductor PHYs 2541.50Sskrllurlphy* at mii? phy ? # Realtek RTL8150L internal PHYs 2551.50Sskrllukphy* at mii? phy ? # generic unknown PHYs 2561.18Sskrll 2571.14Sjakllsch# Broadcom Serial Control (I2C) 2581.14Sjakllschbsciic* at obio? 2591.14Sjakllschiic* at i2cbus? 2601.14Sjakllsch 2611.58Smacallan# 'DS3231 Raspberry Pi RTC Board Real Time Clock Module for Arduino' 2621.58Smacallan# sold by linksprite.com 2631.58Smacallan#dsrtc* at iic1 addr 0x68 flags 3231 2641.58Smacallan 2651.14Sjakllsch# SPI controller 2661.14Sjakllschbcmspi* at obio? 2671.14Sjakllschspi* at spibus? 2681.14Sjakllsch 2691.43Skardel# PIFace or other boards using that chip (needs gpio) 2701.43Skardel#mcp23s17gpio0 at spi? slave 0 flags 0 2711.55Sjakllsch#mcp23s17gpio1 at spi? slave 0 flags 1 2721.43Skardel#mcp23s17gpio2 at spi? slave 0 flags 2 2731.43Skardel#mcp23s17gpio3 at spi? slave 0 flags 3 2741.43Skardel 2751.44Skardel# gpio support (e. g. mcp23s17gpio, bcmgpio) 2761.44Skardelgpio* at gpiobus? 2771.43Skardel 2781.1Sskrll# various options for wscons - we try to look as much like a standard 2791.1Sskrll# sun console as possible 2801.1Sskrlloptions WSEMUL_VT100 # sun terminal emulation 2811.5Sskrlloptions WS_DEFAULT_FG=WSCOL_WHITE 2821.5Sskrlloptions WS_DEFAULT_BG=WSCOL_BLACK 2831.5Sskrlloptions WS_KERNEL_FG=WSCOL_GREEN 2841.5Sskrlloptions WS_KERNEL_BG=WSCOL_BLACK 2851.24Sskrlloptions WSDISPLAY_COMPAT_PCVT # emulate some ioctls 2861.24Sskrlloptions WSDISPLAY_COMPAT_SYSCONS # emulate some more ioctls 2871.3Sabsoptions WSDISPLAY_COMPAT_USL # wsconscfg VT handling 2881.1Sskrlloptions WSDISPLAY_COMPAT_RAWKBD # can get raw scancodes 2891.1Sskrlloptions WSDISPLAY_DEFAULTSCREENS=4 2901.24Sskrll 2911.15Sjmcneill#options FONT_QVSS8x15 2921.1Sskrll#options FONT_GALLANT12x22 # the console font 2931.1Sskrll 2941.1Sskrll# Pseudo-Devices 2951.1Sskrll 2961.1Sskrll# disk/mass storage pseudo-devices 2971.9Sskrll#pseudo-device fss # file system snapshot device 2981.9Sskrll 2991.35Smatt#pseudo-device md # memory disk device (ramdisk) 3001.1Sskrllpseudo-device vnd # disk-like interface to files 3011.32Sskrllpseudo-device putter # for puffs and pud 3021.1Sskrll 3031.1Sskrll# network pseudo-devices 3041.1Sskrllpseudo-device bpfilter # Berkeley packet filter 3051.9Sskrll#pseudo-device carp # Common Address Redundancy Protocol 3061.9Sskrll#pseudo-device ipfilter # IP filter (firewall) and NAT 3071.1Sskrllpseudo-device loop # network loopback 3081.1Sskrll#pseudo-device kttcp # network loopback 3091.9Sskrll#pseudo-device ppp # Point-to-Point Protocol 3101.9Sskrll#pseudo-device pppoe # PPP over Ethernet (RFC 2516) 3111.9Sskrll#options PPPOE_SERVER # Enable PPPoE server via link0 3121.9Sskrll#pseudo-device sl # Serial Line IP 3131.9Sskrll#pseudo-device strip # Starmode Radio IP (Metricom) 3141.9Sskrll#pseudo-device irframetty # IrDA frame line discipline 3151.9Sskrll#pseudo-device tap # virtual Ethernet 3161.9Sskrll#pseudo-device tun # network tunneling over tty 3171.9Sskrll#pseudo-device gre # generic L3 over IP tunnel 3181.9Sskrll#pseudo-device gif # IPv[46] over IPv[46] tunnel (RFC 1933) 3191.9Sskrll#pseudo-device faith # IPv[46] TCP relay translation i/f 3201.9Sskrll#pseudo-device stf # 6to4 IPv6 over IPv4 encapsulation 3211.9Sskrll#pseudo-device vlan # IEEE 802.1q encapsulation 3221.9Sskrll#pseudo-device bridge # simple inter-network bridging 3231.9Sskrll#options BRIDGE_IPF # bridge uses IP/IPv6 pfil hooks too 3241.9Sskrll#pseudo-device agr # IEEE 802.3ad link aggregation 3251.9Sskrll#pseudo-device pf # PF packet filter 3261.9Sskrll#pseudo-device pflog # PF log if 3271.1Sskrll 3281.1Sskrll# miscellaneous pseudo-devices 3291.1Sskrllpseudo-device pty # pseudo-terminals 3301.1Sskrll#options RND_COM 3311.1Sskrll#pseudo-device clockctl # user control of clock subsystem 3321.1Sskrllpseudo-device ksyms # /dev/ksyms 3331.12Sskrllpseudo-device lockstat # lock profiling 3341.9Sskrll 3351.9Sskrll# wscons pseudo-devices 3361.9Sskrllpseudo-device wsmux # mouse & keyboard multiplexor 3371.9Sskrllpseudo-device wsfont 3381.9Sskrll 3391.9Sskrll# data mover pseudo-devices 3401.9Sskrll#pseudo-device swdmover # software dmover(9) back-end 3411.9Sskrll#pseudo-device dmoverio # /dev/dmover dmover(9) interface 3421.16Sjmcneill 3431.29Sjmcneill# userland interface to drivers, including autoconf and properties retrieval 3441.29Sjmcneillpseudo-device drvctl 3451.29Sjmcneill 3461.16Sjmcneill# local configuration 3471.16Sjmcneillcinclude "arch/evbarm/conf/RPI.local" 348