IRQ management

This is provided in order to give drivers access to IRQ configuration from userspace, which may otherwise be denied by the hardware.

Functions

int irq_enable(uint32_t irq)

This syscall will enable IRQ line identified by the IRQ number. The implementation of this call is platform-specific and IRQ number has hardware-specific meaning. CMRX kernel does not perform any interpretation of these values.

In general it is not an error trying to enable already enabled IRQ.

Returns E_OK if IRQ has been enabled, E_NOTAVAIL if IRQ couldn’t be enabled.

int irq_disable(uint32_t irq)

This syscall will disable IRQ line identified by the IRQ number. The implementation of this call is platform-specific and IRQ number has hardware-specific meaning. CMRX kernel does not perform any interpretation of these values.

In general it is not an error trying to disable already disabled IRQ.

Returns E_OK if IRQ has been disabled, E_NOTAVAIL if IRQ couldn’t be disabled.

← Interrupt Service Routines Mutexes / Futexes →