diff options
Diffstat (limited to 'chip/it83xx/irq.c')
-rw-r--r-- | chip/it83xx/irq.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/chip/it83xx/irq.c b/chip/it83xx/irq.c index f980147df4..93752f0c7c 100644 --- a/chip/it83xx/irq.c +++ b/chip/it83xx/irq.c @@ -8,6 +8,7 @@ #include "common.h" #include "irq_chip.h" #include "registers.h" +#include "util.h" #define IRQ_GROUP(n, cpu_ints...) \ {(uint32_t)&CONCAT2(IT83XX_INTC_ISR, n) - IT83XX_INTC_BASE, \ @@ -85,5 +86,11 @@ int chip_trigger_irq(int irq) void chip_init_irqs(void) { - /* TODO(crosbug.com/p/23575): IMPLEMENT ME ! */ + int i; + + /* Clear all IERx and EXT_IERx */ + for (i = 0; i < ARRAY_SIZE(irq_groups); i++) { + IT83XX_INTC_REG(irq_groups[i].ier_off) = 0; + IT83XX_INTC_REG(IT83XX_INTC_EXT_IER_OFF(i)) = 0; + } } |