From: Vikram Kanigiri Date: Thu, 20 Mar 2014 12:23:21 +0000 (+0000) Subject: Fix the disable_mmu code X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=5132060c48fe2dbc3ce64755cd83b61d6e017f10;p=project%2Fbcm63xx%2Fatf.git Fix the disable_mmu code Remove the hard coding of all the MMU related registers with 0 and disable MMU by clearing the M and C bit in SCTLR_ELx Change-Id: I4a0b1bb14a604734b74c32eb31315d8504a7b8d8 --- diff --git a/plat/fvp/aarch64/plat_common.c b/plat/fvp/aarch64/plat_common.c index 9dbcb8ff..1de6c03e 100644 --- a/plat/fvp/aarch64/plat_common.c +++ b/plat/fvp/aarch64/plat_common.c @@ -91,11 +91,11 @@ void enable_mmu() void disable_mmu(void) { - /* Zero out the MMU related registers */ - write_mair(0); - write_tcr(0); - write_ttbr0(0); - write_sctlr(0); + unsigned long sctlr; + + sctlr = read_sctlr(); + sctlr = sctlr & ~(SCTLR_M_BIT | SCTLR_C_BIT); + write_sctlr(sctlr); /* Flush the caches */ dcsw_op_all(DCCISW);