[U-Boot] One u-boot.bin for Raspberry PI 3 and 4 - possible?

Geoff Williams geoff at declarativesystems.com
Sun Sep 29 05:13:40 UTC 2019


Hi Matthias,

>> 1. On the PI 4 with mainline u-boot the screen turns yellow and wraps around on
>> itself a second or so into the linux boot (grub screen is fine). With the patch
>> applied I get the same behaviour on the PI3. Everything still works
>> the screen is
>> just messed up.
>
>
> Ok, the problem on the RPi3 honestly surprising. I'll have to check myself
> what's happening there. BTW when you talk about linux, do you use the downstream
> kernel for that?
I've been using a self-compiled kernel using sources from
https://github.com/raspberrypi/linux and tag raspberrypi-kernel_1.20190819-1.
I re-tested this by swapping to downstream kernel 4.19.75 from
https://github.com/raspberrypi/firmware commit
f5c626c64874d6e1482edf4a76aa22e5e54be63d (latest). Tried hdmi_safe=1 and
same problem. I have copied all of the DTB files and overlays from upstream to
the root of the memory card FAT partition and the kernel modules from firmware
modules directory to /lib/modules - same result


>> If I instead use rpi_3_defconfig, I get a rainbow screen on the PI4 and the
>> screen goes switches off instead of just turning yellow on the PI3.
>
>
> It's exepcted that RPi4 won't boot with rpi_3_defconfig. Background is, that
> RPi3 defconfig uses still embedded device tree which does not boot on RPi4.
That makes sense, this problem will probably go away once a combined defconfig
is available.
> On the other hand RPi4 defconfig uses the devicetree provided by the FW, that's
> why it also (somehow) works on RPi3. It's on my todo-list to create one single
> config for both RPi3 and RPi4, that wasn't done until now.
This would be perfect, at the moment I'm just using the RPi4 version for both
systems and this works fine apart from the screen and keyboard issues.
>
> I'm not sure if you mean that the screen getting switched off on the RPi3 with
> rpi_3_defconfig is a regression or if this is the behaviour you expect.
I would expect the screen to stay on ;-). rpi_3_defconfig causes the screen to
switch off right after the bcm2835-codec kernel module loads whereas
rpi_4_defconfig causes a yellow screen on both boards almost instantly.
>
>> 2. USB wireless keyboard doesn't work until Linux loads on both systems if
>> built with rpi_4_defconfig. I tried copying settings from rpi_3_defconfig[1] but
>> then keyboard didn't work on either system.
>
> Try to add CONFIG_USE_PREBOOT=y
> but that should only give you USB on the type-c connector. USB on the type-b
> connector isn't expect to work.
My wireless keyboard has a type-a dongle so that's why it won't work yet.

Thanks,
Geoff


More information about the U-Boot mailing list