On Jul 2, 2008, at 9:25 AM, Andrew Klossner wrote:
> The MPC8555E and MPC8548E reference manuals are quite specific about
> the formula required to change the value of CCSRBAR. This patch
> implements that formula.
Those manuals are not correct in their description of updating CCSRBAR.
The current code meets all the requirements excepting doing a load
from some other address location.
So you really want:
temp = in_be32((volatile u32 *)CFG_CCSRBAR_DEFAULT);
out_be32((volatile u32 *)CFG_CCSRBAR_DEFAULT,
CFG_CCSRBAR_PHYS >> 12);
/* do a dummy load from somewhere else */
temp = in_be32((volatile u32 *)TEXT_BASE);
temp = in_be32((volatile u32 *)CFG_CCSRBAR);
The in_be32/out_be32 cover the sync requirements that are needed.
- k
-------------------------------------------------------------------------
Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW!
Studies have shown that voting for your favorite open source project,
along with a healthy diet, reduces your potential for chronic lameness
and boredom. Vote Now at http://www.sourceforge.net/community/cca08
_______________________________________________
U-Boot-Users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/u-boot-users