After the removal of COLD/WARM start flags my mpc8321 board didn't boot anymore. Trial and error suggests that map_flash_by_law1 needs an isync(padding with 4 nop's also did the trick) after updating LBLAWAR1 to make sure the the change has reached the HW before continuing with the code that depends on it. Add an isync to remap_flash_by_law0 for good measure too.
Signed-off-by: Joakim Tjernlund <joakim.tjernl...@transmode.se> --- arch/powerpc/cpu/mpc83xx/start.S | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) diff --git a/arch/powerpc/cpu/mpc83xx/start.S b/arch/powerpc/cpu/mpc83xx/start.S index e8b1ebc..d3ec580 100644 --- a/arch/powerpc/cpu/mpc83xx/start.S +++ b/arch/powerpc/cpu/mpc83xx/start.S @@ -1191,6 +1191,7 @@ map_flash_by_law1: bne 1b stw r4, LBLAWAR1(r3) /* LBLAWAR1 <= 8MB Flash Size */ + isync /* Wait for HW to catch up */ blr /* Though all the LBIU Local Access Windows and LBC Banks will be @@ -1229,5 +1230,6 @@ remap_flash_by_law0: xor r4, r4, r4 stw r4, LBLAWBAR1(r3) stw r4, LBLAWAR1(r3) /* Off LBIU LAW1 */ + isync /* Wait for HW to catch up */ blr #endif /* CONFIG_SYS_FLASHBOOT */ -- 1.7.2.2 _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot