Date: Sun, 13 Oct 2019 11:54:42 -0700 From: John-Mark Gurney <jmg@funkthat.com> To: Thomas Skibo <thomasskibo@yahoo.com> Cc: freebsd-arm@freebsd.org, Emmanuel Vadot <manu@bidouilliste.com> Subject: Re: PINE64+ 2GB - with U-Boot SPL 2019.10 - bootaa64.efi do not find UFS partition Message-ID: <20191013185442.GR96402@funkthat.com> In-Reply-To: <9840C5F9-64F8-4415-A24E-E62507F14C8D@yahoo.com> References: <9840C5F9-64F8-4415-A24E-E62507F14C8D@yahoo.com>
next in thread | previous in thread | raw e-mail | index | archive | help
Thomas Skibo via freebsd-arm wrote this message on Fri, Oct 11, 2019 at 08:50 -0700: > > > U-Boot SPL 2019.10 (Oct 10 2019 - 18:05:29 +0200) > > DRAM: 2048 MiB > > Trying to boot from MMC1 > > NOTICE: BL31: v2.0(release): > > > > >> > > FreeBSD EFI boot block > > > > Loader path: /boot/loader.efi > > > > Initializing modules: ZFS UFS > > Load Path: /efi\boot\bootaa64.efi > > Load Device: > > /VenHw(e61d73b9-a384-4acc-aeab-82e828f3628b)/SD(0)/SD(0)/HD(1,0x01,0,0x403b,0x20000) > > Probing 3 block devices...... done > > ZFS found no pools > > UFS found no partitions > > Failed to load '/boot/loader.efi' > > panic: No bootable partitions found! > > ## Application terminated, r = 1 > > > I???ve been looking into this. As of u-boot v2019.10, there are some extra checks in efi_disk_read_blocks() and now it will fail with EFI_INVALID_PARAMETER if the buffer isn???t aligned. In my case, efi_disk_read_blocks() was called with a buffer address of 0x1da06040 but with this->media->io_align = 512. (See lib/efi_loader/efi_disk.c line 125.). Evidently,loader.efi is making disk calls with unaligned buffers but it wasn???t an issue until these checks were added. That???s as far as I got debugging this. This would also likely fix the issues I'm seeing w/ the latest RockPro64. -- John-Mark Gurney Voice: +1 415 225 5579 "All that I will do, has been done, All that I have, has not."
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20191013185442.GR96402>