[U-Boot] U-boot 2017.07 not working on Raspberry Pi

Jonathan Gray jsg at jsg.id.au
Thu Aug 3 09:02:06 UTC 2017

On Wed, Aug 02, 2017 at 01:13:30PM +0100, Paul Barker wrote:
> I'm currently testing U-boot 2017.07 on Raspberry Pi, both on a Model
> B+ and a Raspberry Pi 3. On both devices I'm seeing two issues with
> u-boot:
> * U-boot can't boot the Linux kernel, it just hangs at "Starting kernel ...".
> * U-boot doesn't recognise any input via a USB keyboard.
> These issues were not present in U-boot 2017.05. I see them both when
> building U-boot via OpenEmbedded and when building using
> arm-linux-gnueabi-gcc on Debian Stretch (GCC 6.3.0).
> After bisecting to identify the commits which introduced these issues,
> I've found I can get a working U-boot by doing the following:
> * Start with U-boot 2017.07
> * Revert "dm: arm: rpi: Move to driver model for USB" (25085236)
> * Revert "dm: arm: rpi: Use driver model for Ethernet" (d90385be)
> * Revert "dm: arm: rpi: Drop CONFIG_OF_EMBED" (25877d4e)
> * Drop CONFIG_USB_STORAGE as leaving this enables gives a compile
> error when CONFIG_DM_USB is not set.
> I've staged these changes here for testing:
> https://gitlab.com/toganlabs/u-boot/commits/pbarker/rpi
> Reverting these commits is definitely a step backwards though so I'm
> hoping for another solution. Has anyone else has seen these issues and
> got any ideas? Or has anyone else got U-boot 2017.07 working on the
> Raspberry Pi?

We had to revert 25877d4e4c45451c5398aec3de50e0d5befe0e9f to add
CONFIG_OF_EMBED back to get OpenBSD to continue working on the rpi3.

efi_loader: disk: iterate only over valid block devices

which is part of master/2017.09-rc1 was also required for someone that
was booting off USB after changes made between 2017.05 and 2017.07.

More information about the U-Boot mailing list