[PATCH u-boot v2] ARM: arch-meson: build memory banks using reported memory from registers
Simon Glass
sjg at chromium.org
Mon Nov 27 09:12:55 PST 2017
On 27 November 2017 at 02:35, Neil Armstrong <narmstrong at baylibre.com> wrote:
> As discussed at [1], the Amlogic Meson GX SoCs can embed a BL31 firmware
> and a secondary BL32 firmware.
> Since mid-2017, the reserved memory address of the BL31 firmware was moved
> and grown for security reasons.
>
> But mainline U-Boot and Linux has the old address and size fixed.
>
> These SoCs have a register interface to get the two firmware reserved
> memory start and sizes.
>
> This patch adds a dynamic reservation of the memory zones in the device tree bootmem
> reserved memory zone used by the kernel in early boot.
> To be complete, the memory zones are also added to the EFI reserved zones.
>
> Depends on patchset "Add support for Amlogic GXL Based SBCs" at [2].
>
> [1] http://lists.infradead.org/pipermail/linux-amlogic/2017-October/004860.html
> [2] http://lists.infradead.org/pipermail/linux-amlogic/2017-November/005410.html
>
> Changes since v1:
> - switched the #if to if(IS_ENABLED()) to compile all code paths
> - renamed function to meson_board_add_reserved_memory()
> - added a mem.h header with comment
> - updated all boards ft_board_setup()
>
> Changes since RFC v2:
> - reduced preprocessor load
> - kept Odroid-C2 static memory mapping as exception
>
> Changes since RFC v1:
> - switch to fdt rsv mem table and efi reserve memory
> - replaced in_le32 by readl()
>
> Reviewed-by: Simon Glass <sjg at chromium.org>
> Signed-off-by: Neil Armstrong <narmstrong at baylibre.com>
> ---
> arch/arm/include/asm/arch-meson/gxbb.h | 17 +++++++
> arch/arm/include/asm/arch-meson/mem.h | 16 +++++++
> arch/arm/mach-meson/board.c | 74 +++++++++++++++++++++++++++----
> board/amlogic/khadas-vim/khadas-vim.c | 7 +++
> board/amlogic/libretech-cc/libretech-cc.c | 8 ++++
> board/amlogic/odroid-c2/odroid-c2.c | 8 ++++
> board/amlogic/p212/p212.c | 8 ++++
> configs/khadas-vim_defconfig | 1 +
> configs/libretech-cc_defconfig | 1 +
> configs/odroid-c2_defconfig | 1 +
> configs/p212_defconfig | 1 +
> include/configs/meson-gxbb-common.h | 2 +-
> 12 files changed, 135 insertions(+), 9 deletions(-)
> create mode 100644 arch/arm/include/asm/arch-meson/mem.h
Seems good, so far as I understand it.
Reviewed-by: Simon Glass <sjg at chromium.org>
More information about the linux-amlogic
mailing list