1/* 2 * 3 * Platform specific tweaks. This is merged into head.S by the linker. 4 * 5 */ 6 7#include <linux/linkage.h> 8#include <asm/system.h> 9 10 .section ".start", "ax" 11 12/* 13 * This code section is spliced into the head code by the linker 14 */ 15 16__plat_uncompress_start: 17 18 @ Preserve r8/r7 i.e. kernel entry values 19 mov r12, r8 20 21 mrc p15, 0, r0, c1, c0, 0 @ Read SCTLR 22 bic r0, #CR_C|CR_M 23 mcr p15, 0, r0, c1, c0, 0 @ Write SCTLR 24 nop 25 26 @ Call the cache invalidation routine 27 bl v7_all_dcache_invalidate 28 nop 29 mov r0,#0 30 ldr r3, =0x19022000 @ L2 cache controller, control reg 31 str r0, [r3, #0x100] @ Disable L2 cache 32 nop 33 @ Restore 34 mov r8, r12 35