summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn Bowler <jbowler@nslu2-linux.org>2005-08-06 03:00:13 +0000
committerOpenEmbedded Project <openembedded-devel@lists.openembedded.org>2005-08-06 03:00:13 +0000
commit6b71845f497e11657ffaf67a2b2e51f5ab465f6d (patch)
treece98124dfa42fb270d7a86529992e2374279d6c6
parenta74d0fc495e2d6201041740e6ad45eadb0f34fcb (diff)
This fixes the problem with the tick count on NSLU2 boards by correcting
the CLOCKS_PER_TICK in the kernel. It also (necessarily) removes the TICKADJ setting in the sysvinit nslu2 rcS-default. It adds a commented out TICKADJ to rcS-default - because that is supported now by the ntp 4.2.0 startup (ntpd) script in OE.
-rw-r--r--packages/linux/nslu2-kernel/2.6/timer.patch24
-rw-r--r--packages/linux/nslu2-kernel_2.6.12.2.bb3
-rw-r--r--packages/linux/nslu2-kernel_2.6.12.bb3
-rw-r--r--packages/sysvinit/sysvinit/nslu2/rcS-default3
-rw-r--r--packages/sysvinit/sysvinit/rcS-default2
-rw-r--r--packages/sysvinit/sysvinit_2.86.bb2
6 files changed, 32 insertions, 5 deletions
diff --git a/packages/linux/nslu2-kernel/2.6/timer.patch b/packages/linux/nslu2-kernel/2.6/timer.patch
new file mode 100644
index 0000000000..6279746e64
--- /dev/null
+++ b/packages/linux/nslu2-kernel/2.6/timer.patch
@@ -0,0 +1,24 @@
+# Fix for the NSLU2 timer problem (tickadj 10101.01 when it should be 10000)
+# Also contains a fix for the more generate problem on the ixp4xx in that the
+# Intel spec says to use a 33.33MHz crystal, not 33.333333Mhz
+
+--- linux-2.6.12.2/include/asm-arm/arch-ixp4xx/timex.h.orig 2005-08-05 11:02:09.872690723 -0700
++++ linux-2.6.12.2/include/asm-arm/arch-ixp4xx/timex.h 2005-08-05 11:45:08.786971567 -0700
+@@ -7,7 +7,14 @@
+
+ /*
+ * We use IXP425 General purpose timer for our timer needs, it runs at
+- * 66.66... MHz
++ * 66.66 MHz (exactly) by the Intel specification.
+ */
+-#define CLOCK_TICK_RATE (66666666)
+-
++#if 0
++#define CLOCK_TICK_RATE (66660000)
++#else
++/*
++ * Unfortunately the NSLU2 has a 33MHz crystal, so the rate is not the
++ * specified one.
++ */
++#define CLOCK_TICK_RATE (66000000)
++#endif
diff --git a/packages/linux/nslu2-kernel_2.6.12.2.bb b/packages/linux/nslu2-kernel_2.6.12.2.bb
index 8b54cdc703..64b5788649 100644
--- a/packages/linux/nslu2-kernel_2.6.12.2.bb
+++ b/packages/linux/nslu2-kernel_2.6.12.2.bb
@@ -1,5 +1,5 @@
# Kernel for NSLU2
-PR = "r6"
+PR = "r7"
include nslu2-kernel.inc
# N2K_EXTRA_PATCHES - list of patches to apply (can include
@@ -22,4 +22,5 @@ N2K_PATCHES = "\
file://x1205-rtc.c-id.patch;patch=1 \
file://mtd-shutdown.patch;patch=1 \
file://missing-exports.patch;patch=1 \
+ file://timer.patch;patch=1 \
"
diff --git a/packages/linux/nslu2-kernel_2.6.12.bb b/packages/linux/nslu2-kernel_2.6.12.bb
index 6cea8a4daa..a8fa808d3a 100644
--- a/packages/linux/nslu2-kernel_2.6.12.bb
+++ b/packages/linux/nslu2-kernel_2.6.12.bb
@@ -1,5 +1,5 @@
# Kernel for NSLU2
-PR = "r2"
+PR = "r3"
include nslu2-kernel.inc
# N2K_EXTRA_PATCHES - list of patches to apply (can include
@@ -21,4 +21,5 @@ N2K_PATCHES = "\
file://xscale-reset.patch;patch=1 \
file://x1205-rtc.c-id.patch;patch=1 \
file://mtd-shutdown.patch;patch=1 \
+ file://timer.patch;patch=1 \
"
diff --git a/packages/sysvinit/sysvinit/nslu2/rcS-default b/packages/sysvinit/sysvinit/nslu2/rcS-default
index 7c34294101..d53be762a7 100644
--- a/packages/sysvinit/sysvinit/nslu2/rcS-default
+++ b/packages/sysvinit/sysvinit/nslu2/rcS-default
@@ -19,5 +19,4 @@ EDITMOTD=no
# Set FSCKFIX to "yes" if you want to add "-y" to the fsck at startup.
FSCKFIX=yes
# Set TICKADJ to the correct tick value for this specific machine
-#NSLU2: determined by experiment to be 100/99*10000 usec/tick
-TICKADJ=10101
+#TICKADJ=10000
diff --git a/packages/sysvinit/sysvinit/rcS-default b/packages/sysvinit/sysvinit/rcS-default
index fb22117aae..46e48b9796 100644
--- a/packages/sysvinit/sysvinit/rcS-default
+++ b/packages/sysvinit/sysvinit/rcS-default
@@ -17,3 +17,5 @@ VERBOSE=no
EDITMOTD=no
# Set FSCKFIX to "yes" if you want to add "-y" to the fsck at startup.
FSCKFIX=yes
+# Set TICKADJ to the correct tick value for this specific machine
+#TICKADJ=10000
diff --git a/packages/sysvinit/sysvinit_2.86.bb b/packages/sysvinit/sysvinit_2.86.bb
index 73813d293f..e59102d931 100644
--- a/packages/sysvinit/sysvinit_2.86.bb
+++ b/packages/sysvinit/sysvinit_2.86.bb
@@ -3,7 +3,7 @@ SECTION = "base"
LICENSE = "GPL"
MAINTAINER = "Chris Larson <kergoth@handhelds.org>"
HOMEPAGE = "http://freshmeat.net/projects/sysvinit/"
-PR = "r17"
+PR = "r18"
# USE_VT and SERIAL_CONSOLE are generally defined by the MACHINE .conf.
# Set PACKAGE_ARCH appropriately.