[oe-commits] org.oe.dev linux-2.6.24: new rtc-sa1100 fixes for the simpad
woglinde2 commit
oe at amethyst.openembedded.net
Tue Mar 25 17:34:45 UTC 2008
linux-2.6.24: new rtc-sa1100 fixes for the simpad
* new rtc-sa1100 fix
* bump pr
* fixes bug 4094
Author: woglinde2 at openembedded.org
Branch: org.openembedded.dev
Revision: ead8fe4eb9f4a05e10d6ad072d127ba6aa6820f7
ViewMTN: http://monotone.openembedded.org/revision/info/ead8fe4eb9f4a05e10d6ad072d127ba6aa6820f7
Files:
1
packages/linux/linux-2.6.24/simpad/linux-2.6.24-SIMpad-rtc-sa1100.patch
packages/linux/linux_2.6.24.bb
Diffs:
#
# mt diff -r557257ed260a028b08cdb8f9a859b3ea652317ee -read8fe4eb9f4a05e10d6ad072d127ba6aa6820f7
#
#
#
# patch "packages/linux/linux-2.6.24/simpad/linux-2.6.24-SIMpad-rtc-sa1100.patch"
# from [cb7ada70375fee5379806c648aaf22a17737b16d]
# to [a001854cf3bea54c80b2dcd094dae117725419f5]
#
# patch "packages/linux/linux_2.6.24.bb"
# from [3a65f5f434a205d1dd49627ecc559afbd538e97d]
# to [4eabbe972f1ffeca4ea26e4d897079e1542a5624]
#
============================================================
--- packages/linux/linux-2.6.24/simpad/linux-2.6.24-SIMpad-rtc-sa1100.patch cb7ada70375fee5379806c648aaf22a17737b16d
+++ packages/linux/linux-2.6.24/simpad/linux-2.6.24-SIMpad-rtc-sa1100.patch a001854cf3bea54c80b2dcd094dae117725419f5
@@ -1,28 +1,68 @@
-diff -Nur linux-2.6.24.vanilla/drivers/rtc/rtc-sa1100.c linux-2.6.24/drivers/rtc/rtc-sa1100.c
+diff -Nur linux-2.6.24.vanilla/drivers/rtc/rtc-sa1100.c linux-2.6.24_rtc/drivers/rtc/rtc-sa1100.c
--- linux-2.6.24.vanilla/drivers/rtc/rtc-sa1100.c 2008-01-24 23:58:37.000000000 +0100
-+++ linux-2.6.24/drivers/rtc/rtc-sa1100.c 2008-03-17 20:52:41.000000000 +0100
-@@ -15,6 +15,10 @@
- * Converted to the RTC subsystem and Driver Model
- * by Richard Purdie <rpurdie at rpsys.net>
- *
-+ * 2008/03/17 mrdata:
-+ * disable IRQ RTC1Hz and RTCAlrm before request_irq
-+ * in sa1100_rtc_open()
-+ *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version
-@@ -154,7 +158,12 @@
- static int sa1100_rtc_open(struct device *dev)
++++ linux-2.6.24_rtc/drivers/rtc/rtc-sa1100.c 2008-03-24 13:49:40.000000000 +0100
+@@ -79,7 +79,10 @@
+
+ rtsr = RTSR;
+ /* clear interrupt sources */
+- RTSR = 0;
++ RTSR &= ~RTSR_HZE; //RTSR = 0; is not possible and does not work
++ RTSR &= ~RTSR_HZ;
++ RTSR &= ~RTSR_ALE;
++ RTSR &= ~RTSR_AL;
+ RTSR = (RTSR_AL | RTSR_HZ) & (rtsr >> 2);
+
+ /* clear alarm interrupt if it has occurred */
+@@ -155,6 +158,20 @@
{
int ret;
--
-+
+
++ /*
++ * On some devices RTSR is set to some value but it must be set to 0.
++ * We have to set RTSR to 0 and OIER/OSSR to default. This should not be
++ * necessary here but it is.
++ */
+ spin_lock_irq(&sa1100_rtc_lock);
+ RTSR &= ~RTSR_HZE;
++ RTSR &= ~RTSR_HZ;
+ RTSR &= ~RTSR_ALE;
++ RTSR &= ~RTSR_AL;
++ OIER &= ~OIER_E1;
++ OSSR = OSSR_M1;
+ spin_unlock_irq(&sa1100_rtc_lock);
-+
++
ret = request_irq(IRQ_RTC1Hz, sa1100_rtc_interrupt, IRQF_DISABLED,
"rtc 1Hz", dev);
if (ret) {
+@@ -186,7 +203,10 @@
+ static void sa1100_rtc_release(struct device *dev)
+ {
+ spin_lock_irq(&sa1100_rtc_lock);
+- RTSR = 0;
++ RTSR &= ~RTSR_HZE; //RTSR = 0; is not possible and does not work
++ RTSR &= ~RTSR_HZ;
++ RTSR &= ~RTSR_ALE;
++ RTSR &= ~RTSR_AL;
+ OIER &= ~OIER_E1;
+ OSSR = OSSR_M1;
+ spin_unlock_irq(&sa1100_rtc_lock);
+@@ -339,6 +359,19 @@
+
+ platform_set_drvdata(pdev, rtc);
+
++ /*
++ * On some devices RTSR is set to some value but it must be set to 0.
++ * We have to set RTSR to 0 and OIER/OSSR to default.
++ */
++ spin_lock_irq(&sa1100_rtc_lock);
++ RTSR &= ~RTSR_HZE;
++ RTSR &= ~RTSR_HZ;
++ RTSR &= ~RTSR_ALE;
++ RTSR &= ~RTSR_AL;
++ OIER &= ~OIER_E1;
++ OSSR = OSSR_M1;
++ spin_unlock_irq(&sa1100_rtc_lock);
++
+ return 0;
+ }
+
============================================================
--- packages/linux/linux_2.6.24.bb 3a65f5f434a205d1dd49627ecc559afbd538e97d
+++ packages/linux/linux_2.6.24.bb 4eabbe972f1ffeca4ea26e4d897079e1542a5624
@@ -12,7 +12,7 @@ DEPENDS_append_mpc8313e-rdb = " dtc-nati
DEPENDS_append_mpc8313e-rdb = " dtc-native"
-PR = "r10"
+PR = "r11"
SRC_URI = "${KERNELORG_MIRROR}/pub/linux/kernel/v2.6/linux-2.6.24.tar.bz2 \
http://kamikaze.waninkoko.info/patches/2.6.24/kamikaze1/broken-out/squashfs-lzma-2.6.24.patch;patch=1 \
More information about the Openembedded-commits
mailing list