RPI revision 1.49
11.1Sskrll# 21.49Sdholland# $NetBSD: RPI,v 1.49 2014/08/23 20:26:57 dholland 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.1Sskrlloptions CPU_ARM1176 211.1Sskrlloptions BCM2835 221.1Sskrlloptions PMAPCOUNTERS 231.1Sskrlloptions FPU_VFP 241.1Sskrll 251.1Sskrll# Architecture options 261.1Sskrll 271.1Sskrll# File systems 281.1Sskrll 291.1Sskrllfile-system FFS # UFS 301.1Sskrll#file-system LFS # log-structured file system 311.1Sskrllfile-system MFS # memory file system 321.1Sskrllfile-system NFS # Network file system 331.1Sskrll#file-system ADOSFS # AmigaDOS-compatible file system 341.1Sskrllfile-system EXT2FS # second extended file system (linux) 351.1Sskrll#file-system CD9660 # ISO 9660 + Rock Ridge file system 361.1Sskrllfile-system MSDOSFS # MS-DOS file system 371.1Sskrll#file-system FDESC # /dev/fd 381.1Sskrllfile-system KERNFS # /kern 391.1Sskrllfile-system NULLFS # loopback file system 401.1Sskrllfile-system PROCFS # /proc 411.37Sskrllfile-system PUFFS # Userspace file systems (e.g. ntfs-3g & sshfs) 421.1Sskrll#file-system UMAPFS # NULLFS + uid and gid remapping 431.1Sskrll#file-system UNION # union file system 441.1Sskrllfile-system TMPFS # memory file system 451.33Sreinoud#file-system UDF # experimental - OSTA UDF CD/DVD file-system 461.33Sreinoud#file-system HFS # experimental - Apple HFS+ (read-only) 471.33Sreinoud#file-system NILFS # experimental - NTT's NiLFS(2) 481.1Sskrllfile-system PTYFS # /dev/pts/N support 491.1Sskrll 501.1Sskrll# File system options 511.1Sskrlloptions QUOTA # legacy UFS quotas 521.1Sskrlloptions QUOTA2 # new, in-filesystem UFS quotas 531.1Sskrll#options FFS_EI # FFS Endian Independent support 541.1Sskrll#options NFSSERVER 551.1Sskrlloptions WAPBL # File system journaling support 561.1Sskrll#options FFS_NO_SNAPSHOT # No FFS snapshot support 571.1Sskrll 581.1Sskrll# Networking options 591.1Sskrll 601.1Sskrll#options GATEWAY # packet forwarding 611.1Sskrlloptions INET # IP + ICMP + TCP + UDP 621.1Sskrlloptions INET6 # IPV6 631.1Sskrll#options IPSEC # IP security 641.1Sskrll#options IPSEC_DEBUG # debug for IP security 651.1Sskrll#options MROUTING # IP multicast routing 661.1Sskrll#options PIM # Protocol Independent Multicast 671.1Sskrll#options NETATALK # AppleTalk networking 681.1Sskrll#options PPP_BSDCOMP # BSD-Compress compression support for PPP 691.1Sskrll#options PPP_DEFLATE # Deflate compression support for PPP 701.1Sskrll#options PPP_FILTER # Active filter support for PPP (requires bpf) 711.1Sskrll#options TCP_DEBUG # Record last TCP_NDEBUG packets with SO_DEBUG 721.1Sskrll 731.1Sskrll#options NFS_BOOT_BOOTP 741.1Sskrll#options NFS_BOOT_DHCP 751.1Sskrll#options NFS_BOOT_BOOTSTATIC 761.1Sskrll#options NFS_BOOTSTATIC_MYIP="\"192.168.1.4\"" 771.1Sskrll#options NFS_BOOTSTATIC_GWIP="\"192.168.1.1\"" 781.1Sskrll#options NFS_BOOTSTATIC_MASK="\"255.255.255.0\"" 791.1Sskrll#options NFS_BOOTSTATIC_SERVADDR="\"192.168.1.1\"" 801.1Sskrll#options NFS_BOOTSTATIC_SERVER="\"192.168.1.1:/nfs/sdp2430\"" 811.1Sskrll 821.1Sskrlloptions NFS_BOOT_RWSIZE=1024 831.1Sskrll 841.1Sskrll# Compatibility options 851.1Sskrll 861.46Smartinoptions COMPAT_NETBSD32 # allow running arm (e.g. non-earm) binaries 871.1Sskrll#options COMPAT_43 # 4.3BSD compatibility. 881.49Sdholland#options COMPAT_09 # NetBSD 0.9, 891.49Sdholland#options COMPAT_10 # NetBSD 1.0, 901.49Sdholland#options COMPAT_11 # NetBSD 1.1, 911.49Sdholland#options COMPAT_12 # NetBSD 1.2, 921.49Sdholland#options COMPAT_13 # NetBSD 1.3, 931.49Sdholland#options COMPAT_14 # NetBSD 1.4, 941.49Sdholland#options COMPAT_15 # NetBSD 1.5, 951.49Sdholland#options COMPAT_16 # NetBSD 1.6, 961.49Sdholland#options COMPAT_20 # NetBSD 2.0, 971.49Sdholland#options COMPAT_30 # NetBSD 3.0, 981.49Sdholland#options COMPAT_40 # NetBSD 4.0, 991.49Sdholland#options COMPAT_50 # NetBSD 5.0, 1001.49Sdhollandoptions COMPAT_60 # NetBSD 6.0, and 1011.49Sdhollandoptions COMPAT_70 # NetBSD 7.0 binary compatibility. 1021.1Sskrll#options TCP_COMPAT_42 # 4.2BSD TCP/IP bug compat. Not recommended. 1031.1Sskrll#options COMPAT_BSDPTY # /dev/[pt]ty?? ptys. 1041.1Sskrll 1051.1Sskrll# Shared memory options 1061.1Sskrll 1071.1Sskrlloptions SYSVMSG # System V-like message queues 1081.1Sskrlloptions SYSVSEM # System V-like semaphores 1091.1Sskrll#options SEMMNI=10 # number of semaphore identifiers 1101.1Sskrll#options SEMMNS=60 # number of semaphores in system 1111.1Sskrll#options SEMUME=10 # max number of undo entries per process 1121.1Sskrll#options SEMMNU=30 # number of undo structures in system 1131.1Sskrlloptions SYSVSHM # System V-like memory sharing 1141.1Sskrll 1151.1Sskrll# Device options 1161.1Sskrll 1171.1Sskrll#options MEMORY_DISK_HOOKS # boottime setup of ramdisk 1181.1Sskrll#options MEMORY_DISK_ROOT_SIZE=8192 # Size in blocks 1191.1Sskrll#options MEMORY_DISK_DYNAMIC 1201.1Sskrll#options MINIROOTSIZE=1000 # Size in blocks 1211.1Sskrll#options MEMORY_DISK_IS_ROOT # use memory disk as root 1221.1Sskrll 1231.1Sskrll# Miscellaneous kernel options 1241.1Sskrlloptions KTRACE # system call tracing, a la ktrace(1) 1251.1Sskrll#options KMEMSTATS # kernel memory statistics 1261.1Sskrll#options SCSIVERBOSE # Verbose SCSI errors 1271.1Sskrll#options MIIVERBOSE # Verbose MII autoconfuration messages 1281.1Sskrll#options DDB_KEYCODE=0x40 1291.1Sskrll#options USERCONF # userconf(4) support 1301.1Sskrll#options PIPE_SOCKETPAIR # smaller, but slower pipe(2) 1311.1Sskrll 1321.1Sskrll# Development and Debugging options 1331.1Sskrll#options PERFCTRS # performance counters 1341.45Sdhollandoptions DIAGNOSTIC # internal consistency checks 1351.1Sskrlloptions DEBUG 1361.9Sskrll#options LOCKDEBUG 1371.1Sskrll#options IPKDB # remote kernel debugging 1381.11Sskrll#options VERBOSE_INIT_ARM # verbose bootstraping messages 1391.1Sskrlloptions DDB # in-kernel debugger 1401.1Sskrlloptions DDB_ONPANIC=1 1411.1Sskrlloptions DDB_HISTORY_SIZE=100 # Enable history editing in DDB 1421.33Sreinoud#options KGDB,KGDB_PLCOMUNIT=0,KGDB_DEVRATE=115200,KGDB_CONMODE=0xB00 1431.1Sskrllmakeoptions DEBUG="-g" # compile full symbol table 1441.48Sjoergmakeoptions COPY_SYMTAB=1 1451.1Sskrlloptions PLCONSOLE 1461.1Sskrll#options PLCONSOLE,PLCOMCNUNIT=0,PLCONSPEED=115200,PLCONMODE=0xB00 1471.1Sskrll 1481.1Sskrll## USB Debugging options 1491.1Sskrlloptions USB_DEBUG 1501.1Sskrll#options EHCI_DEBUG 1511.1Sskrll#options OHCI_DEBUG 1521.1Sskrll#options UHUB_DEBUG 1531.1Sskrll 1541.1Sskrll 1551.1Sskrll# Valid options for BOOT_ARGS: 1561.1Sskrll# single Boot to single user only 1571.1Sskrll# kdb Give control to kernel debugger 1581.1Sskrll# ask Ask for file name to reboot from 1591.1Sskrll# pmapdebug=<n> If PMAP_DEBUG, set pmap_debug_level to <n> 1601.1Sskrll# memorydisk=<n> Set memorydisk size to <n> KB 1611.1Sskrll# quiet Show aprint_naive output 1621.1Sskrll# verbose Show aprint_normal and aprint_verbose output 1631.1Sskrll#options BOOT_ARGS="\"\"" 1641.1Sskrll 1651.22Sjakllschconfig netbsd root on ? type ? 1661.1Sskrll 1671.1Sskrll# The main bus device 1681.1Sskrllmainbus0 at root 1691.1Sskrll 1701.1Sskrll# The cpu 1711.1Sskrllcpu0 at mainbus? 1721.1Sskrll 1731.1Sskrll# OBIO 1741.1Sskrllobio0 at mainbus? 1751.1Sskrll 1761.1Sskrll# Interrupt Controller 1771.1Sskrllbcmicu0 at obio? 1781.1Sskrll 1791.4Sskrll# VC Mailbox 1801.4Sskrllbcmmbox0 at obio? 1811.13Sjmcneillvcmbox0 at bcmmbox0 1821.4Sskrll 1831.27Sjmcneill# VCHIQ 1841.30Sjmcneillvchiq0 at obio? 1851.30Sjmcneill 1861.30Sjmcneill# AUDS 1871.30Sjmcneillvcaudio0 at vchiq0 1881.30Sjmcneillaudio0 at vcaudio0 1891.27Sjmcneill 1901.1Sskrll# PL011 uart 1911.1Sskrllplcom0 at obio? 1921.1Sskrll 1931.15Sjmcneill# Framebuffer console 1941.20Sjmcneillgenfb0 at obio? 1951.20Sjmcneillwsdisplay* at genfb? 1961.31Sreinoudoptions VCONS_DRAW_INTR 1971.15Sjmcneill 1981.1Sskrll# System timer 1991.1Sskrllbcmtmr0 at obio? 2001.1Sskrll 2011.1Sskrll# Power management, Reset controller and Watchdog registers 2021.1Sskrllbcmpm0 at obio? 2031.1Sskrll 2041.23Sjmcneill# Random number generator 2051.23Sjmcneillbcmrng0 at obio? 2061.23Sjmcneill 2071.44Skardel# GPIO 2081.44Skardelbcmgpio0 at obio? # pins 0 ... 31 2091.44Skardelbcmgpio1 at obio? # pins 32 ... 53 2101.44Skardel 2111.1Sskrll# Arasan SD/MMC Interface 2121.1Sskrllsdhc* at obio? 2131.1Sskrllsdmmc* at sdhc? 2141.1Sskrll 2151.1Sskrllld* at sdmmc? 2161.1Sskrll 2171.17Sskrll# On-board USB 2181.41Sskrlldwctwo* at obio? 2191.41Sskrllusb* at dwctwo? 2201.7Sjakllsch 2211.38Sskrll# USB device drivers 2221.17Sskrllinclude "dev/usb/usbdevices.config" 2231.7Sjakllsch 2241.18Sskrllukphy* at mii? phy ? 2251.18Sskrll 2261.14Sjakllsch# Broadcom Serial Control (I2C) 2271.14Sjakllschbsciic* at obio? 2281.14Sjakllschiic* at i2cbus? 2291.14Sjakllsch 2301.14Sjakllsch# SPI controller 2311.14Sjakllschbcmspi* at obio? 2321.14Sjakllschspi* at spibus? 2331.14Sjakllsch 2341.43Skardel# PIFace or other boards using that chip (needs gpio) 2351.43Skardel#mcp23s17gpio0 at spi? slave 0 flags 0 2361.43Skardel#mcp23s17gpio1 at spi? slave 0 flags 1 2371.43Skardel#mcp23s17gpio2 at spi? slave 0 flags 2 2381.43Skardel#mcp23s17gpio3 at spi? slave 0 flags 3 2391.43Skardel 2401.44Skardel# gpio support (e. g. mcp23s17gpio, bcmgpio) 2411.44Skardelgpio* at gpiobus? 2421.43Skardel 2431.1Sskrll# various options for wscons - we try to look as much like a standard 2441.1Sskrll# sun console as possible 2451.1Sskrlloptions WSEMUL_VT100 # sun terminal emulation 2461.5Sskrlloptions WS_DEFAULT_FG=WSCOL_WHITE 2471.5Sskrlloptions WS_DEFAULT_BG=WSCOL_BLACK 2481.5Sskrlloptions WS_KERNEL_FG=WSCOL_GREEN 2491.5Sskrlloptions WS_KERNEL_BG=WSCOL_BLACK 2501.24Sskrlloptions WSDISPLAY_COMPAT_PCVT # emulate some ioctls 2511.24Sskrlloptions WSDISPLAY_COMPAT_SYSCONS # emulate some more ioctls 2521.3Sabsoptions WSDISPLAY_COMPAT_USL # wsconscfg VT handling 2531.1Sskrlloptions WSDISPLAY_COMPAT_RAWKBD # can get raw scancodes 2541.1Sskrlloptions WSDISPLAY_DEFAULTSCREENS=4 2551.24Sskrll 2561.15Sjmcneill#options FONT_QVSS8x15 2571.1Sskrll#options FONT_GALLANT12x22 # the console font 2581.1Sskrll 2591.1Sskrll# Pseudo-Devices 2601.1Sskrll 2611.1Sskrll# disk/mass storage pseudo-devices 2621.9Sskrll#pseudo-device fss # file system snapshot device 2631.9Sskrll 2641.35Smatt#pseudo-device md # memory disk device (ramdisk) 2651.1Sskrllpseudo-device vnd # disk-like interface to files 2661.32Sskrllpseudo-device putter # for puffs and pud 2671.1Sskrll 2681.1Sskrll# network pseudo-devices 2691.1Sskrllpseudo-device bpfilter # Berkeley packet filter 2701.9Sskrll#pseudo-device carp # Common Address Redundancy Protocol 2711.9Sskrll#pseudo-device ipfilter # IP filter (firewall) and NAT 2721.1Sskrllpseudo-device loop # network loopback 2731.1Sskrll#pseudo-device kttcp # network loopback 2741.9Sskrll#pseudo-device ppp # Point-to-Point Protocol 2751.9Sskrll#pseudo-device pppoe # PPP over Ethernet (RFC 2516) 2761.9Sskrll#options PPPOE_SERVER # Enable PPPoE server via link0 2771.9Sskrll#pseudo-device sl # Serial Line IP 2781.9Sskrll#pseudo-device strip # Starmode Radio IP (Metricom) 2791.9Sskrll#pseudo-device irframetty # IrDA frame line discipline 2801.9Sskrll#pseudo-device tap # virtual Ethernet 2811.9Sskrll#pseudo-device tun # network tunneling over tty 2821.9Sskrll#pseudo-device gre # generic L3 over IP tunnel 2831.9Sskrll#pseudo-device gif # IPv[46] over IPv[46] tunnel (RFC 1933) 2841.9Sskrll#pseudo-device faith # IPv[46] TCP relay translation i/f 2851.9Sskrll#pseudo-device stf # 6to4 IPv6 over IPv4 encapsulation 2861.9Sskrll#pseudo-device vlan # IEEE 802.1q encapsulation 2871.9Sskrll#pseudo-device bridge # simple inter-network bridging 2881.9Sskrll#options BRIDGE_IPF # bridge uses IP/IPv6 pfil hooks too 2891.9Sskrll#pseudo-device agr # IEEE 802.3ad link aggregation 2901.9Sskrll#pseudo-device pf # PF packet filter 2911.9Sskrll#pseudo-device pflog # PF log if 2921.1Sskrll 2931.1Sskrll# miscellaneous pseudo-devices 2941.1Sskrllpseudo-device pty # pseudo-terminals 2951.1Sskrll#options RND_COM 2961.1Sskrll#pseudo-device clockctl # user control of clock subsystem 2971.1Sskrllpseudo-device ksyms # /dev/ksyms 2981.12Sskrllpseudo-device lockstat # lock profiling 2991.9Sskrll 3001.9Sskrll# wscons pseudo-devices 3011.9Sskrllpseudo-device wsmux # mouse & keyboard multiplexor 3021.9Sskrllpseudo-device wsfont 3031.9Sskrll 3041.9Sskrll# data mover pseudo-devices 3051.9Sskrll#pseudo-device swdmover # software dmover(9) back-end 3061.9Sskrll#pseudo-device dmoverio # /dev/dmover dmover(9) interface 3071.16Sjmcneill 3081.29Sjmcneill# userland interface to drivers, including autoconf and properties retrieval 3091.29Sjmcneillpseudo-device drvctl 3101.29Sjmcneill 3111.16Sjmcneill# local configuration 3121.16Sjmcneillcinclude "arch/evbarm/conf/RPI.local" 313