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

Michael Stiller <[email protected]>
Newsgroups gmane.os.freebsd.devel.arm
Message-ID <[email protected]>
I think I have roughly the same setup as you on a pi4.

What I basically did was:

- write the .img to the usb stick
- boot that
- create partitions on the ssd using gpart with that layout below:
(because the .img tends to extend the root fs which I did not want.)

gpart of ssd:


=>       63  488397105  da0  MBR  (233G)
         63     131072    1  fat32lba  [active]  (64M)
     131135  488266033    2  freebsd  (233G)

=>        0  488266033  da0s2  BSD  (233G)
          0   33554432      1  freebsd-ufs  (16G)
   33554432    8388608      2  freebsd-swap  (4.0G)
   41943040  446322993      4  freebsd-zfs  (213G)

On the Pi4 I think it's not relevant if the disk is MBR partitioned,

at least not for this (small) size.

Then I made the filesystems there, / as ufs and then /boot/efi as msdos.

I copied the files from the usb stick (which contains the .img contents)

using the "clone" program which is in pkg:

pkg info clone
clone-1.0.8
Name           : clone
Version        : 1.0.8
Installed on   : Sat Mar 23 16:15:40 2024 UTC
Origin         : sysutils/clone
Architecture   : FreeBSD:14:aarch64
Prefix         : /usr/local
Categories     : sysutils
Licenses       : BSD2CLAUSE
Maintainer     : [email protected]
WWW            : https://cyclaero.github.io/clone/
Comment        : File tree cloning tool
..

I basically used this commands: (mount correctly!)

clone -s -v 3 / /mnt
clone -s -v 3 /boot/efi /mnt/boot/efi

On important thing is:
On the SSD my loader.conf contains this line:

vfs.root.mountfrom="ufs:/dev/da0s2a"

Which is the device the kernel detects if NO usb stick is inserted.

So this must be adjusted basically in /mnt/boot/loader.conf

Then umounted all /mnt, removed usb stick.

After this it booted from SSD, I created the zfs pool and moved some directories to zfs.

Hope this helps. Feel free to ask any more questions.

Best regards,

Michael




> On 12. Apr 2024, at 15:41, Johan Helsingius <[email protected]> wrote:
> 
> 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
> 
> 
>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.