DPDK
20.05.0
|
Go to the source code of this file.
Typedefs | |
typedef void(* | rte_intr_callback_fn) (void *cb_arg) |
typedef void(* | rte_intr_unregister_callback_fn) (struct rte_intr_handle *intr_handle, void *cb_arg) |
Functions | |
int | rte_intr_callback_register (const struct rte_intr_handle *intr_handle, rte_intr_callback_fn cb, void *cb_arg) |
int | rte_intr_callback_unregister (const struct rte_intr_handle *intr_handle, rte_intr_callback_fn cb, void *cb_arg) |
__rte_experimental int | rte_intr_callback_unregister_pending (const struct rte_intr_handle *intr_handle, rte_intr_callback_fn cb_fn, void *cb_arg, rte_intr_unregister_callback_fn ucb_fn) |
int | rte_intr_enable (const struct rte_intr_handle *intr_handle) |
int | rte_intr_disable (const struct rte_intr_handle *intr_handle) |
__rte_experimental int | rte_intr_ack (const struct rte_intr_handle *intr_handle) |
The RTE interrupt interface provides functions to register/unregister callbacks for a specific interrupt.
Definition in file rte_interrupts.h.
typedef void(* rte_intr_callback_fn) (void *cb_arg) |
Function to be registered for the specific interrupt
Definition at line 26 of file rte_interrupts.h.
typedef void(* rte_intr_unregister_callback_fn) (struct rte_intr_handle *intr_handle, void *cb_arg) |
Function to call after a callback is unregistered. Can be used to close fd and free cb_arg.
Definition at line 32 of file rte_interrupts.h.
int rte_intr_callback_register | ( | const struct rte_intr_handle * | intr_handle, |
rte_intr_callback_fn | cb, | ||
void * | cb_arg | ||
) |
It registers the callback for the specific interrupt. Multiple callbacks can be registered at the same time.
intr_handle | Pointer to the interrupt handle. |
cb | callback address. |
cb_arg | address of parameter for callback. |
int rte_intr_callback_unregister | ( | const struct rte_intr_handle * | intr_handle, |
rte_intr_callback_fn | cb, | ||
void * | cb_arg | ||
) |
It unregisters the callback according to the specified interrupt handle.
intr_handle | pointer to the interrupt handle. |
cb | callback address. |
cb_arg | address of parameter for callback, (void *)-1 means to remove all registered which has the same callback address. |
__rte_experimental int rte_intr_callback_unregister_pending | ( | const struct rte_intr_handle * | intr_handle, |
rte_intr_callback_fn | cb_fn, | ||
void * | cb_arg, | ||
rte_intr_unregister_callback_fn | ucb_fn | ||
) |
Unregister the callback according to the specified interrupt handle, after it's no longer active. Fail if source is not active.
intr_handle | pointer to the interrupt handle. |
cb_fn | callback address. |
cb_arg | address of parameter for callback, (void *)-1 means to remove all registered which has the same callback address. |
ucb_fn | callback to call before cb is unregistered (optional). can be used to close fd and free cb_arg. |
int rte_intr_enable | ( | const struct rte_intr_handle * | intr_handle | ) |
It enables the interrupt for the specified handle.
intr_handle | pointer to the interrupt handle. |
int rte_intr_disable | ( | const struct rte_intr_handle * | intr_handle | ) |
It disables the interrupt for the specified handle.
intr_handle | pointer to the interrupt handle. |
__rte_experimental int rte_intr_ack | ( | const struct rte_intr_handle * | intr_handle | ) |
It acknowledges an interrupt raised for the specified handle.
This function should be called at the end of each interrupt handler either from application or driver, so that currently raised interrupt is acked and further new interrupts are raised.
intr_handle | pointer to the interrupt handle. |