
"Peter" == Peter Korsgaard jacmet@sunsite.dk writes:
Peter> Commit c7190f02 (retain POR values of non-configured ACR, SPCR, SCCR, Peter> and LCRR bitfields) moved the LCRR assignment to after relocation Peter> to RAM because of the potential problem with changing the local bus Peter> clock while executing from flash.
Comments?
Peter> For some boards this isn't needed (E.G. when running from a normal async Peter> NOR flash), and running all code up to cpu_init_r at the slow bootup Peter> speed adversively affects the startup time.
Peter> E.G. on a 8347 board a bootup time increase of ~600ms has been observed:
Peter> 0.020 CPU: e300c1, MPC8347_PBGA_EA, Rev: 3.0 at 400 MHz, CSB: 266.667 MHz Peter> 0.168 RS: 232 Peter> 0.172 I2C: ready Peter> 0.176 DRAM: 64 MB Peter> 1.236 FLASH: 32 MB
Peter> Versus:
Peter> 0.016 CPU: e300c1, MPC8347_PBGA_EA, Rev: 3.0 at 400 MHz, CSB: 266.667 MHz Peter> 0.092 RS: 232 Peter> 0.092 I2C: ready Peter> 0.096 DRAM: 64 MB Peter> 0.644 FLASH: 32 MB
Peter> Fix it by introducing CONFIG_SYS_LCRR_EARLY, and set LCRR in cpu_init_f Peter> instead of in cpu_init_r if set.
Peter> Signed-off-by: Peter Korsgaard jacmet@sunsite.dk Peter> --- Peter> cpu/mpc83xx/cpu_init.c | 35 +++++++++++++++++++++++++++++++++++ Peter> 1 files changed, 35 insertions(+), 0 deletions(-)