Re: [PATCH v4 0/6] rpi5: initial support

Mark Kettenis
2024-01-22T14:30:07Z

> Date: Mon, 22 Jan 2024 16:16:34 +0200
> From: "Ivan T. Ivanov" <iivanov@suse.de>
>
> Hi,
>
> On 01-22 13:57, Ivan T. Ivanov wrote:
> > > Am 20.01.24 um 10:48 schrieb Jens Maus:
> > >> Hi,
> > >>
> > >>> Am 20.01.2024 um 10:22 schrieb Stefan Wahren <wahrenst@gmx.net>:
> > >>>
> > >>> Am 19.01.24 um 22:26 schrieb Jens Maus:
> > >>>> I actually do have some good and bad news:
> > >>>>
> > >>>> 1. Good news: I got u-boot finally showing up with my RaspberryPi5 8GB both on the HDMI and on the serial debug UART like you reported.
> > >>>>
> > >>>> 2. Bad news: I actually got it working by downgrading the rpi-eeprom to the same 2023/10/30 (VERSION:30de0ba5) version like you have.
> > >>>>
> > >
> > > One idea would be to enable early debug in U-Boot (no idea how to
> > > achieve this). I assume U-Boot crashes before it's able to print the
> > > first line, but it's hard to believe it crashes at the very first
> > > instruction of U-Boot. So with some luck we should be able to narrow
> > > done the cause.
> >
> > I was able to enable early debug UART in U-Boot and I will try to
> > find what is happening, once I get some free cycles.
>
> Ok, this was relatively easy to find :-)
>
> New versions of EEPROM firmware change “kernel”/U-Boot load address
> from 0x80000 to 0x200000. And because on RPi’s CONFIG_TEXT_BASE is
> hardcoded to 0x80000 code run through the fields.
>
> Hopefully simple patch like bellow make it work fine in older and
> newer EEPROM firmware versions.
>
> Regards,
> Ivan
>
> diff --git a/configs/rpi_arm64_defconfig b/configs/rpi_arm64_defconfig
> index 11ede9435d..ce64f9554f 100644
> --- a/configs/rpi_arm64_defconfig
> +++ b/configs/rpi_arm64_defconfig
> @@ -1,6 +1,7 @@
> CONFIG_ARM=y
> CONFIG_ARCH_BCM283X=y
> CONFIG_TEXT_BASE=0x00080000
> +CONFIG_POSITION_INDEPENDENT=y

Not sure if it really matters, but for the Apple M1 config I set
CONFIG_TEXT_BASE to 0x00000000 (zero).