[U-Boot] [PATCH 1/2] ARM: cache: introduce weak arm_setup_identity_mapping

Tom Rini trini at ti.com
Mon Nov 19 21:48:53 CET 2012


On Mon, Nov 19, 2012 at 03:59:33PM +0100, Vincent Stehlé wrote:
> Separate the MMU identity mapping for ARM in a weak function, to allow
> redefinition with platform specific function.
> 
> This is motivated by the need to unmap the region near address zero on HS OMAP
> devices, to avoid speculative accesses. Accessing this region causes security
> violations, which we want to avoid.
> 
> Signed-off-by: Vincent Stehlé <v-stehle at ti.com>
> ---
>  arch/arm/lib/cache-cp15.c |   18 +++++++++++++++---
>  1 file changed, 15 insertions(+), 3 deletions(-)
> 
> diff --git a/arch/arm/lib/cache-cp15.c b/arch/arm/lib/cache-cp15.c
> index 939de10..886fe5c 100644
> --- a/arch/arm/lib/cache-cp15.c
> +++ b/arch/arm/lib/cache-cp15.c
> @@ -40,6 +40,17 @@ void __arm_init_before_mmu(void)
>  void arm_init_before_mmu(void)
>  	__attribute__((weak, alias("__arm_init_before_mmu")));
>  
> +void __arm_setup_identity_mapping(u32 *page_table)
> +{
> +	int i;
> +
> +	/* Set up an identity-mapping for all 4GB, rw for everyone */
> +	for (i = 0; i < 4096; i++)
> +		page_table[i] = i << 20 | (3 << 10) | 0x12;
> +}
> +void arm_setup_identity_mapping(u32 *page_table)
> +	__attribute__((weak, alias("__arm_setup_identity_mapping")));

Please use __weak as found in <linux/compiler.h>, thanks.

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20121119/e348272a/attachment.pgp>


More information about the U-Boot mailing list