ddi_intr_set_cap(9f) [sunos man page]
ddi_intr_get_cap(9F) ddi_intr_get_cap(9F) NAME
ddi_intr_get_cap, ddi_intr_set_cap - get or set interrupt capabilities for a given interrupt type SYNOPSIS
#include <sys/types.h> #include <sys/conf.h> #include <sys/ddi.h> #include <sys/sunddi.h> int ddi_intr_get_cap(ddi_intr_handle_t h, int *flagsp); int ddi_intr_set_cap(ddi_intr_handle_t h, int flags); INTERFACE LEVEL
Solaris DDI specific (Solaris DDI). ddi_intr_get_cap() h DDI interrupt handle flagsp Pointer to the capability flags returned for this handle ddi_intr_set_cap() h DDI interrupt handle flags Contains the capability flag to be set The ddi_intr_get_cap() function returns the interrupt capability flags for the interrupt handle h. Upon a successful return, the flags are returned in the integer pointed to by the flagsp argument. These flags are typically combinations of the following: DDI_INTR_FLAG_EDGE For discrete interrupts, the host supports edge type of trigger. This flag is not returned for DDI_INTR_TYPE_MSI or DDI_INTR_TYPE_MSIX interrupt types. This is a read-write (RW) flag. DDI_INTR_FLAG_LEVEL For discrete interrupts the host supports level, edge, or both types of triggers. This flag is not returned for DDI_INTR_TYPE_MSI or DDI_INTR_TYPE_MSIX interrupt types. DDI_INTR_FLAG_MASKABLE The interrupt can be masked either by the device or by the host bridge, or optionally by the host. This is a read- only (RO) flag. DDI_INTR_FLAG_PENDING The interrupt supports an interrupt pending bit. This is a read-only (RO) flag. DDI_INTR_FLAG_BLOCK All interrupts of the given type must be block-enabled and are not individually maskable. This is a read-only (RO) flag. The ddi_intr_set_cap() function allows a driver to specify the capability flags for the interrupt handle h. Only DDI_INTR_FLAG_LEVEL and DDI_INTR_FLAG_EDGE flags can be set. Some drivers can support both level or edge capability and either can be set by using the ddi_intr_set_cap() function. Setting the capability flags is device and platform dependent. The ddi_intr_set_cap() function can be called after interrupts are allocated and prior to adding the interrupt handler. For all other times it returns failure. The ddi_intr_get_cap() and ddi_intr_set_cap() functions return: 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_cap() and ddi_intr_set_cap() functions can be called from either user or kernel non-interrupt context. See attributes(5) for descriptions of the following attributes: +-----------------------------+-----------------------------+ | ATTRIBUTE TYPE | ATTRIBUTE VALUE | +-----------------------------+-----------------------------+ |Interface Stability |Evolving | +-----------------------------+-----------------------------+ attributes(5), ddi_intr_alloc(9F), ddi_intr_block_enable(9F), ddi_intr_get_nintrs(9F), ddi_intr_get_pending(9F), ddi_intr_get_sup- ported_types(9F), ddi_intr_set_mask(9F) Consumers of these interfaces should verify that the return value is not equal to DDI_SUCCESS. Incomplete checking for failure codes could result in inconsistent behavior among platforms. 20 Apr 2005 ddi_intr_get_cap(9F)
Check Out this Related Man Page
ddi_intr_get_cap(9F) ddi_intr_get_cap(9F) NAME
ddi_intr_get_cap, ddi_intr_set_cap - get or set interrupt capabilities for a given interrupt type SYNOPSIS
#include <sys/types.h> #include <sys/conf.h> #include <sys/ddi.h> #include <sys/sunddi.h> int ddi_intr_get_cap(ddi_intr_handle_t h, int *flagsp); int ddi_intr_set_cap(ddi_intr_handle_t h, int flags); INTERFACE LEVEL
Solaris DDI specific (Solaris DDI). ddi_intr_get_cap() h DDI interrupt handle flagsp Pointer to the capability flags returned for this handle ddi_intr_set_cap() h DDI interrupt handle flags Contains the capability flag to be set The ddi_intr_get_cap() function returns the interrupt capability flags for the interrupt handle h. Upon a successful return, the flags are returned in the integer pointed to by the flagsp argument. These flags are typically combinations of the following: DDI_INTR_FLAG_EDGE For discrete interrupts, the host supports edge type of trigger. This flag is not returned for DDI_INTR_TYPE_MSI or DDI_INTR_TYPE_MSIX interrupt types. This is a read-write (RW) flag. DDI_INTR_FLAG_LEVEL For discrete interrupts the host supports level, edge, or both types of triggers. This flag is not returned for DDI_INTR_TYPE_MSI or DDI_INTR_TYPE_MSIX interrupt types. DDI_INTR_FLAG_MASKABLE The interrupt can be masked either by the device or by the host bridge, or optionally by the host. This is a read- only (RO) flag. DDI_INTR_FLAG_PENDING The interrupt supports an interrupt pending bit. This is a read-only (RO) flag. DDI_INTR_FLAG_BLOCK All interrupts of the given type must be block-enabled and are not individually maskable. This is a read-only (RO) flag. The ddi_intr_set_cap() function allows a driver to specify the capability flags for the interrupt handle h. Only DDI_INTR_FLAG_LEVEL and DDI_INTR_FLAG_EDGE flags can be set. Some drivers can support both level or edge capability and either can be set by using the ddi_intr_set_cap() function. Setting the capability flags is device and platform dependent. The ddi_intr_set_cap() function can be called after interrupts are allocated and prior to adding the interrupt handler. For all other times it returns failure. The ddi_intr_get_cap() and ddi_intr_set_cap() functions return: 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_cap() and ddi_intr_set_cap() functions can be called from either user or kernel non-interrupt context. See attributes(5) for descriptions of the following attributes: +-----------------------------+-----------------------------+ | ATTRIBUTE TYPE | ATTRIBUTE VALUE | +-----------------------------+-----------------------------+ |Interface Stability |Evolving | +-----------------------------+-----------------------------+ attributes(5), ddi_intr_alloc(9F), ddi_intr_block_enable(9F), ddi_intr_get_nintrs(9F), ddi_intr_get_pending(9F), ddi_intr_get_sup- ported_types(9F), ddi_intr_set_mask(9F) Consumers of these interfaces should verify that the return value is not equal to DDI_SUCCESS. Incomplete checking for failure codes could result in inconsistent behavior among platforms. 20 Apr 2005 ddi_intr_get_cap(9F)