Welcome to mirror list, hosted at ThFree Co, Russian Federation.

cygwin.com/git/newlib-cygwin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeff Johnston <jjohnstn@redhat.com>2014-01-24 23:01:15 +0400
committerJeff Johnston <jjohnstn@redhat.com>2014-01-24 23:01:15 +0400
commit0388ee3d90900bf61e33c3adcec4b27be4891974 (patch)
tree3f07ae906c539f6f6ecb57b399f414baf7c0cb94 /libgloss/aarch64
parent76e4f83fc6c68cfe319df5cad0ab7e65cd6eb4e9 (diff)
2014-01-24 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
* aarch64/cpu-init/rdimon-aem-el3.S (flat_map): Clear WXN bit in SCTLR_EL3. Add dsb.
Diffstat (limited to 'libgloss/aarch64')
-rw-r--r--libgloss/aarch64/cpu-init/rdimon-aem-el3.S5
1 files changed, 4 insertions, 1 deletions
diff --git a/libgloss/aarch64/cpu-init/rdimon-aem-el3.S b/libgloss/aarch64/cpu-init/rdimon-aem-el3.S
index 6ddf62345..463762703 100644
--- a/libgloss/aarch64/cpu-init/rdimon-aem-el3.S
+++ b/libgloss/aarch64/cpu-init/rdimon-aem-el3.S
@@ -138,9 +138,12 @@ _flat_map:
mrs x0, sctlr_el3
ldr x1, =0x100d /* bits I(12) SA(3) C(2) M(0) */
- bic x0, x0, #2 /* clear bit A(1) */
+ bic x0, x0, #(1 << 1) /* clear bit A(1) */
+ mov x2, #(1 << 19) /* clear WXN */
+ bic x0, x0, x2
orr x0, x0, x1 /* set bits */
+ dsb sy
msr sctlr_el3, x0
isb
ret