This interface has just two (main) functions.
More...
Functions |
| l4irq_t * | l4irq_request (int irqnum, void(*isr_handler)(void *), void *isr_data, int irq_thread_prio, unsigned flow_type) |
| | Attach asychronous ISR handler to IRQ.
|
| long | l4irq_release (l4irq_t *irq) |
| | Release asynchronous ISR handler and free resources.
|
Detailed Description
This interface has just two (main) functions.
l4irq_request to install a handler for an interrupt and l4irq_release to uninstall the handler again and release all resources associated with it.
Function Documentation
| l4irq_t* l4irq_request |
( |
int |
irqnum, |
|
|
void(*)(void *) |
isr_handler, |
|
|
void * |
isr_data, |
|
|
int |
irq_thread_prio, |
|
|
unsigned |
flow_type |
|
) |
| |
Attach asychronous ISR handler to IRQ.
- Parameters
-
| irqnum | IRQ number to request |
| isr_handler | Handler routine that is called when an interrupt triggers |
| isr_data | Pointer given as argument to isr_handler |
| irq_thread_prio | L4 thread priority of the ISR handler. Give -1 for same priority as creator. |
| flow_type | Interrupt type, |
- See Also
- L4_irq_flow_type
- Returns
- Pointer to l4irq_t structure, 0 on error
- Examples:
- examples/libs/libirq/async_isr.c.
| long l4irq_release |
( |
l4irq_t * |
irq | ) |
|