Browse Source

initialize clocks earlier for lpj to be correct (#7548)

SVN-Revision: 23746
Florian Fainelli 15 years ago
parent
commit
21aeb28779
1 changed files with 53 additions and 0 deletions
  1. 53 0
      target/linux/ar7/patches-2.6.32/170-clocks_init_earlier.patch

+ 53 - 0
target/linux/ar7/patches-2.6.32/170-clocks_init_earlier.patch

@@ -0,0 +1,53 @@
+--- a/arch/mips/ar7/clock.c
++++ b/arch/mips/ar7/clock.c
+@@ -232,12 +232,12 @@ static void tnetd7300_set_clock(u32 shif
+ 	calculate(base_clock, frequency, &prediv, &postdiv, &mul);
+ 
+ 	writel(((prediv - 1) << PREDIV_SHIFT) | (postdiv - 1), &clock->ctrl);
+-	msleep(1);
++	mdelay(1);
+ 	writel(4, &clock->pll);
+ 	while (readl(&clock->pll) & PLL_STATUS)
+ 		;
+ 	writel(((mul - 1) << MUL_SHIFT) | (0xff << 3) | 0x0e, &clock->pll);
+-	msleep(75);
++	mdelay(75);
+ }
+ 
+ static void __init tnetd7300_init_clocks(void)
+@@ -407,7 +407,7 @@ static void __init tnetd7200_init_clocks
+ 	iounmap(bootcr);
+ }
+ 
+-int __init ar7_init_clocks(void)
++void __init ar7_init_clocks(void)
+ {
+ 	switch (ar7_chip_id()) {
+ 	case AR7_CHIP_7100:
+@@ -421,7 +421,4 @@ int __init ar7_init_clocks(void)
+ 	default:
+ 		break;
+ 	}
+-
+-	return 0;
+ }
+-arch_initcall(ar7_init_clocks);
+--- a/arch/mips/ar7/time.c
++++ b/arch/mips/ar7/time.c
+@@ -26,5 +26,7 @@
+ 
+ void __init plat_time_init(void)
+ {
++	ar7_init_clocks();
++
+ 	mips_hpt_frequency = ar7_cpu_freq() / 2;
+ }
+--- a/arch/mips/include/asm/mach-ar7/ar7.h
++++ b/arch/mips/include/asm/mach-ar7/ar7.h
+@@ -178,4 +178,6 @@ static inline void ar7_device_off(u32 bi
+ 	msleep(20);
+ }
+ 
++extern void __init ar7_init_clocks(void);
++
+ #endif /* __AR7_H__ */