[U-Boot] [PATCH v2 07/13] ARM: HYP/non-sec: allow relocation to secure RAM
Albert ARIBAUD
albert.u.boot at aribaud.net
Thu Dec 12 11:47:31 CET 2013
Hi Marc,
On Sat, 7 Dec 2013 11:19:12 +0000, Marc Zyngier <marc.zyngier at arm.com>
wrote:
> The current non-sec switching code suffers from one major issue:
> it cannot run in secure RAM, as a large part of u-boot still needs
> to be run while we're switched to non-secure.
>
> This patch reworks the whole HYP/non-secure strategy by:
> - making sure the secure code is the *last* thing u-boot executes
> before entering the payload
> - performing an exception return from secure mode directly into
> the payload
> - allowing the code to be dynamically relocated to secure RAM
> before switching to non-secure.
>
> This involves quite a bit of horrible code, specially as u-boot
> relocation is quite primitive.
>
> Signed-off-by: Marc Zyngier <marc.zyngier at arm.com>
> ---
> arch/arm/cpu/armv7/nonsec_virt.S | 161 +++++++++++++++++++--------------------
> arch/arm/cpu/armv7/virt-v7.c | 59 +++++---------
> arch/arm/include/asm/armv7.h | 10 ++-
> arch/arm/include/asm/secure.h | 26 +++++++
> arch/arm/lib/bootm.c | 21 ++---
> 5 files changed, 136 insertions(+), 141 deletions(-)
> create mode 100644 arch/arm/include/asm/secure.h
It seems like patch 07/13 does not apply properly on top of current ARM.
Can you have a look? If a rebased V3 is needed, you can remove patch 01
from the list (or if it is simpler to you, keep it in and I'll just
ignore it when applying).
Amicalement,
--
Albert.
More information about the U-Boot
mailing list