
On 6/13/19 7:48 AM, Stefan Roese wrote:
Added Heinrich to Cc (and use Alex's new address)
On 11.06.19 13:00, Patrick Wildt wrote:
The ARM-TF and the optional OP-TEE use the memory region 0x4000000 to 0x5400000 and should be reserved in the memory map, otherwise the OS might wrongly assume that it can use that memory area for itself. This has also been done in EDK2 [0].
[0] https://github.com/tianocore/edk2-platforms/commit/bf1c4a2cf8024669d1748e78c...
Signed-off-by: Patrick Wildt patrick@blueri.se
diff --git a/arch/arm/mach-mvebu/arm64-common.c b/arch/arm/mach-mvebu/arm64-common.c index aaf7b7c447..7572aad8c9 100644 --- a/arch/arm/mach-mvebu/arm64-common.c +++ b/arch/arm/mach-mvebu/arm64-common.c @@ -14,6 +14,7 @@ #include <asm/arch/cpu.h> #include <asm/arch/soc.h> #include <asm/armv8/mmu.h> +#include <efi_loader.h> DECLARE_GLOBAL_DATA_PTR; @@ -142,5 +143,11 @@ int arch_early_init_r(void) pci_init(); #endif +#ifdef CONFIG_EFI_LOADER + /* Reserve trusted SRAM section */ + efi_add_memory_map(0x04000000, 0x01400000 >> EFI_PAGE_SHIFT, + EFI_RESERVED_MEMORY_TYPE, false); +#endif
We already have a reservation via the device tree for a part of this area [0x4000000-0x4200000[ in U-Boot and Linux:
cf63dad014bae080445bccbf9cecbe05f2cbed45 arm64: dts: marvell: armada-ap806: reserve PSCI area
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?h...
As the concerned boards can be booted not only via bootefi but also via booti I suggest to update the device trees in Linux and U-Boot.
Best regards
Heinrich
return 0; }
I would like to see some comments from the U-Boot "EFI guys", if this is the correct approach. I remember some discussions about using "reserved-memory" in the DT for this but I might be wrong here.
Any comments?
Thanks, Stefan