summaryrefslogtreecommitdiff
path: root/packages/linux/linux-2.6.18/avr32-time-add-shared-interrupts.patch
diff options
context:
space:
mode:
authorKoen Kooi <koen@openembedded.org>2007-09-19 11:32:35 +0000
committerKoen Kooi <koen@openembedded.org>2007-09-19 11:32:35 +0000
commitb2b667e89381c5bee23b9a6e96ccd7f04a15fd1b (patch)
tree320f60bb9ab4410501ef6bff7a9acc2d7f51e04e /packages/linux/linux-2.6.18/avr32-time-add-shared-interrupts.patch
parent7006d4aac3bf1eef960d032965ae18f88c4acdfc (diff)
parent85693efa33378405956ca83c7b24d45f5138d223 (diff)
propagate from branch 'org.openembedded.dev' (head 0ba4bbe5ebdf7f3598dd1890a61d14cd356eab54)
to branch 'org.openembedded.dev.avr32' (head d4fef411c5337e77b35acf5e2a06ffb56d059326)
Diffstat (limited to 'packages/linux/linux-2.6.18/avr32-time-add-shared-interrupts.patch')
-rw-r--r--packages/linux/linux-2.6.18/avr32-time-add-shared-interrupts.patch30
1 files changed, 30 insertions, 0 deletions
diff --git a/packages/linux/linux-2.6.18/avr32-time-add-shared-interrupts.patch b/packages/linux/linux-2.6.18/avr32-time-add-shared-interrupts.patch
new file mode 100644
index 0000000000..c626016ff4
--- /dev/null
+++ b/packages/linux/linux-2.6.18/avr32-time-add-shared-interrupts.patch
@@ -0,0 +1,30 @@
+--- linux-2.6.18.orig/arch/avr32/kernel/time.c 2006-11-06 14:36:50.000000000 +0100
++++ linux-2.6.18/arch/avr32/kernel/time.c 2006-11-06 14:57:03.000000000 +0100
+@@ -21,6 +21,7 @@
+ #include <linux/profile.h>
+ #include <linux/sysdev.h>
+
++#include <asm/intc.h>
+ #include <asm/div64.h>
+ #include <asm/sysreg.h>
+ #include <asm/io.h>
+@@ -136,6 +137,10 @@
+ {
+ unsigned int count;
+
++ /* Check if interrupt is timer or performance counters */
++ if (!(intc_get_pending(irq) & 1))
++ return IRQ_NONE;
++
+ /* ack timer interrupt and try to set next interrupt */
+ count = avr32_hpt_read();
+ avr32_timer_ack();
+@@ -164,7 +169,7 @@
+
+ static struct irqaction timer_irqaction = {
+ .handler = timer_interrupt,
+- .flags = IRQF_DISABLED,
++ .flags = IRQF_DISABLED|IRQF_SHARED,
+ .name = "timer",
+ };
+