diff --git a/target/linux/adm5120/files/arch/mips/adm5120/irq.c b/target/linux/adm5120/files/arch/mips/adm5120/irq.c index 361dcb8628..ef7b9b92e3 100644 --- a/target/linux/adm5120/files/arch/mips/adm5120/irq.c +++ b/target/linux/adm5120/files/arch/mips/adm5120/irq.c @@ -109,9 +109,9 @@ static int adm5120_intc_irq_set_type(unsigned int irq, unsigned int flow_type) case ADM5120_IRQ_GPIO4: mode = INTC_READ(INTC_REG_INT_MODE); if (sense == IRQ_TYPE_LEVEL_LOW) - mode |= (1 << (irq-ADM5120_INTC_IRQ_BASE)); + mode |= (1 << (3 + irq - ADM5120_IRQ_GPIO2)); else - mode &= (1 << (irq-ADM5120_INTC_IRQ_BASE)); + mode &= (1 << (3 + irq - ADM5120_IRQ_GPIO2)); INTC_WRITE(INTC_REG_INT_MODE, mode); /* fallthrough */