irqchip/pdc: Setup all edge interrupts as rising edge at GIC
authorLina Iyer <ilina@codeaurora.org>
Thu, 27 Sep 2018 17:18:10 +0000 (11:18 -0600)
committerMarc Zyngier <marc.zyngier@arm.com>
Tue, 2 Oct 2018 09:37:38 +0000 (10:37 +0100)
The PDC irqchp can convert a falling edge or level low interrupt to a
rising edge or level high interrupt at the GIC. We just need to setup
the GIC correctly. Set up the interrupt type for the IRQ_TYPE_EDGE_BOTH
as IRQ_TYPE_EDGE_RISING at the GIC.

Fixes: f55c73aef890 ("irqchip/pdc: Add PDC interrupt controller for QCOM SoCs")
Reported-by: Evan Green <evgreen@chromium.org>
Reviewed-by: Evan Green <evgreen@chromium.org>
Signed-off-by: Lina Iyer <ilina@codeaurora.org>
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
drivers/irqchip/qcom-pdc.c

index b1b47a4..faa7d61 100644 (file)
@@ -124,6 +124,7 @@ static int qcom_pdc_gic_set_type(struct irq_data *d, unsigned int type)
                break;
        case IRQ_TYPE_EDGE_BOTH:
                pdc_type = PDC_EDGE_DUAL;
+               type = IRQ_TYPE_EDGE_RISING;
                break;
        case IRQ_TYPE_LEVEL_HIGH:
                pdc_type = PDC_LEVEL_HIGH;