L4Re - L4 Runtime Environment
|
Interrupt controller. More...
Go to the source code of this file.
Data Structures | |
struct | l4_icu_info_t |
Info structure for an ICU. More... | |
struct | l4_icu_msi_info_t |
Info to use for a specific MSI. More... | |
Typedefs | |
typedef struct l4_icu_info_t | l4_icu_info_t |
Info structure for an ICU. More... | |
typedef struct l4_icu_msi_info_t | l4_icu_msi_info_t |
Info to use for a specific MSI. | |
Enumerations | |
enum | L4_icu_flags { L4_ICU_FLAG_MSI } |
Flags for IRQ numbers used for the ICU. More... | |
enum | L4_irq_mode { L4_IRQ_F_NONE = 0, L4_IRQ_F_LEVEL = 0x2, L4_IRQ_F_EDGE = 0x0, L4_IRQ_F_POS = 0x0, L4_IRQ_F_NEG = 0x4, L4_IRQ_F_BOTH = 0x8, L4_IRQ_F_LEVEL_HIGH = 0x3, L4_IRQ_F_LEVEL_LOW = 0x7, L4_IRQ_F_POS_EDGE = 0x1, L4_IRQ_F_NEG_EDGE = 0x5, L4_IRQ_F_BOTH_EDGE = 0x9, L4_IRQ_F_MASK = 0xf, L4_IRQ_F_SET_WAKEUP = 0x10, L4_IRQ_F_CLEAR_WAKEUP = 0x20 } |
Interrupt attributes. More... | |
enum | L4_icu_opcode { L4_ICU_OP_BIND, L4_ICU_OP_UNBIND, L4_ICU_OP_INFO, L4_ICU_OP_MSI_INFO, L4_ICU_OP_UNMASK, L4_ICU_OP_MASK, L4_ICU_OP_SET_MODE } |
Opcodes to the ICU interface. More... | |
Functions | |
l4_msgtag_t | l4_icu_bind (l4_cap_idx_t icu, unsigned irqnum, l4_cap_idx_t irq) L4_NOTHROW |
Bind an interrupt line of an interrupt controller to an interrupt object. More... | |
l4_msgtag_t | l4_icu_bind_u (l4_cap_idx_t icu, unsigned irqnum, l4_cap_idx_t irq, l4_utcb_t *utcb) L4_NOTHROW |
Bind an interrupt line of an interrupt controller to an interrupt object. More... | |
l4_msgtag_t | l4_icu_unbind (l4_cap_idx_t icu, unsigned irqnum, l4_cap_idx_t irq) L4_NOTHROW |
Remove binding of an interrupt line from the interrupt controller object. More... | |
l4_msgtag_t | l4_icu_unbind_u (l4_cap_idx_t icu, unsigned irqnum, l4_cap_idx_t irq, l4_utcb_t *utcb) L4_NOTHROW |
Remove binding of an interrupt line from the interrupt controller object. More... | |
l4_msgtag_t | l4_icu_set_mode (l4_cap_idx_t icu, unsigned irqnum, l4_umword_t mode) L4_NOTHROW |
Set interrupt mode. More... | |
l4_msgtag_t | l4_icu_set_mode_u (l4_cap_idx_t icu, unsigned irqnum, l4_umword_t mode, l4_utcb_t *utcb) L4_NOTHROW |
Set interrupt mode. More... | |
l4_msgtag_t | l4_icu_info (l4_cap_idx_t icu, l4_icu_info_t *info) L4_NOTHROW |
Get information about the capabilites of the ICU. More... | |
l4_msgtag_t | l4_icu_info_u (l4_cap_idx_t icu, l4_icu_info_t *info, l4_utcb_t *utcb) L4_NOTHROW |
Get information about the capabilities of the ICU. More... | |
l4_msgtag_t | l4_icu_msi_info (l4_cap_idx_t icu, unsigned irqnum, l4_uint64_t source, l4_icu_msi_info_t *msi_info) L4_NOTHROW |
Get MSI info about IRQ. More... | |
l4_msgtag_t | l4_icu_msi_info_u (l4_cap_idx_t icu, unsigned irqnum, l4_uint64_t source, l4_icu_msi_info_t *msi_info, l4_utcb_t *utcb) L4_NOTHROW |
Get MSI info about IRQ. More... | |
l4_msgtag_t | l4_icu_unmask (l4_cap_idx_t icu, unsigned irqnum, l4_umword_t *label, l4_timeout_t to) L4_NOTHROW |
Unmask an IRQ line. More... | |
l4_msgtag_t | l4_icu_unmask_u (l4_cap_idx_t icu, unsigned irqnum, l4_umword_t *label, l4_timeout_t to, l4_utcb_t *utcb) L4_NOTHROW |
Acknowledge the given interrupt line. More... | |
l4_msgtag_t | l4_icu_mask (l4_cap_idx_t icu, unsigned irqnum, l4_umword_t *label, l4_timeout_t to) L4_NOTHROW |
Mask an IRQ line. More... | |
l4_msgtag_t | l4_icu_mask_u (l4_cap_idx_t icu, unsigned irqnum, l4_umword_t *label, l4_timeout_t to, l4_utcb_t *utcb) L4_NOTHROW |
Mask an IRQ line. More... | |
Interrupt controller.
Definition in file icu.h.