diff --git a/include/drivers/irq/am335x.h b/include/drivers/irq/am335x.h index c3e37961c..a4507c333 100644 --- a/include/drivers/irq/am335x.h +++ b/include/drivers/irq/am335x.h @@ -90,7 +90,7 @@ static inline bool_t isIRQPending(void) /* Enable or disable irq according to the 'disable' flag. */ static inline void maskInterrupt(bool_t disable, irq_t irq) { - if (likely(irq < maxIRQ)) { + if (likely(irq <= maxIRQ)) { if (disable) { intc->intcps_n[irq / 32].intcps_mir_set = 1 << (irq & 31); } else { diff --git a/include/drivers/irq/omap3.h b/include/drivers/irq/omap3.h index cd42b759f..556a03364 100644 --- a/include/drivers/irq/omap3.h +++ b/include/drivers/irq/omap3.h @@ -81,7 +81,7 @@ static inline bool_t isIRQPending(void) /* Enable or disable irq according to the 'disable' flag. */ static inline void maskInterrupt(bool_t disable, irq_t irq) { - if (likely(irq < maxIRQ)) { + if (likely(irq <= maxIRQ)) { if (disable) { intc->intcps_n[irq / 32].intcps_mir_set = 1 << (irq & 31); } else { diff --git a/src/plat/bcm2837/machine/intc.c b/src/plat/bcm2837/machine/intc.c index 26848e09a..329012ad6 100644 --- a/src/plat/bcm2837/machine/intc.c +++ b/src/plat/bcm2837/machine/intc.c @@ -118,7 +118,7 @@ static inline void maskInterrupt(bool_t disable, irq_t irq) } else { intc_regs->bfEnableBasicIRQs = BIT(irq - BASIC_IRQ_OFFSET); } - } else if (irq < maxIRQ) { + } else if (irq <= maxIRQ) { int normal_irq = irq - NORMAL_IRQ_OFFSET; int index = normal_irq / 32; if (disable) {