Re: Raspberry Pi 4 and M.2 SATA SSD recognized but not booting or available for install - unsupported interface

From: Johan Helsingius <julf_at_Julf.com>
Date: Fri, 12 Apr 2024 13:41:28 UTC
On 11/04/2024 19:57, Mark Millard wrote:
> As far as I know, the absence of sufficient material in
> da1p1 (efiboot0) could be your only problem. 

OK, I have some progress (but not quite sure how). The
system now boots from the USB stick, but with the ZFS
file system from the SSD as it should - but without the
USB stick it doesn't boot, complaining "Firmware not found".

Here is the current partitioning, da0 is the USB stick,
da1 the SSD:

$ gpart show
=>      63  31301568  da0  MBR  (15G)
         63      1985       - free -  (993K)
       2048    102400    1  fat32lba  [active]  (50M)
     104448  10381312    2  freebsd  (5.0G)
   10485760  20815871       - free -  (9.9G)

=>       0  10381312  da0s2  BSD  (5.0G)
          0       128         - free -  (64K)
        128  10381184      1  freebsd-ufs  (4.9G)

=>       40  937703008  da1  GPT  (447G)
          40     532480    1  efi  (260M)
      532520       2008       - free -  (1.0M)
      534528    4194304    2  freebsd-swap  (2.0G)
     4728832  932972544    3  freebsd-zfs  (445G)
   937701376       1672       - free -  (836K)

$ gpart show -pl
=>      63  31301568    da0  MBR  (15G)
         63      1985         - free -  (993K)
       2048    102400  da0s1  (null)  [active]  (50M)
     104448  10381312  da0s2  (null)  (5.0G)
   10485760  20815871         - free -  (9.9G)

=>       0  10381312   da0s2  BSD  (5.0G)
          0       128          - free -  (64K)
        128  10381184  da0s2a  (null)  (4.9G)

=>       40  937703008    da1  GPT  (447G)
          40     532480  da1p1  efiboot0  (260M)
      532520       2008         - free -  (1.0M)
      534528    4194304  da1p2  swap0  (2.0G)
     4728832  932972544  da1p3  zfs0  (445G)
   937701376       1672         - free -  (836K)

da0s1 and da1p1 (that I assume are the EFI boot partitions)
have totally different contents:

SSD / da1p1:
$ find /boot/efi
/boot/efi
/boot/efi/efi
/boot/efi/efi/freebsd
/boot/efi/efi/freebsd/loader.efi
/boot/efi/efi/boot
/boot/efi/efi/boot/bootaa64.efi
/boot/efi/ubootefi.var


USB stick / da0s1:

