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