On 7/25/08, Benjamin Herrenschmidt <[EMAIL PROTECTED]> wrote: > On Fri, 2008-07-25 at 17:00 -0500, Nathan Lynch wrote: > > Jon Smirl wrote: > > > I've lost my ability to boot on the mpc5200. Reverting this patch fixes > it. > > > > How does it fail? > > > > > > > @@ -1652,6 +1655,14 @@ struct cpu_spec * __init identify_cpu(unsigned > > > long offset, unsigned int pvr) > > > } else > > > *t = *s; > > > *PTRRELOC(&cur_cpu_spec) = &the_cpu_spec; > > > + > > > + /* > > > + * Set the base platform string once; assumes > > > + * we're called with real pvr first. > > > + */ > > > + if (powerpc_base_platform == NULL) > > > + powerpc_base_platform = t->platform; > > > + > > > > Hmm, maybe this needs RELOC/PTRRELOC tricks? > > > Hrm... indeed. > > if (RELOC(powerpc_base_platform)) > RELOC(powerpc_base_platform) = t->platform;
It completely fails booting, no console or anything. Where is RELOC defined, prom_init.c? #ifdef CONFIG_PPC64 #define RELOC(x) (*PTRRELOC(&(x))) #define ADDR(x) (u32) add_reloc_offset((unsigned long)(x)) #define OF_WORKAROUNDS 0 #else #define RELOC(x) (x) #define ADDR(x) (u32) (x) #define OF_WORKAROUNDS of_workarounds int of_workarounds; #endif > > try that. > > Ben. > > > -- Jon Smirl [EMAIL PROTECTED] _______________________________________________ Linuxppc-dev mailing list Linuxppc-dev@ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-dev