]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/blobdiff - arch/openrisc/kernel/irq.c
Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/nab/target...
[mirror_ubuntu-bionic-kernel.git] / arch / openrisc / kernel / irq.c
index e935b9d8eee187d50f6ec4d172acfda5b6de6be5..8ec77bc9f1e7d7b62694d1105ef5581374d0ebf6 100644 (file)
@@ -46,19 +46,19 @@ EXPORT_SYMBOL(arch_local_irq_restore);
 
 static void or1k_pic_mask(struct irq_data *data)
 {
-       mtspr(SPR_PICMR, mfspr(SPR_PICMR) & ~(1UL << data->irq));
+       mtspr(SPR_PICMR, mfspr(SPR_PICMR) & ~(1UL << data->hwirq));
 }
 
 static void or1k_pic_unmask(struct irq_data *data)
 {
-       mtspr(SPR_PICMR, mfspr(SPR_PICMR) | (1UL << data->irq));
+       mtspr(SPR_PICMR, mfspr(SPR_PICMR) | (1UL << data->hwirq));
 }
 
 static void or1k_pic_ack(struct irq_data *data)
 {
        /* EDGE-triggered interrupts need to be ack'ed in order to clear
         * the latch.
-        * LEVER-triggered interrupts do not need to be ack'ed; however,
+        * LEVEL-triggered interrupts do not need to be ack'ed; however,
         * ack'ing the interrupt has no ill-effect and is quicker than
         * trying to figure out what type it is...
         */
@@ -75,10 +75,10 @@ static void or1k_pic_ack(struct irq_data *data)
         *     as opposed to a 1 as mandated by the spec
         */
 
-       mtspr(SPR_PICSR, mfspr(SPR_PICSR) & ~(1UL << data->irq));
+       mtspr(SPR_PICSR, mfspr(SPR_PICSR) & ~(1UL << data->hwirq));
 #else
-       WARN(1, "Interrupt handling possibily broken\n");
-       mtspr(SPR_PICSR, (1UL << irq));
+       WARN(1, "Interrupt handling possibly broken\n");
+       mtspr(SPR_PICSR, (1UL << data->hwirq));
 #endif
 }
 
@@ -87,10 +87,12 @@ static void or1k_pic_mask_ack(struct irq_data *data)
        /* Comments for pic_ack apply here, too */
 
 #ifdef CONFIG_OR1K_1200
-       mtspr(SPR_PICSR, mfspr(SPR_PICSR) & ~(1UL << data->irq));
+       mtspr(SPR_PICMR, mfspr(SPR_PICMR) & ~(1UL << data->hwirq));
+       mtspr(SPR_PICSR, mfspr(SPR_PICSR) & ~(1UL << data->hwirq));
 #else
-       WARN(1, "Interrupt handling possibily broken\n");
-       mtspr(SPR_PICSR, (1UL << irq));
+       WARN(1, "Interrupt handling possibly broken\n");
+       mtspr(SPR_PICMR, (1UL << data->hwirq));
+       mtspr(SPR_PICSR, (1UL << data->hwirq));
 #endif
 }