Date: Fri, 14 Oct 2016 09:42:47 -0700 From: Oleksandr Tymoshenko <gonzo@bluezbox.com> To: Shawn Webb <shawn.webb@hardenedbsd.org> Cc: freebsd-arm@freebsd.org Subject: Re: Raspberry Pi 3 support Message-ID: <761781BA-6EDE-4C09-978C-6D312E6F1FAB@bluezbox.com> In-Reply-To: <20161014160442.GA5906@mutt-hardenedbsd> References: <5F2E0B05-0A54-4BD6-9CFE-4DFF5FEF07DC@bluezbox.com> <20161014160442.GA5906@mutt-hardenedbsd>
next in thread | previous in thread | raw e-mail | index | archive | help
> On Oct 14, 2016, at 9:04 AM, Shawn Webb <shawn.webb@hardenedbsd.org> = wrote: >=20 > On Thu, Oct 13, 2016 at 10:43:31PM -0700, Oleksandr Tymoshenko wrote: >> Hello, >>=20 >> Limited support for Raspberry Pi 3 has just landed in HEAD. No SMP >> and no 3D yet. And no BT/WiFi drivers. If you would like to give it a = spin >> read this info, it may save you some googling time: >>=20 >> - SD card layout is the same as for RPi or RPi 2 >>=20 >> - Firmware and DTB files can be downloaded from official repo: >> https://github.com/raspberrypi/firmware/tree/master/boot >> Just copy them as-is to FAT partition on SD. There are plans to >> import latest .dts files and provide rpi3.dtb just like for >> Raspberry Pi and Raspberry Pi 2 >>=20 >> - boot mode on RPi 3 is controlled by arm_control parameter in = config.txt, >> set it to 0x200 to boot in 64-bit mode >>=20 >> - To reduce mess with consoles for now only PL01x UART is used (old = one,=20 >> not miniUART) in all boot component: firmware, U-Boot, kernel. >>=20 >> - On RPi 3 firmware defaults to miniUART, use = "dtoverlay=3Dpi3-disable-bt??? in >> config.txt to revert to old behaviour >>=20 >> - A lot of peripherals are disabled in default dtb, to enable them = add this >> line to config.txt before any dtoverlay line: >> dtparam=3Daudio=3Don,i2c_arm=3Don,spi=3Don >>=20 >> - MMC is not included in dtb, add "dtoverlay=3Dmmc??? to config.txt = to enable it >>=20 >> - Stock U-Boot uses miniUART as console so manual patching of >> include/configs/rpi.h required. Just search for = CONFIG_BCM283X_MU_SERIAL >> or CONFIG_PL01X_SERIAL >>=20 >> - ubldr was switched for loader.efi, hence CONFIG_EFI is required for = U-Boot. >> Patch include/configs/rpi.h or pass CONFIG_EFI=3Dy to gmake when = building >> u-boot. Diane Bruce works on u-boot-rpi3 port that addresses all = these >> issues. >>=20 >> - No crochet config for RPi 3 yet >>=20 >> - To save you hassle, here are u-boot.bin, loader.efi, config.txt: >> https://people.freebsd.org/~gonzo/arm/rpi3/ >> Copy these files to FAT partition along with firmware mentioned = above >>=20 >> - bootcmd for EFI would look like: >> fatload mmc 0 ${loadaddr} loader.efi; bootefi ${loadaddr} 0x100 >> where 0x100 is FDT blob address matching the value of = device_tree_address >> parameter in config.txt >=20 > Thank you so much for the hard work! It's great to see the progress > being made and I'm so excited! >=20 > If I were to set up an sdcard manually. What kind of partition layout > would I need? How would I install U-Boot to it? SD card layout is: one FAT partition for firmware/u-boot, one large = partition for BSD. Something like: # gpart create -s MBR da0 # gpart add -t '\!12' -a 63 -s 50m da0 # gpart set -a active -i 1 da0 # newfs_msdos -F 16 /dev/da0s1 # gpart add -t freebsd -a 4m da0 # gpart create -s BSD da0s2 # gpart add -t freebsd-ufs da0s2 # newfs -U da0s2a (source: https://wiki.freebsd.org/FreeBSD/arm/Raspberry%20Pi%202%20image = <https://wiki.freebsd.org/FreeBSD/arm/Raspberry%20Pi%202%20image>) To install U-Boot just copy firmware files from github, u-boot.bin, = loader.efi, config.txt to FAT partition.=
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?761781BA-6EDE-4C09-978C-6D312E6F1FAB>