On Wed, 2014-04-30 at 10:33 -0700, York Sun wrote: > On 04/28/2014 03:51 PM, York Sun wrote: > > For powerpc SoCs, the initial gd is in INIT_RAM, in most cases, resideing > > in locked D-cache. At the time the function baord_inti_f() runs, no other > > RAM is available as a stack. This technique has been used in > > arch/powerpc/lib/board.c and should be added to generic board for powerpc. > > > > Signed-off-by: York Sun <york...@freescale.com> > > --- > > common/board_f.c | 5 ++++- > > 1 file changed, 4 insertions(+), 1 deletion(-) > > > > diff --git a/common/board_f.c b/common/board_f.c > > index cbdf06f..3a00b92 100644 > > --- a/common/board_f.c > > +++ b/common/board_f.c > > @@ -970,7 +970,10 @@ static init_fnc_t init_sequence_f[] = { > > > > void board_init_f(ulong boot_flags) > > { > > -#ifndef CONFIG_X86 > > +#ifdef CONFIG_PPC > > + gd = (gd_t *)(CONFIG_SYS_INIT_RAM_ADDR + CONFIG_SYS_GBL_DATA_OFFSET); > > + __asm__ __volatile__("" : : : "memory"); > > +#elif !defined(CONFIG_X86) > > gd_t data; > > > > gd = &data; > > > > Scott, > > Please review this patch.
Could you respond to the comments in the RFC patch? No point duplicating them. > You mentioned in my RFC patch review that "gd is > already initialized at the beginning of board_init_f()". I think that's not > the > case. This change is still needed to get gd correct value. Could you elaborate? You're setting it to the same value that cpu_init_early_f() set it to (on mpc85xx -- not all PPC). -Scott _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot