Re: Installing 13.1 ARM on SSD
- Reply: John Kennedy : "Re: Installing 13.1 ARM on SSD"
- Reply: Wall, Stephen: "RE: Installing 13.1 ARM on SSD"
- In reply to: Wall, Stephen: "Installing 13.1 ARM on SSD"
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Fri, 08 Jul 2022 18:00:27 UTC
On Fri, Jul 08, 2022 at 05:40:23PM +0000, Wall, Stephen wrote: > I am attempting to install FreeBSD/ARM 13.1 on a RPi4 with a USB3 SSD attached. > Steps I’ve taken: > - Used Raspberry Pi Imager to set the board to boot from USB first, SD card second > - downloaded and burned FreeBSD 13.1 arm65-aarch64-RPI image > - booted and run bsdinstall > - selected ZFS > - selected the USB SSD > > Installation ran to completion, but when I reboot without the SD card, I get a “Firmware not found” error message. > Searching the web gives lots of results for linux, but I can’t find anything for FreeBSD. > Has anyone successfully done an install like this, and can point me toward some resources that will get me straightened out? For my RPI4, I burned the SD card and initially booted off of that. That approach got started from Mark Millard's approach here: https://marc.info/?l=freebsd-arm&m=162032836014677&w=2 The image I seeded from was "burned" via: xzcat < FreeBSD-13.1-STABLE-arm64-aarch64-RPI-20220603-185159f77c9-250958.img.xz | dd bs=512b of=/dev/da1 Probably could have used a much bigger multiple of 512 for the blocksize, da1 happened to be what the disk-to-be showed up as on my system. So that's a -STABLE (vs a -RELEASE), and that "arm65" was probably a human typo I'm guessing (vs arm64). From the SD card, I did a typical bsinstall onto the USB-connected disk, then stomped on /boot/efi with the SDCARD's /boot/msdos contents (uboot). I suspect that is what is biting you. I yanked out the SD card at that point, and have been USB-only ever since. root@rpi4:~ # gpart show => 40 488397088 da0 GPT (233G) 40 532480 1 efi (260M) 532520 2008 - free - (1.0M) 534528 50331648 2 freebsd-swap (24G) 50866176 437530624 3 freebsd-zfs (209G) 488396800 328 - free - (164K) This was from the SD card booted, where the USB disk is now da0, and I think that is bash-style environment variable declaration but you get the idea. Reformatted what will be /boot/efi, mounted it, copied over uboot from SD card's /boot/msdos, unmounted it: export TGT=da0 newfs_msdos -F16 -L uboot /dev/${TGT}p1 mount -vt msdos /dev/${TGT}p1 /mnt (cd /boot/msdos && tar jcf - .) | (cd /mnt && tar fvx -) umount -v /mnt Probably a little old-school.