
Joakim Tjernlund Joakim.Tjernlund@transmode.se wrote on 2010/11/19 14:15:33:
After the removal of COLD/WARM start flags my mpc8321 board didn't boot anymore. Trial and error suggests that map/remap_flash_by_xxx needs to wait after updating LBLAWAR1 to make sure the the change has reached the HW before continuing with the code that depends on it. Final fix suggested by Scott Wood.
Signed-off-by: Joakim Tjernlund Joakim.Tjernlund@transmode.se
v2: Final adjustmenst based on inpt from Scott Wood.
Guys, I can still crash my board when a add new code in start.S It is remap_flash_by_law0 that is giving me a hard time. I noticed that I could bring it down by adding a few nops after a CS0 is written but before LAW0. I also noticed that it always crash at a new cacheline.
By swapping LAW0 with CS0 it became much better(crash yet). I wonder if it is correct to configure CS0 then LAW0? It seems like one must first adjust LAW0 then CS0 to be sure it works as intended. What do you think?
OOPS, trashing r3 before calling remap_flash_by_law0 is BAD. remap_flash_by_law0 should reload r3 with IMMR instead of relying on r3 pointing to IMMR.