linux-(rt-)2.6.24: Fix clock resolution to nanosecond.
authorLeon Woestenberg <leon.woestenberg@gmail.com>
Sat, 16 Feb 2008 14:33:38 +0000 (14:33 +0000)
committerLeon Woestenberg <leon.woestenberg@gmail.com>
Sat, 16 Feb 2008 14:33:38 +0000 (14:33 +0000)
packages/linux/linux-2.6.24/powerpc-clockres.patch [new file with mode: 0644]
packages/linux/linux-rt-2.6.24/powerpc-clockres.patch [new file with mode: 0644]
packages/linux/linux-rt_2.6.24.bb
packages/linux/linux_2.6.24.bb

diff --git a/packages/linux/linux-2.6.24/powerpc-clockres.patch b/packages/linux/linux-2.6.24/powerpc-clockres.patch
new file mode 100644 (file)
index 0000000..a0cf05b
--- /dev/null
@@ -0,0 +1,47 @@
+Index: linux-2.6.24/arch/powerpc/kernel/asm-offsets.c
+===================================================================
+--- linux-2.6.24.orig/arch/powerpc/kernel/asm-offsets.c        2008-02-16 13:54:09.000000000 +0100
++++ linux-2.6.24/arch/powerpc/kernel/asm-offsets.c     2008-02-16 13:54:30.000000000 +0100
+@@ -312,7 +312,7 @@
+       DEFINE(CLOCK_REALTIME, CLOCK_REALTIME);
+       DEFINE(CLOCK_MONOTONIC, CLOCK_MONOTONIC);
+       DEFINE(NSEC_PER_SEC, NSEC_PER_SEC);
+-      DEFINE(CLOCK_REALTIME_RES, TICK_NSEC);
++      DEFINE(CLOCK_REALTIME_RES, MONOTONIC_RES_NSEC);
+ #ifdef CONFIG_BUG
+       DEFINE(BUG_ENTRY_SIZE, sizeof(struct bug_entry));
+Index: linux-2.6.24/include/linux/hrtimer.h
+===================================================================
+--- linux-2.6.24.orig/include/linux/hrtimer.h  2008-02-16 13:54:09.000000000 +0100
++++ linux-2.6.24/include/linux/hrtimer.h       2008-02-16 13:54:33.000000000 +0100
+@@ -223,11 +223,13 @@
+  * idea of the (in)accuracy of timers. Timer values are rounded up to
+  * this resolution values.
+  */
+-# define KTIME_HIGH_RES               (ktime_t) { .tv64 = 1 }
++# define HIGH_RES_NSEC         1
++# define KTIME_HIGH_RES                (ktime_t) { .tv64 = HIGH_RES_NSEC }
++# define MONOTONIC_RES_NSEC    HIGH_RES_NSEC
+ # define KTIME_MONOTONIC_RES  KTIME_HIGH_RES
+ #else
+-
++# define MONOTONIC_RES_NSEC    LOW_RES_NSEC
+ # define KTIME_MONOTONIC_RES  KTIME_LOW_RES
+ /*
+Index: linux-2.6.24/include/linux/ktime.h
+===================================================================
+--- linux-2.6.24.orig/include/linux/ktime.h    2008-02-16 13:54:09.000000000 +0100
++++ linux-2.6.24/include/linux/ktime.h 2008-02-16 13:54:36.000000000 +0100
+@@ -316,7 +316,8 @@
+  * idea of the (in)accuracy of timers. Timer values are rounded up to
+  * this resolution values.
+  */
+-#define KTIME_LOW_RES         (ktime_t){ .tv64 = TICK_NSEC }
++#define LOW_RES_NSEC           TICK_NSEC
++#define KTIME_LOW_RES          (ktime_t){ .tv64 = LOW_RES_NSEC }
+ /* Get the monotonic time in timespec format: */
+ extern void ktime_get_ts(struct timespec *ts);
diff --git a/packages/linux/linux-rt-2.6.24/powerpc-clockres.patch b/packages/linux/linux-rt-2.6.24/powerpc-clockres.patch
new file mode 100644 (file)
index 0000000..a0cf05b
--- /dev/null
@@ -0,0 +1,47 @@
+Index: linux-2.6.24/arch/powerpc/kernel/asm-offsets.c
+===================================================================
+--- linux-2.6.24.orig/arch/powerpc/kernel/asm-offsets.c        2008-02-16 13:54:09.000000000 +0100
++++ linux-2.6.24/arch/powerpc/kernel/asm-offsets.c     2008-02-16 13:54:30.000000000 +0100
+@@ -312,7 +312,7 @@
+       DEFINE(CLOCK_REALTIME, CLOCK_REALTIME);
+       DEFINE(CLOCK_MONOTONIC, CLOCK_MONOTONIC);
+       DEFINE(NSEC_PER_SEC, NSEC_PER_SEC);
+-      DEFINE(CLOCK_REALTIME_RES, TICK_NSEC);
++      DEFINE(CLOCK_REALTIME_RES, MONOTONIC_RES_NSEC);
+ #ifdef CONFIG_BUG
+       DEFINE(BUG_ENTRY_SIZE, sizeof(struct bug_entry));
+Index: linux-2.6.24/include/linux/hrtimer.h
+===================================================================
+--- linux-2.6.24.orig/include/linux/hrtimer.h  2008-02-16 13:54:09.000000000 +0100
++++ linux-2.6.24/include/linux/hrtimer.h       2008-02-16 13:54:33.000000000 +0100
+@@ -223,11 +223,13 @@
+  * idea of the (in)accuracy of timers. Timer values are rounded up to
+  * this resolution values.
+  */
+-# define KTIME_HIGH_RES               (ktime_t) { .tv64 = 1 }
++# define HIGH_RES_NSEC         1
++# define KTIME_HIGH_RES                (ktime_t) { .tv64 = HIGH_RES_NSEC }
++# define MONOTONIC_RES_NSEC    HIGH_RES_NSEC
+ # define KTIME_MONOTONIC_RES  KTIME_HIGH_RES
+ #else
+-
++# define MONOTONIC_RES_NSEC    LOW_RES_NSEC
+ # define KTIME_MONOTONIC_RES  KTIME_LOW_RES
+ /*
+Index: linux-2.6.24/include/linux/ktime.h
+===================================================================
+--- linux-2.6.24.orig/include/linux/ktime.h    2008-02-16 13:54:09.000000000 +0100
++++ linux-2.6.24/include/linux/ktime.h 2008-02-16 13:54:36.000000000 +0100
+@@ -316,7 +316,8 @@
+  * idea of the (in)accuracy of timers. Timer values are rounded up to
+  * this resolution values.
+  */
+-#define KTIME_LOW_RES         (ktime_t){ .tv64 = TICK_NSEC }
++#define LOW_RES_NSEC           TICK_NSEC
++#define KTIME_LOW_RES          (ktime_t){ .tv64 = LOW_RES_NSEC }
+ /* Get the monotonic time in timespec format: */
+ extern void ktime_get_ts(struct timespec *ts);
index 9869757..b9f3740 100644 (file)
@@ -6,11 +6,12 @@ DEFAULT_PREFERENCE_mpc8313e-rdb = "1"
 
 DEPENDS_append_mpc8313e-rdb = " dtc-native"
 
