This series adds support for reading the amount of memory from the DDR controller. This helps on boards which come with different amounts of memory like the Radxa Rock3a. This series also fixes issues with an upstream TF-A firmware. With this the IRAM where the bootsource is stored is no longer accessible in normal mode. We have to read its contents before starting the TF-A. For this it became necessary to add a common barebox entry function for rk3568, to get a common place to read the IRAM contents. Sascha Changes since v1: - Call relocate_to_adr_full() from board code to make sure the fdt from the relocated binary is used, not from the original binary - Add patch to pass a NULL fdt to TF-A Ahmad Fatoum (2): ARM: Rockchip: implement memory read out from controller ARM: Rockchip: make bootsource logic generic to all SoCs Sascha Hauer (4): ARM: dts: rk356x: Add DMC controller node ARM: Rockchip: Add rk3568 specific barebox entry function ARM: Rockchip: rk3568: use rk3568_barebox_entry() ARM: Rockchip: Do not pass device tree to TF-A arch/arm/boards/pine64-quartz64/lowlevel.c | 30 +-- arch/arm/boards/radxa-rock3/lowlevel.c | 31 +-- .../rockchip-rk3568-bpi-r2pro/lowlevel.c | 31 +-- .../arm/boards/rockchip-rk3568-evb/lowlevel.c | 32 +-- arch/arm/dts/rk356x.dtsi | 5 + arch/arm/mach-rockchip/Makefile | 3 +- arch/arm/mach-rockchip/atf.c | 34 +++ arch/arm/mach-rockchip/bootrom.c | 51 ++++ arch/arm/mach-rockchip/dmc.c | 232 ++++++++++++++++++ arch/arm/mach-rockchip/rk3568.c | 29 +-- include/bootsource.h | 1 + include/linux/sizes.h | 3 + include/mach/rockchip/atf.h | 2 + include/mach/rockchip/bootrom.h | 32 +++ include/mach/rockchip/dmc.h | 86 +++++++ include/mach/rockchip/rk3399-regs.h | 1 + include/mach/rockchip/rk3568-regs.h | 1 + 17 files changed, 469 insertions(+), 135 deletions(-) create mode 100644 arch/arm/mach-rockchip/bootrom.c create mode 100644 arch/arm/mach-rockchip/dmc.c create mode 100644 include/mach/rockchip/bootrom.h create mode 100644 include/mach/rockchip/dmc.h -- 2.39.2