Commit 53fd4b8c authored by Alison Wang's avatar Alison Wang Committed by Albert ARIBAUD

arm: mmu: Add missing volatile for reading SCTLR register

Add 'volatile' qualifier to the asm statement in get_cr()
so that the statement is not optimized out by the compiler.


Without the 'volatile', get_cr() returns a wrong value which
prevents enabling the MMU  and later causes a PCIE VA access
Signed-off-by: default avatarAlison Wang <>
parent 1275456d
......@@ -194,7 +194,7 @@ void save_boot_params_ret(void);
static inline unsigned int get_cr(void)
unsigned int val;
asm("mrc p15, 0, %0, c1, c0, 0 @ get CR" : "=r" (val) : : "cc");
asm volatile("mrc p15, 0, %0, c1, c0, 0 @ get CR" : "=r" (val) : : "cc");
return val;
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment