[U-Boot] bootefi failures on armv7

Ilias Apalodimas
2019-04-10T18:38:30Z

Hello Heinrich,
>
> @Simon, @Alex
> Why did we ever introduce this value?
> 127 MB in baf70c02107 ("efi: Relocate FDT to 127MB instead of 128MB")
> 128 MB in ad0c1a3d2ce ("efi_loader: Put fdt into convenient location")
>
> baf70c02107 says that the Sandbox has only 128 MiB. But why should we
> need to hard code this here. When the Sandbox has initialized the memory
> map efi_allocate_pool() will take care of finding an address in the
> available memory anyway.
>
> ad0c1a3d2ce mentions 128 MB as recommended value but does not provide
> any reference. I think we should provide the source of this recommendation.
>
> According to
> https://www.st.com/en/microcontrollers-microprocessors/stm32mp157.html
> STM32MP157 comes with support for TrustZone and SecureBoot.
>
> https://www.st.com/en/microcontrollers-microprocessors/stm32mp157.html#tools-software:
>
> "The developer package comes with
>
> Boot chain based on TF-A and U-Boot
> OP-TEE secure OS running on the Arm® Cortex®-A in secure mode."
>
> The Linux device tree does not reserve a memory region for the trusted
> firmware (TF-A) and the trusted execution environment (OP-TEE) Shouldn't
> there be a reserved memory area for both.
>
> If TF-A or OP-TEE reside near 0xC8000000, this would explain the
> observed behavior.
>
> @Ilias
> Do you use TF-A or OP-TEE in your setup?
No none of those are present in my tests.

Note that in both workaround 1/2 fdt ends up at the same address (0xc7ef4000).

Thanks
/Ilias