[U-Boot-Users] [PATCH] MPC85xx: correct the procedure to change CCSRBAR.
Kumar Gala
galak at kernel.crashing.org
Wed Jul 2 16:48:16 CEST 2008
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
More information about the U-Boot
mailing list