Make rdc boot a little further, still broken though, resync kernel config
[openwrt/svn-archive/archive.git] / target / linux / rdc-2.6 / patches / 000-rdc_fixes.patch
index 7d6fa3af320b8003d29b8a25e21168be67db0574..482088c2ef9bcc47269cb9d0d3fdb52e68a64f15 100644 (file)
@@ -26,23 +26,10 @@ diff -urN linux-2.6.19/arch/i386/Makefile linux-2.6.19.new/arch/i386/Makefile
 +# RDC subarch support
 +mflags-$(CONFIG_X86_RDC)      := -Iinclude/asm-i386/mach-generic
 +mcore-$(CONFIG_X86_RDC)               := mach-default
-+core-$(CONFIG_X86_RDC)                := arch/i386/mach-rdc/
++core-$(CONFIG_X86_RDC)                += arch/i386/mach-rdc/
  
  # default subarch .h files
  mflags-y += -Iinclude/asm-i386/mach-default
-diff -urN linux-2.6.19/arch/i386/kernel/time.c linux-2.6.19.new/arch/i386/kernel/time.c
---- linux-2.6.19/arch/i386/kernel/time.c       2006-11-29 22:57:37.000000000 +0100
-+++ linux-2.6.19.new/arch/i386/kernel/time.c   2006-12-17 17:13:10.000000000 +0100
-@@ -361,7 +361,8 @@
- static void __init hpet_time_init(void)
- {
-       struct timespec ts;
--      ts.tv_sec = get_cmos_time();
-+      /* RDC board does not have CMOS */
-+      ts.tv_sec = 0;
-       ts.tv_nsec = (INITIAL_JIFFIES % HZ) * (NSEC_PER_SEC / HZ);
-       do_settimeofday(&ts);
 diff -urN linux-2.6.19/arch/i386/mach-rdc/Makefile linux-2.6.19.new/arch/i386/mach-rdc/Makefile
 --- linux-2.6.19/arch/i386/mach-rdc/Makefile   1970-01-01 01:00:00.000000000 +0100
 +++ linux-2.6.19.new/arch/i386/mach-rdc/Makefile       2006-12-17 17:13:33.000000000 +0100
@@ -835,3 +822,42 @@ diff -urN linux-2.6.19/arch/i386/mach-rdc/led.h linux-2.6.19.new/arch/i386/mach-
 +#define LED_BLINK_RANDOM    (LED_BLINK_CMD|0xffff)
 +
 +#endif
+diff -urN linux-2.6.21.1/arch/i386/kernel/time.c linux-2.6.21.1.new/arch/i386/kernel/time.c
+--- linux-2.6.21.1/arch/i386/kernel/time.c     2007-04-27 23:49:26.000000000 +0200
++++ linux-2.6.21.1.new/arch/i386/kernel/time.c 2007-05-31 13:43:31.000000000 +0200
+@@ -264,8 +264,16 @@
+ /* Duplicate of time_init() below, with hpet_enable part added */
+ void __init hpet_time_init(void)
+ {
++#ifndef CONFIG_X86_RDC
+       if (!hpet_enable())
+               setup_pit_timer();
++#else
++      struct timespec ts;
++
++      /* RDC devices do not have CMOS */
++      ts.tv_sec = 0;
++      ts.tv_nsec = (INITIAL_JIFFIES % HZ) * (NSEC_PER_SEC / HZ);
++#endif
+       time_init_hook();
+ }
+@@ -279,6 +287,18 @@
+  */
+ void __init time_init(void)
+ {
++#ifndef CONFIG_X86_RDC
+       tsc_init();
+       late_time_init = choose_time_init();
++#else
++      struct timespec ts;
++
++      /* RDC devices do not have CMOS */
++      ts.tv_sec = 0;
++      ts.tv_nsec = (INITIAL_JIFFIES % HZ) * (NSEC_PER_SEC / HZ);
++
++      do_settimeofday(&ts);
++
++      time_init_hook();
++#endif
+ }