$ find /mnt/da0s1
/mnt
/mnt/EFI
/mnt/EFI/BOOT
/mnt/EFI/BOOT/bootaa64.efi
/mnt/dtb
/mnt/dtb/allwinner
/mnt/dtb/allwinner/sun50i-a64-nanopi-a64.dtb
/mnt/dtb/allwinner/sun50i-a64-olinuxino.dtb
/mnt/dtb/allwinner/sun50i-a64-pine64-lts.dtb
/mnt/dtb/allwinner/sun50i-a64-pine64-plus.dtb
/mnt/dtb/allwinner/sun50i-a64-pine64.dtb
/mnt/dtb/allwinner/sun50i-a64-pinebook.dtb
/mnt/dtb/allwinner/sun50i-a64-sopine-baseboard.dtb
/mnt/dtb/allwinner/sun50i-h5-orangepi-pc2.dtb
/mnt/dtb/allwinner/sun50i-h5-nanopi-neo2.dtb
/mnt/dtb/allwinner/sun50i-h6-pine-h64.dtb
/mnt/dtb/allwinner/sun50i-h6-pine-h64-model-b.dtb
/mnt/dtb/overlays
/mnt/dtb/overlays/sun50i-a64-mmc0-disable.dtbo
/mnt/dtb/overlays/sun50i-a64-mmc1-disable.dtbo
/mnt/dtb/overlays/sun50i-a64-mmc2-disable.dtbo
/mnt/dtb/overlays/sun50i-a64-pwm.dtbo
/mnt/dtb/overlays/sun50i-a64-rpwm.dtbo
/mnt/dtb/overlays/sun50i-a64-spi0-spigen.dtbo
/mnt/dtb/overlays/sun50i-a64-timer.dtbo
/mnt/dtb/overlays/sun50i-h5-opp.dtbo
/mnt/dtb/overlays/sun50i-h5-nanopi-neo2-opp.dtbo
/mnt/dtb/overlays/rk3328-analog-sound.dtbo
/mnt/dtb/overlays/rk3328-i2c0.dtbo
/mnt/dtb/overlays/rk3328-uart1.dtbo
/mnt/dtb/overlays/rk3399-mmc0-disable.dtbo
/mnt/dtb/overlays/rk3399-mmc1-disable.dtbo
/mnt/dtb/overlays/rk3399-sdhci-disable.dtbo
/mnt/dtb/overlays/spigen-rpi3.dtbo
/mnt/dtb/overlays/spigen-rpi4.dtbo
/mnt/dtb/rockchip
/mnt/dtb/rockchip/rk3399-khadas-edge-captain.dtb
/mnt/dtb/rockchip/rk3399-khadas-edge.dtb
/mnt/dtb/rockchip/rk3399-khadas-edge-v.dtb
/mnt/dtb/rockchip/rk3399-nanopc-t4.dtb
/mnt/dtb/rockchip/rk3328-nanopi-r2s.dtb
/mnt/dtb/rockchip/rk3399-nanopi-r4s.dtb
/mnt/dtb/rockchip/rk3399-rock-pi-4.dtb
/mnt/dtb/rockchip/rk3328-rock-pi-e.dtb
/mnt/dtb/rockchip/rk3328-rock64.dtb
/mnt/dtb/rockchip/rk3399-firefly.dtb
/mnt/dtb/rockchip/rk3399-rockpro64.dtb
/mnt/dtb/freescale
/mnt/dtb/freescale/fsl-ls1028a-rdb.dtb
/mnt/dtb/freescale/fsl-lx2160a-clearfog-cx.dtb
/mnt/dtb/freescale/fsl-lx2160a-honeycomb.dtb
/mnt/dtb/freescale/fsl-lx2160a-qds.dtb
/mnt/dtb/freescale/fsl-lx2160a-rdb.dtb
/mnt/dtb/freescale/imx8mq-evk.dtb
/mnt/dtb/freescale/imx8mq-nitrogen.dtb
/mnt/dtb/marvell
/mnt/dtb/marvell/armada-3720-espressobin.dtb
/mnt/dtb/marvell/armada-8040-clearfog-gt-8k.dtb
/mnt/dtb/marvell/armada-8040-db.dtb
/mnt/dtb/marvell/armada-8040-mcbin.dtb
/mnt/dtb/marvell/armada-8040-mcbin-singleshot.dtb
/mnt/dtb/nvidia
/mnt/dtb/nvidia/tegra210-p2371-2180.dtb
/mnt/dtb/nvidia/tegra210-p3450-0000.dtb
/mnt/README
/mnt/u-boot.bin
/mnt/armstub8.bin
/mnt/armstub8-gic.bin
/mnt/bootcode.bin
/mnt/fixup_cd.dat
/mnt/fixup_db.dat
/mnt/fixup_x.dat
/mnt/fixup.dat
/mnt/LICENCE.broadcom
/mnt/start_cd.elf
/mnt/start_db.elf
/mnt/start_x.elf
/mnt/start.elf
/mnt/fixup4.dat
/mnt/fixup4cd.dat
/mnt/fixup4db.dat
/mnt/fixup4x.dat
/mnt/start4.elf
/mnt/start4cd.elf
/mnt/start4db.elf
/mnt/start4x.elf
/mnt/bcm2710-rpi-2-b.dtb
/mnt/bcm2710-rpi-3-b.dtb
/mnt/bcm2710-rpi-3-b-plus.dtb
/mnt/bcm2710-rpi-cm3.dtb
/mnt/bcm2711-rpi-4-b.dtb
/mnt/config.txt
/mnt/overlays
/mnt/overlays/mmc.dtbo
/mnt/overlays/pwm.dtbo
/mnt/overlays/disable-bt.dtbo

	Julf