DDI_INTR_GET_PENDING(9F) | Kernel Functions for Drivers | DDI_INTR_GET_PENDING(9F) |
ddi_intr_get_pending - get pending bit for a given interrupt
#include <sys/types.h> #include <sys/conf.h> #include <sys/ddi.h> #include <sys/sunddi.h> int ddi_intr_get_pending(ddi_intr_handle_t h, int *pendingp);
illumos DDI specific (illumos DDI).
h
pendingp
The ddi_intr_get_pending() function returns non-zero as the integer pointed to by the pendingp argument if a corresponding interrupt is pending. The corresponding interrupt handle h must already be allocated. The call succeeds if the device or host bridge supports the ability to read the interrupt pending bits of its interrupts. The driver should use ddi_intr_get_cap() function to see if the DDI_INTR_FLAG_PENDING flag is returned to indicate that interrupts support interrupt pending bits.
If the DDI_INTR_FLAG_PENDING capability is not supported, ddi_intr_get_pending() returns DDI_ENOTSUP and zero in pendingp.
The ddi_intr_get_pending() function returns:
DDI_SUCCESS
DDI_EINVAL
DDI_FAILURE
DDI_ENOTSUP
The ddi_intr_get_pending() function can be called from either user or kernel non-interrupt context.
See attributes(7) for descriptions of the following attributes:
ATTRIBUTE TYPE | ATTRIBUTE VALUE |
Interface Stability | Evolving |
attributes(7), ddi_intr_block_disable(9F), ddi_intr_block_enable(9F), ddi_intr_clr_mask(9F), ddi_intr_disable(9F), ddi_intr_enable(9F), ddi_intr_set_mask(9F)
Writing Device Drivers
Any consumer of this interface should verify that the return value is not equal to DDI_SUCCESS. Incomplete checking for failure codes could result in inconsistent behavior among platforms.
April 7, 2005 | OmniOS |