rpi4b main-n245392-8423f5d4c12 won't boot due to microsd timeout (13.0-RC2 not good for RPi* firmware)

Emmanuel Vadot manu at bidouilliste.com
Sat Mar 13 09:12:37 UTC 2021


On Fri, 12 Mar 2021 17:03:31 -0800
Mark Millard via freebsd-arm <freebsd-arm at freebsd.org> wrote:

> 
> 
> On 2021-Mar-12, at 16:29, Mark Millard <marklmi at yahoo.com> wrote:
> 
> > On 2021-Mar-12, at 15:36, tech-lists <tech-lists at zyxst.net> wrote:
> > 
> >> On Fri, Mar 12, 2021 at 10:59:09AM -0800, Mark Millard wrote:
> >>> 
> >>> FreeBSD-14.0-CURRENT-arm64-aarch64-RPI-20210311-15565e0a217-257277.img.xz
> >> 
> >> I saved the working kernel.old image and wrote
> >> FreeBSD-14.0-CURRENT-arm64-aarch64-RPI-20210311-15565e0a217-257277.img
> >> to the microsd, added latest start4.elf and fixup4.dat and u-boot and
> >> confirm this won't boot with usb stuff attached, which I think is a
> >> different issue?
> > 
> > Different issue and a commit of the intended fix has
> > been made for the USB storage device handling problem
> > in the FreeBSD kernel.
> > 
> >> Consoles: EFI console      Reading loader env vars from /efi/freebsd/loader.env
> >>   Setting currdev to disk0p1:
> >>   FreeBSD/arm64 EFI loader, Revision 1.1
> >>   (Thu Mar 11 07:29:18 UTC 2021 root at releng1.nyi.freebsd.org)
> >> 
> >>      Command line arguments: loader.efi
> >>      Image base: 0x39df7000
> >>      EFI version: 2.80
> >>      EFI Firmware: Das U-Boot (rev 8224.4096)
> >>      Console: comconsole (0)
> >> 
> >> root at generic:/boot/msdos # strings start4.elf | grep VC_BUILD_ID_
> >> VC_BUILD_ID_USER: dom
> >> VC_BUILD_ID_TIME: 12:10:40
> >> VC_BUILD_ID_VARIANT: start
> >> VC_BUILD_ID_TIME: Feb 25 2021
> >> VC_BUILD_ID_BRANCH: bcm2711_2
> >> VC_BUILD_ID_HOSTNAME: buildbot
> >> VC_BUILD_ID_PLATFORM: raspberrypi_linux
> >> VC_BUILD_ID_VERSION: 564e5f9b852b23a330b1764bcf0b2d022a20afd0 (clean)
> >> 
> >> I'm going to try building a no-debug kernel next
> > 
> > You could potentially build code with the intended
> > fix in it -- either debug or non-debug.
> > 
> >> thanks for your help. I'll close the bugzilla ticket.
> > 
> > You are welcome.
> > 
> > The Continuous Integration builds involving the
> > committed fix for the USB storage device panic by
> > the debug kernels have started (first builds for
> > each platform might be done). For aarch64:
> > 
> > https://artifact.ci.freebsd.org/snapshot/main/7381bbee29df959e88ec59866cf2878263e7f3b2/arm64/aarch64/
> > 
> > has such materials already, including kernel.txz and
> > kernel-dbg.txz . I mounted the ufs file system on the
> > microsd card that was previously initialized from:
> > 
> > FreeBSD-14.0-CURRENT-arm64-aarch64-RPI-20210311-15565e0a217-257277.img.xz
> > 
> > I mounted that as /mnt and updated the media via:
> > 
> > # tar -xpf kernel.txz -C /mnt/
> > # tar -xpf kernel-dbg.txt -C /mnt/
> > 
> > I then dismounted. So I now have microsd card media
> > with a debug main kernel that handles USB storage
> > media again on the RPi4B 8 GiByte and such --until
> > the next normal snapshot that happens to be in
> > working order from which I could update that media
> > again.
> > 
> > One property of:
> > 
> > https://artifact.ci.freebsd.org/snapshot/
> > 
> > materials is that they stick around for about a year.
> > Another is that for any specific platform, only some
> > commits are built. Which commits are built can vary
> > by platform.
> > 
> > (I do not normally use debug builds. But I'm updating
> > the non-debug ones to be based on a commit that spans
> > the fix as well.)
> 
> 
> Unfortunately, FreeBSD-13.0-RC2-arm64-aarch64-RPI.img
> still has older RPi* firmware that does not work:
> 
> After initalizing a microsd card from:
> 
> FreeBSD-13.0-RC2-arm64-aarch64-RPI.img
> 
> and mounting it on /mnt , I see:
> 
> # strings /mnt/start4.elf | grep VC_BUILD_ID_
> VC_BUILD_ID_USER: dom
> VC_BUILD_ID_TIME: 22:19:57
> VC_BUILD_ID_VARIANT: start
> VC_BUILD_ID_TIME: Jan 27 2021
> VC_BUILD_ID_BRANCH: bcm2711_2
> VC_BUILD_ID_HOSTNAME: buildbot
> VC_BUILD_ID_PLATFORM: raspberrypi_linux
> VC_BUILD_ID_VERSION: 99d9a48302e4553cff3688692bb7e9ac760a03fa (clean)
> 
> 
> By contrast doing similarly with:
> 
> FreeBSD-14.0-CURRENT-arm64-aarch64-RPI-20210311-15565e0a217-257277.img
> 
> and looking a the /mnt , I see:
> 
> # strings /mnt/start4.elf | grep VC_BUILD_ID_
> VC_BUILD_ID_USER: dom
> VC_BUILD_ID_TIME: 12:10:40
> VC_BUILD_ID_VARIANT: start
> VC_BUILD_ID_TIME: Feb 25 2021
> VC_BUILD_ID_BRANCH: bcm2711_2
> VC_BUILD_ID_HOSTNAME: buildbot
> VC_BUILD_ID_PLATFORM: raspberrypi_linux
> VC_BUILD_ID_VERSION: 564e5f9b852b23a330b1764bcf0b2d022a20afd0 (clean)
> 
> 
> The Feb 25 2021 firmware works on various RPI4B's
> and the Jan 27 2021 does not, for example.
> 
> This means that 13.0-RC2 is not an appropriate
> basis for the msdos file system content.
> 
> (I've not checked u-boot .)
> 
> Replacing the older with a copy of the newer would
> be an option.
> 
> 
> 
> ===
> Mark Millard
> marklmi at yahoo.com
> ( dsl-only.net went
> away in early 2018-Mar)

 I'm not sure why but 2021Q1 at r567285 was chosen as the revision to tag
RELEASE_13_0_0 and this doesn't include the latest MFH for
rpi-firmware. I'll check with gjb@ how to address this problem.

-- 
Emmanuel Vadot <manu at bidouilliste.com> <manu at FreeBSD.org>


More information about the freebsd-arm mailing list