[U-Boot] [PATCH 3/5] ARM: DRA7: Add secure emif setup calls

Andrew F. Davis afd at ti.com
Tue Sep 6 22:41:47 CEST 2016


On 09/02/2016 12:40 AM, Daniel Allred wrote:
> After EMIF DRAM is configured, but before it is used,
> calls are made on secure devices to reserve any configured
> memory region needed by the secure world and then to lock the
> EMIF firewall configuration. If any other firewall
> configuration needs to be applied, it must happen before the
> lock call.
> 
> Signed-off-by: Daniel Allred <d-allred at ti.com>
> ---
>  arch/arm/cpu/armv7/omap-common/emif-common.c | 15 +++++++++++++++
>  1 file changed, 15 insertions(+)
> 
> diff --git a/arch/arm/cpu/armv7/omap-common/emif-common.c b/arch/arm/cpu/armv7/omap-common/emif-common.c
> index 2b79010..b26984e 100644
> --- a/arch/arm/cpu/armv7/omap-common/emif-common.c
> +++ b/arch/arm/cpu/armv7/omap-common/emif-common.c
> @@ -14,6 +14,7 @@
>  #include <asm/arch/clock.h>
>  #include <asm/arch/sys_proto.h>
>  #include <asm/omap_common.h>
> +#include <asm/omap_sec_common.h>
>  #include <asm/utils.h>
>  #include <linux/compiler.h>
>  
> @@ -1477,6 +1478,20 @@ void sdram_init(void)
>  			debug("get_ram_size() successful");
>  	}
>  
> +#if defined(CONFIG_TI_SECURE_DEVICE)
> +	/*
> +	 * On HS devices, do static EMIF firewall configuration
> +	 * but only do it if not already running in SDRAM
> +	 */
> +	if (!in_sdram)

Should we hang in this case?

> +		if (0 != secure_emif_reserve())

"0 != " could be removed here and below.

> +			hang();
> +
> +	/* On HS devices, ensure static EMIF firewall APIs are locked */
> +	if (0 != secure_emif_firewall_lock())
> +		hang();
> +#endif
> +
>  	if (sdram_type == EMIF_SDRAM_TYPE_DDR3 &&
>  	    (!in_sdram && !warm_reset()) && (!is_dra7xx())) {
>  		if (emif1_enabled)
> 


More information about the U-Boot mailing list