/* Disable interrupt */ static void meson_mask_irq(unsigned int irq) { unsigned int mask; if (irq >= NR_IRQS) return; mask = 1 << IRQ_BIT(irq); CLEAR_CBUS_REG_MASK(IRQ_MASK_REG(irq), mask); dsb(); }
/* Enable interrupt */ static void meson_unmask_irq(unsigned int irq) { unsigned int mask; if (irq >= NR_IRQS) { return; } mask = 1 << IRQ_BIT(irq); SET_CBUS_REG_MASK(IRQ_MASK_REG(irq), mask); dsb(); }
/* Disable interrupt */ static void m2_mask_irq(struct irq_data *data) { unsigned int mask; unsigned int irq; irq = data->irq; if (irq >= NR_IRQS) return; mask = 1 << IRQ_BIT(irq); CLEAR_CBUS_REG_MASK(IRQ_MASK_REG(irq), mask); dsb(); }