On Tuesday 21 July 2009 15:33:20 Bob Burke wrote: > The system clock frequency on the Sequoia board is 33.000000 MHz not > 33.333333 MHz; this causes the system time to drift more than 30 seconds > per hour. > > diff -ruN a/arch/powerpc/boot/cuboot-sequoia.c > b/arch/powerpc/boot/cuboot-sequoia.c > --- a/arch/powerpc/boot/cuboot-sequoia.c 2009-05-18 > 19:52:34.000000000 -0400 > +++ b/arch/powerpc/boot/cuboot-sequoia.c 2009-07-21 > 09:13:13.000000000 -0400 > @@ -37,7 +37,7 @@ > > static void sequoia_fixups(void) > { > - unsigned long sysclk = 33333333; > + unsigned long sysclk = 33000000; > > ibm440ep_fixup_clocks(sysclk, 11059200, 50000000); > ibm4xx_fixup_ebc_ranges("/plb/opb/ebc");
Unfortunately it's not that easy. Earlier Sequoia board revisions are equipped with an 33.333MHz oscillator. This can be detected via a CPLD register though. Here the "code" from U-Boot (just as an example): /* Detect Sequoia PLL input clock automatically via CPLD bit */ #define CONFIG_SYS_BCSR_BASE 0xc0000000 #define CONFIG_SYS_CLK_FREQ ((in8(CONFIG_SYS_BCSR_BASE + 3) & 0x80) ? \ 33333333 : 33000000) But why are you using the boot wrapper? If your U-Boot isn't too old, you can boot uImage directly (with dtb of course). No need for the wrapper. Thanks, Stefan _______________________________________________ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev