[U-Boot] [PATCH, REGRESSION] mpc83xx: provide option to set LCRR early
Kim Phillips
kim.phillips at freescale.com
Mon Dec 7 18:12:42 CET 2009
On Sat, 5 Dec 2009 21:27:30 +0100
Peter Korsgaard <jacmet at sunsite.dk> wrote:
> >>>>> "Kim" == Kim Phillips <kim.phillips at freescale.com> writes:
>
> Kim> On Fri, 20 Nov 2009 12:42:43 +0100
> Kim> Peter Korsgaard <jacmet at sunsite.dk> wrote:
>
> >> E.G. on a 8347 board a bootup time increase of ~600ms has been observed:
>
> Kim> heh, even more on an 8313! Thanks for this - I hadn't realized the
> Kim> difference was so large (or neglected it since the move to init_r was
> Kim> done at the last moment).
>
> OK, why exactly was it moved? What do you want to protect against? I
> don't remember seing anyone complaining about the old location.
none, really. Just safety from any potential unknown behaviour:
http://lists.denx.de/pipermail/u-boot/2009-September/061580.html
> >> Fix it by introducing CONFIG_SYS_LCRR_EARLY, and set LCRR in cpu_init_f
> >> instead of in cpu_init_r if set.
>
> Kim> instead of introducing the new CONFIG_SYS_LCRR_EARLY, shouldn't we
> Kim> check for something like:
>
> Kim> !defined(CONFIG_NAND_SPL) && !defined(CONFIG_SYS_RAMBOOT)
>
> As in do the reconfig early if we're running from RAM right away?
> It's not that simple - I have a board which boots from NOR flash. As
> that is an async device there isn't any problem in changing the LBC
> settings while you're running from flash (as long as you respect the
> min access time). I have another design where the flash sits behind a
> FPGA (for signal integrity reasons), and there I have to wait until
> we're running in RAM before changing the LBC clock.
>
> On the 2nd design I even have to tell the FPGA to resync (through a GPIO
> pin) and wait a bit before I can continue, so I'm doing the LCRR config
> in board code (in board_early_init_r). The move to cpu_init_r broke that
> as well as the LCRR value is overwritten there.
ok let's leave it as _EARLY then. wrt boards in current u-boot, can
you add the _EARLY define in their default config files? I'm trying to
extend the benefit of the patch to existing boards, not only out-of-tree
boards. Speaking of which, new board patches are welcome.
Kim
More information about the U-Boot
mailing list