-PR = "r1"
+PR = "r2"
 
 SRC_URI = "${KERNELORG_MIRROR}/pub/linux/kernel/v2.6/linux-2.6.24.tar.bz2 \
            ${KERNELORG_MIRROR}/pub/linux/kernel/projects/rt/patch-2.6.24-rt1.bz2;patch=1 \
            http://kamikaze.waninkoko.info/patches/2.6.24/kamikaze1/broken-out/squashfs-lzma-2.6.24.patch;patch=1 \
+           file://powerpc-clockres.patch;patch=1 \
            file://defconfig"
 
 S = "${WORKDIR}/linux-2.6.24"
index 18ba900..afb4515 100644 (file)
@@ -7,11 +7,12 @@ DEFAULT_PREFERENCE_mpc8313e-rdb = "1"
 
 DEPENDS_append_mpc8313e-rdb = " dtc-native"
 
-PR = "r3"
+PR = "r5"
 
 SRC_URI = "${KERNELORG_MIRROR}/pub/linux/kernel/v2.6/linux-2.6.24.tar.bz2 \
-           file://defconfig \
-          "
+           http://kamikaze.waninkoko.info/patches/2.6.24/kamikaze1/broken-out/squashfs-lzma-2.6.24.patch;patch=1 \
+           file://powerpc-clockres.patch;patch=1 \
+           file://defconfig"
 
 # Real-time preemption. This is experimental and requires a different defconfig.
 #SRC_URI += " http://www.kernel.org/pub/linux/kernel/projects/rt/patch-2.6.24-rt1.bz2;patch=1"