On Nov 4, 2010, at 9:45 AM, Joakim Tjernlund wrote: > 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 */
I think what you want is: lwz r4, LBLAWAR1(r3) > + isync /* Wait for HW to catch up */ I dont think this is needed (unless the manual says otherwise about updates to *LAWAR* > 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 */ same here. > 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 _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot