aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-omap2/sram34xx.S
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm/mach-omap2/sram34xx.S')
-rw-r--r--arch/arm/mach-omap2/sram34xx.S6
1 files changed, 5 insertions, 1 deletions
diff --git a/arch/arm/mach-omap2/sram34xx.S b/arch/arm/mach-omap2/sram34xx.S
index de99ba2a57ab..3637274af5be 100644
--- a/arch/arm/mach-omap2/sram34xx.S
+++ b/arch/arm/mach-omap2/sram34xx.S
@@ -129,8 +129,11 @@ ENTRY(omap3_sram_configure_core_dpll)
129 ldr r4, [sp, #80] 129 ldr r4, [sp, #80]
130 str r4, omap_sdrc_mr_1_val 130 str r4, omap_sdrc_mr_1_val
131skip_cs1_params: 131skip_cs1_params:
132 mrc p15, 0, r8, c1, c0, 0 @ read ctrl register
133 bic r10, r8, #0x800 @ clear Z-bit, disable branch prediction
134 mcr p15, 0, r10, c1, c0, 0 @ write ctrl register
132 dsb @ flush buffered writes to interconnect 135 dsb @ flush buffered writes to interconnect
133 136 isb @ prevent speculative exec past here
134 cmp r3, #1 @ if increasing SDRC clk rate, 137 cmp r3, #1 @ if increasing SDRC clk rate,
135 bleq configure_sdrc @ program the SDRC regs early (for RFR) 138 bleq configure_sdrc @ program the SDRC regs early (for RFR)
136 cmp r1, #SDRC_UNLOCK_DLL @ set the intended DLL state 139 cmp r1, #SDRC_UNLOCK_DLL @ set the intended DLL state
@@ -148,6 +151,7 @@ skip_cs1_params:
148 beq return_to_sdram @ return to SDRAM code, otherwise, 151 beq return_to_sdram @ return to SDRAM code, otherwise,
149 bl configure_sdrc @ reprogram SDRC regs now 152 bl configure_sdrc @ reprogram SDRC regs now
150return_to_sdram: 153return_to_sdram:
154 mcr p15, 0, r8, c1, c0, 0 @ restore ctrl register
151 isb @ prevent speculative exec past here 155 isb @ prevent speculative exec past here
152 mov r0, #0 @ return value 156 mov r0, #0 @ return value
153 ldmfd sp!, {r1-r12, pc} @ restore regs and return 157 ldmfd sp!, {r1-r12, pc} @ restore regs and return