DDI_INTR_GET_PENDING(9F) Kernel Functions for Drivers
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
DDI interrupt handle
pendingp
Pointer to the pending capability returned for this
handle
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
On success.
DDI_EINVAL
On encountering invalid input parameters.
DDI_FAILURE
On any implementation specific failure.
DDI_ENOTSUP
On device not supporting operation.
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 DDI_INTR_GET_PENDING(9F)
NAME
ddi_intr_get_pending - get pending bit for a given interrupt
SYNOPSIS
#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);
INTERFACE LEVEL
illumos DDI specific (illumos DDI).
PARAMETERS
h
DDI interrupt handle
pendingp
Pointer to the pending capability returned for this
handle
DESCRIPTION
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.
RETURN VALUES
The ddi_intr_get_pending() function returns:
DDI_SUCCESS
On success.
DDI_EINVAL
On encountering invalid input parameters.
DDI_FAILURE
On any implementation specific failure.
DDI_ENOTSUP
On device not supporting operation.
CONTEXT
The ddi_intr_get_pending() function can be called from either user or
kernel non-interrupt context.
ATTRIBUTES
See attributes(7) for descriptions of the following attributes:
+--------------------+-----------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+--------------------+-----------------+
|Interface Stability | Evolving |
+--------------------+-----------------+
SEE ALSO
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
NOTES
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 DDI_INTR_GET_PENDING(9F)