From: Dave Liu Date: Tue, 28 Oct 2008 09:46:12 +0000 (+0800) Subject: 86xx: Move the clear_tlbs before MMU turn on X-Git-Tag: v2009.01-rc1~106^2~5 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=dc2adad85bf580d65916c940683f6e9671e8a5dd;p=oweals%2Fu-boot.git 86xx: Move the clear_tlbs before MMU turn on We must invalidate TLBs before MMU turn on, but currently the code is not, if there are some stale TLB entry valid in the TLBs, it will cause strange issue. Signed-off-by: Dave Liu Acked-by: Becky Bruce --- diff --git a/cpu/mpc86xx/start.S b/cpu/mpc86xx/start.S index 159f3e1743..30e60477c5 100644 --- a/cpu/mpc86xx/start.S +++ b/cpu/mpc86xx/start.S @@ -202,8 +202,12 @@ boot_warm: mtmsr 0 #endif + /* Invalidate BATs */ bl invalidate_bats sync + /* Invalidate all of TLB before MMU turn on */ + bl clear_tlbs + sync #ifdef CONFIG_SYS_L2 /* init the L2 cache */ @@ -275,7 +279,6 @@ in_flash: /* setup the rest of the bats */ bl setup_bats - bl clear_tlbs sync #if (CONFIG_SYS_CCSRBAR_DEFAULT != CONFIG_SYS_CCSRBAR)