aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/ramips/patches-2.6.39/950-convert-to-new-irq-functions.patch
diff options
context:
space:
mode:
authorGabor Juhos <juhosg@openwrt.org>2011-07-03 15:02:06 +0000
committerGabor Juhos <juhosg@openwrt.org>2011-07-03 15:02:06 +0000
commit0fde070cf96233b124204a0e061897270b060e4c (patch)
tree8c1f10a682895d2d881e4e3e91312dbaace6cc6d /target/linux/ramips/patches-2.6.39/950-convert-to-new-irq-functions.patch
parent1c96bc9abc83c9260788631829060fcb1dabc877 (diff)
downloadupstream-0fde070cf96233b124204a0e061897270b060e4c.tar.gz
upstream-0fde070cf96233b124204a0e061897270b060e4c.tar.bz2
upstream-0fde070cf96233b124204a0e061897270b060e4c.zip
ramips: add 2.6.39 support
Based on the patches from #9625 SVN-Revision: 27396
Diffstat (limited to 'target/linux/ramips/patches-2.6.39/950-convert-to-new-irq-functions.patch')
-rw-r--r--target/linux/ramips/patches-2.6.39/950-convert-to-new-irq-functions.patch48
1 files changed, 48 insertions, 0 deletions
diff --git a/target/linux/ramips/patches-2.6.39/950-convert-to-new-irq-functions.patch b/target/linux/ramips/patches-2.6.39/950-convert-to-new-irq-functions.patch
new file mode 100644
index 0000000000..02f7e39fb9
--- /dev/null
+++ b/target/linux/ramips/patches-2.6.39/950-convert-to-new-irq-functions.patch
@@ -0,0 +1,48 @@
+--- a/arch/mips/ralink/common/intc.c
++++ b/arch/mips/ralink/common/intc.c
+@@ -44,23 +44,25 @@ static inline u32 ramips_intc_rr(unsigne
+ return __raw_readl(ramips_intc_base + reg);
+ }
+
+-static void ramips_intc_irq_unmask(unsigned int irq)
++static void ramips_intc_irq_unmask(struct irq_data *d)
+ {
+- irq -= ramips_intc_irq_base;
++ unsigned int irq = d->irq - ramips_intc_irq_base;
++
+ ramips_intc_wr((1 << irq), INTC_REG_ENABLE);
+ }
+
+-static void ramips_intc_irq_mask(unsigned int irq)
++static void ramips_intc_irq_mask(struct irq_data *d)
+ {
+- irq -= ramips_intc_irq_base;
++ unsigned int irq = d->irq - ramips_intc_irq_base;
++
+ ramips_intc_wr((1 << irq), INTC_REG_DISABLE);
+ }
+
+ static struct irq_chip ramips_intc_irq_chip = {
+ .name = "INTC",
+- .unmask = ramips_intc_irq_unmask,
+- .mask = ramips_intc_irq_mask,
+- .mask_ack = ramips_intc_irq_mask,
++ .irq_unmask = ramips_intc_irq_unmask,
++ .irq_mask = ramips_intc_irq_mask,
++ .irq_mask_ack = ramips_intc_irq_mask,
+ };
+
+ static struct irqaction ramips_intc_irqaction = {
+@@ -83,10 +85,9 @@ void __init ramips_intc_irq_init(unsigne
+ ramips_intc_wr(0, INTC_REG_TYPE);
+
+ for (i = ramips_intc_irq_base;
+- i < ramips_intc_irq_base + INTC_IRQ_COUNT; i++) {
+- set_irq_chip_and_handler(i, &ramips_intc_irq_chip,
++ i < ramips_intc_irq_base + INTC_IRQ_COUNT; i++)
++ irq_set_chip_and_handler(i, &ramips_intc_irq_chip,
+ handle_level_irq);
+- }
+
+ setup_irq(irq, &ramips_intc_irqaction);
+ ramips_intc_wr(INTC_INT_GLOBAL, INTC_REG_ENABLE);