[U-Boot-Users] Custom MPC8347 Board can't access cache

Jerry Van Baren gerald.vanbaren at ge.com
Tue Oct 16 13:32:50 CEST 2007


Sparks, Sam wrote:
> Hello All,
> 
> I am trying to bring up a custom MPC8347 board with source based off of
> 1.3-rc1, unfortunately, I am not making it to board_init_f.
> 
> Using an abatron bdi, I've discovered the offending instruction is on
> cpu/mpc83xx/start.S:752 - 
> 
> 752    mtmsr r5   /* r5 is 0x3072 */
> 
> Has anyone else seen this issue?
> 
> For reference, here are some configuration settings that may be of
> value:
> 
> #define CFG_INIT_RAM_ADDR  0x20000000  /* Initial RAM address */
> #define CFG_INIT_RAM_END   0x1000      /* End of used area in RAM*/
> #define CFG_IBAT2L   (CFG_INIT_RAM_ADDR | BATL_PP_10 |
> BATL_MEMCOHERENCE)
> #define CFG_IBAT2U   (CFG_INIT_RAM_ADDR | BATU_BL_128K | BATU_VS |
> BATU_VP)
> 
> Does anyone have any insight? Thanks for the help,
> Sam Sparks

If you decode the value of r5 (assuming your comment is correct - DON'T 
ASSUME THAT, verify it!!!), the mtmsr is enabling caching.  My deduction 
is that caching is messing you up.

If you disable caching, does your board boot (albeit slowly)?

If so, you have two possibilities:
1) Misconfigured hardware
   1a) Memory map, BATs, etc. - look for things that should not be cached
       like I/O but are cached inadvertently.
   1b) Your SDRAM is initialized improperly.

READ THIS PAGE!!!
<http://www.denx.de/wiki/DULG/UBootCrashAfterRelocation>

2) You have a hardware (board layout) problem.

The good news is, odds are pretty good that your problem is 1b).  If it 
isn't 1b, the odds are pretty good that it is 1a).

Good luck,
gvb




More information about the U-Boot mailing list