[U-Boot,v3,0/4] RPi one binary for RPi3/4 and RPi1/2
mbox series

Message ID 20191112110029.847-1-matthias.bgg@kernel.org
Headers show
Series
  • RPi one binary for RPi3/4 and RPi1/2
Related show

Message

Matthias Brugger Nov. 12, 2019, 11 a.m. UTC
From: Matthias Brugger <mbrugger@suse.com>

In this series we prepare the RaspberryPi source code
to be able to build one binary for RPi[3,4] and one for RPi[1,2].
To achieve this we need to set the IO base address on runtime. Apart
from that, for arm64 we also need to set memory region correctly.

This patches fix this stuff. With this we could create one binary for
each armv7 and armv8 based RPis. There is still some work to do to
create a unified config, which will be done in a later patch series.

Changes in v3:
- fix armv7 build

Changes in v2:
- push fw_dtb_pointer into the .data section
- fix register access in reset_cpu()
- rename BCM2838 to BCM2711 in the correct patch
- push rpi_bcm283x_base into the .data section
- Move mem_map out of assembly file
- push mem_map into the .data section
- update the members of mem_map inestead of the pointer

Matthias Brugger (4):
  rpi: push fw_dtb_pointer in the .data section
  ARM: bcm283x: Move BCM283x_BASE to a global variable
  ARM: bcm283x: Set rpi_bcm283x_base at run-time
  ARM: bcm283x: Set memory map at run-time

 arch/arm/mach-bcm283x/Kconfig              |   6 -
 arch/arm/mach-bcm283x/include/mach/base.h  |  11 ++
 arch/arm/mach-bcm283x/include/mach/mbox.h  |   4 +-
 arch/arm/mach-bcm283x/include/mach/sdhci.h |   5 +-
 arch/arm/mach-bcm283x/include/mach/timer.h |   7 +-
 arch/arm/mach-bcm283x/include/mach/wdog.h  |   5 +-
 arch/arm/mach-bcm283x/init.c               | 140 +++++++++++++++++++++
 arch/arm/mach-bcm283x/mbox.c               |   1 +
 arch/arm/mach-bcm283x/reset.c              |  20 ++-
 board/raspberrypi/rpi/lowlevel_init.S      |  12 +-
 board/raspberrypi/rpi/rpi.c                |  49 +-------
 include/configs/rpi.h                      |   4 +
 12 files changed, 192 insertions(+), 72 deletions(-)
 create mode 100644 arch/arm/mach-bcm283x/include/mach/base.h