diff options
author | Mans Rullgard <mans@mansr.com> | 2010-04-14 15:49:57 +0100 |
---|---|---|
committer | Sandeep Paulraj <s-paulraj@ti.com> | 2010-09-08 14:51:09 -0400 |
commit | 096ca838b514be0a20e62500413e42f0a2bb7481 (patch) | |
tree | bb66533e7f13d20a95770f911b947b736f9dd787 /arch/arm/cpu/armv7/omap3/cache.S | |
parent | 29844707469854d9fab181edd6abe2f25fb5d208 (diff) | |
download | u-boot-imx-096ca838b514be0a20e62500413e42f0a2bb7481.zip u-boot-imx-096ca838b514be0a20e62500413e42f0a2bb7481.tar.gz u-boot-imx-096ca838b514be0a20e62500413e42f0a2bb7481.tar.bz2 |
ARMV7: OMAP3: Convert setup_auxcr() to pure asm
This function consists entirely of inline asm statements, so writing
it directly in a .S file is simpler. Additionally, the inline asm is
not safe as is, since registers are not guaranteed to be preserved
between asm() statements.
Signed-off-by: Mans Rullgard <mans@mansr.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
Diffstat (limited to 'arch/arm/cpu/armv7/omap3/cache.S')
-rw-r--r-- | arch/arm/cpu/armv7/omap3/cache.S | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/arch/arm/cpu/armv7/omap3/cache.S b/arch/arm/cpu/armv7/omap3/cache.S index cb7ca11..5a19051 100644 --- a/arch/arm/cpu/armv7/omap3/cache.S +++ b/arch/arm/cpu/armv7/omap3/cache.S @@ -43,6 +43,7 @@ .global invalidate_dcache .global l2_cache_enable .global l2_cache_disable +.global setup_auxcr /* * invalidate_dcache() @@ -156,3 +157,21 @@ l2_cache_disable: mov r0, #0 b l2_cache_set +/****************************************************************************** + * Routine: setup_auxcr() + * Description: Write to AuxCR desired value using SMI. + * general use. + *****************************************************************************/ +setup_auxcr: + mov r12, #0x3 + mrc p15, 0, r0, c1, c0, 1 + orr r0, r0, #0x10 @ Enable ASA + orr r0, r0, #1 << 5 @ Enable L1NEON + .word 0xE1600070 @ SMC + mov r12, #0x2 + mrc p15, 1, r0, c9, c0, 2 + @ Set PLD_FWD bit in L2AUXCR (Cortex-A8 erratum 725233 workaround) + orr r0, r0, #1 << 27 + .word 0xE1600070 @ SMC + bx lr + |