====== FreeBSD on the Raspberry Pi 3 (RPI3) ====== ===== TODO ===== :!: these entries may be stale as of 20200202 - wifi support (no one assigned, dependent on SDIO support) - bluetooth support (no one assigned) ===== Package Repo ===== Use the standard repos for %%FreeBSD%%-12 and 13-CURRENT. If you want to build your own ports or packagesL if you're building directly on the RPI3, you will definitely want to use either USB storage or NFS. Building on the sdcard will likely wear the sdcard out. ====== Building ====== ===== Prerequisites ===== [[https://github.com/freebsd/crochet|Crochet]] now supports building images for the RPI3. There's no more need for the custom build procedures. Use the GENERIC-UP arm64 kernel config. Plop in the sdcard to the RPI3, attach the serial cable, and watch awesomeness happen. ===== dmesg ===== KDB: debugger backends: ddb KDB: current backend: ddb Copyright (c) 1992-2016 The FreeBSD Project. Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994 The Regents of the University of California. All rights reserved. FreeBSD is a registered trademark of The FreeBSD Foundation. FreeBSD 12.0-CURRENT #0 7945b79(master): Mon Oct 17 20:18:27 EDT 2016 shawn@hbsd-dev-laptop:/usr/obj/arm64.aarch64/scratch/arm64/fbsd/sys/RPI3 arm64 FreeBSD clang version 3.8.0 (tags/RELEASE_380/final 262564) (based on LLVM 3.8.0) WARNING: WITNESS option enabled, expect reduced performance. VT: init without driver. random: unblocking device. random: entropy device external interface kbd0 at kbdmux0 ofwbus0: simplebus0: on ofwbus0 local_intc0: mem 0x40000000-0x400000ff on simplebus0 intc0: mem 0x7e00b200-0x7e00b3ff irq 16 on simplebus0 generic_timer0: irq 37,38,39,40 on simplebus0 Timecounter "ARM MPCore Timecounter" frequency 19200000 Hz quality 1000 Event timer "ARM MPCore Eventtimer" frequency 19200000 Hz quality 1000 bcm_dma0: mem 0x7e007000-0x7e007eff irq 0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15 on simplebus0 mbox0: mem 0x7e00b880-0x7e00b8bf irq 17 on simplebus0 bcmwd0: mem 0x7e100000-0x7e100027 on simplebus0 gpio0: mem 0x7e200000-0x7e2000b3 irq 18,19 on simplebus0 gpiobus0: on gpio0 gpioc0: on gpio0 uart0: mem 0x7e201000-0x7e201fff irq 20 on simplebus0 uart0: console (115200,n,8,1) spi0: mem 0x7e204000-0x7e204fff irq 22 on simplebus0 spibus0: on spi0 spibus0: at cs 0 mode 0spibus0: at cs 1 mode 0sdhci_bcm0: mem 0x7e300000-0x7e3000ff irq 27 on simplebus0 mmc0: on sdhci_bcm0 iichb0: mem 0x7e804000-0x7e804fff irq 31 on simplebus0 iicbus0: on iichb0 bcm283x_dwcotg0: mem 0x7e980000-0x7e98ffff,0x7e006000-0x7e006fff irq 33,34 on simplebus0 usbus0 on bcm283x_dwcotg0 fb0: on simplebus0 fbd0 on fb0 VT: initialize with new VT driver "fb". fb0: 656x416(656x416@0,0) 24bpp fb0: fbswap: 1, pitch 1968, base 0x3db33000, screen_size 818688 pmu0: irq 36 on simplebus0 cpulist0: on ofwbus0 cpu0: on cpulist0 bcm2835_cpufreq0: on cpu0 cpu1: on cpulist0 cpu2: on cpulist0 cpu3: on cpulist0 cryptosoft0: Timecounters tick every 1.000 msec usbus0: 480Mbps High Speed USB v2.0 ugen0.1: at usbus0 uhub0: on usbus0 mmcsd0: 32GB at mmc0 41.6MHz/4bit/65535-block bcm2835_cpufreq0: ARM 600MHz, Core 250MHz, SDRAM 400MHz, Turbo OFF CPU 0: ARM Cortex-A53 r0p4 affinity: 0 Instruction Set Attributes 0 = Instruction Set Attributes 1 = <0> Processor Features 0 = Processor Features 1 = <0> Memory Model Features 0 = <4k Granule,64k Granule,MixedEndian,S/NS Mem,16bit ASID,1TB PA> Memory Model Features 1 = <> Debug Features 0 = <2 CTX Breakpoints,4 Watchpoints,6 Breakpoints,PMUv3,Debug v8> Debug Features 1 = <0> Auxiliary Features 0 = <0> Auxiliary Features 1 = <0> WARNING: WITNESS option enabled, expect reduced performance. Trying to mount root from ufs:/dev/mmcsd0s2a [rw]... warning: no time-of-day clock registered, system time will not be set accurately uhub0: 1 port with 1 removable, self powered ugen0.2: at usbus0 uhub1 on uhub0 uhub1: on usbus0 uhub1: MTT enabled uhub1: 5 ports with 4 removable, self powered ugen0.3: at usbus0 smsc0 on uhub1 smsc0: on usbus0 smsc0: chip 0xec00, rev. 0002 miibus0: on smsc0 ukphy0: PHY 1 on miibus0 ukphy0: none, 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto ue0: on smsc0 ue0: Ethernet address: b8:27:eb:a4:ed:3f smsc0: chip 0xec00, rev. 0002 ue0: link state changed to DOWN ue0: link state changed to UP ===== Bugs/Issues ===== Notes: * TBA ---- {{tag>Todo}}