
On Sat, Nov 18, 2023 at 05:41:34PM +0100, Dmitry Malkin wrote:
I was not able to boot rpi5 with the latest master. I run into dram_init() error:
DRAM: mbox: Timeout waiting for response bcm2835: Could not query ARM memory size
Apparently there is a new peripheral layout and ARMC MBOX has a different offset within.
Turns out there is a compatible node "brcm,bcm2835-mbox" for all RPIs (bcm238x/bcm271x).
After fixing this I got to the point where mmu_setup() was hanging (looks like it was due to incorrect mapping). So I've added a definition of first gigabyte of RAM and SOC range for bcm2712 into rpi.c.
With those two patches and rpi_arm64_defconfig (with disabled CONFIG_VIDEO_BCM2835) I'm able to get a working u-boot prompt (over serial). FDT comes from firmware (EEPROM).
These patches are based on v2024.01-rc2 and tested with RPI5 8GB.
Known issues:
- CONFIG_VIDEO_BCM2835 doesn't work.
- MBOX get board revision (0x10002) doesn't work (the response status
is 0x8000_0001).
Dmitry Malkin (2): rpi5: add alternative way to get MBOX address via FDT node rpi5: add initial memory map for bcm2712
arch/arm/mach-bcm283x/include/mach/base.h | 1 + arch/arm/mach-bcm283x/include/mach/mbox.h | 4 ++-- arch/arm/mach-bcm283x/init.c | 29 ++++++++++++++++++++++- 3 files changed, 31 insertions(+), 3 deletions(-)
I'm glad to someone is looking at this currently, thanks! I suspect we'll need a number of device compatible updates (and related tweaks) to get most things working.