diff --git a/libsel4simple-default/src/arch/riscv/default.c b/libsel4simple-default/src/arch/riscv/default.c index 8dc63f267..c8684381d 100644 --- a/libsel4simple-default/src/arch/riscv/default.c +++ b/libsel4simple-default/src/arch/riscv/default.c @@ -15,14 +15,21 @@ #include -seL4_Error simple_default_get_irq(void *data, int irq, seL4_CNode root, seL4_Word index, uint8_t depth) { +seL4_Error simple_default_get_irq(void *data, int irq, seL4_CNode root, seL4_Word index, uint8_t depth) +{ return seL4_IRQControl_Get(seL4_CapIRQControl, irq, root, index, depth); } -void -simple_default_init_arch_simple(arch_simple_t *simple, void *data) +seL4_Error simple_default_get_irq_trigger(void *data, int irq, int trigger, UNUSED int core, seL4_CNode root, + seL4_Word index, uint8_t depth) +{ + return seL4_IRQControl_GetTrigger(seL4_CapIRQControl, irq, trigger, root, index, depth); +} + +void simple_default_init_arch_simple(arch_simple_t *simple, void *data) { simple->data = data; simple->irq = simple_default_get_irq; + simple->irq_trigger = simple_default_get_irq_trigger; }