![]() |
RTDM_IRQTYPE_xxx | |
Interrupt registrations flags | |
#define | RTDM_IRQTYPE_SHARED XN_ISR_SHARED |
Enable IRQ-sharing with other real-time drivers. | |
#define | RTDM_IRQTYPE_EDGE XN_ISR_EDGE |
Mark IRQ as edge-triggered, relevant for correct handling of shared edge-triggered IRQs. | |
RTDM_IRQ_xxx | |
Return flags of interrupt handlers | |
#define | RTDM_IRQ_NONE XN_ISR_NONE |
Unhandled interrupt. | |
#define | RTDM_IRQ_HANDLED XN_ISR_HANDLED |
Denote handled interrupt. | |
Defines | |
#define | rtdm_irq_get_arg(irq_handle, type) ((type *)irq_handle->cookie) |
Retrieve IRQ handler argument. | |
Typedefs | |
typedef int(* | rtdm_irq_handler_t )(rtdm_irq_t *irq_handle) |
Interrupt handler. | |
Functions | |
int | rtdm_irq_request (rtdm_irq_t *irq_handle, unsigned int irq_no, rtdm_irq_handler_t handler, unsigned long flags, const char *device_name, void *arg) |
int | rtdm_irq_free (rtdm_irq_t *irq_handle) |
int | rtdm_irq_enable (rtdm_irq_t *irq_handle) |
int | rtdm_irq_disable (rtdm_irq_t *irq_handle) |
#define rtdm_irq_get_arg | ( | irq_handle, | |||
type | ) | ((type *)irq_handle->cookie) |
Retrieve IRQ handler argument.
irq_handle | IRQ handle | |
type | Type of the pointer to return |
This service can be called from:
Rescheduling: never.
typedef int(* rtdm_irq_handler_t)(rtdm_irq_t *irq_handle) |
Interrupt handler.
[in] | irq_handle | IRQ handle as returned by rtdm_irq_request() |
int rtdm_irq_disable | ( | rtdm_irq_t * | irq_handle | ) |
Disable interrupt line
[in,out] | irq_handle | IRQ handle as returned by rtdm_irq_request() |
int rtdm_irq_enable | ( | rtdm_irq_t * | irq_handle | ) |
Enable interrupt line
[in,out] | irq_handle | IRQ handle as returned by rtdm_irq_request() |
int rtdm_irq_free | ( | rtdm_irq_t * | irq_handle | ) |
Release an interrupt handler
[in,out] | irq_handle | IRQ handle as returned by rtdm_irq_request() |
int rtdm_irq_request | ( | rtdm_irq_t * | irq_handle, | |
unsigned int | irq_no, | |||
rtdm_irq_handler_t | handler, | |||
unsigned long | flags, | |||
const char * | device_name, | |||
void * | arg | |||
) |
Register an interrupt handler This function registers the provided handler with an IRQ line and enables the line.
[in,out] | irq_handle | IRQ handle |
[in] | irq_no | Line number of the addressed IRQ |
[in] | handler | Interrupt handler |
[in] | flags | Registration flags, see RTDM_IRQTYPE_xxx for details |
[in] | device_name | Device name to show up in real-time IRQ lists |
[in] | arg | Pointer to be passed to the interrupt handler on invocation |
Environments:
This service can be called from:
Rescheduling: never.