DDI_INTR_SET_MASK(9F)   Kernel Functions for Drivers   DDI_INTR_SET_MASK(9F)
NAME
       ddi_intr_set_mask, ddi_intr_clr_mask - set or clear mask for a given
       interrupt
SYNOPSIS
       #include <sys/types.h>
       #include <sys/conf.h>
       #include <sys/ddi.h>
       #include <sys/sunddi.h>       
int ddi_intr_set_mask(
ddi_intr_handle_t h);       
int ddi_intr_clr_mask(
ddi_intr_handle_t h);
INTERFACE LEVEL
       illumos DDI specific (illumos DDI).
PARAMETERS
       h            DDI interrupt handle
DESCRIPTION
       The 
ddi_intr_set_mask() function masks the given interrupt pointed to
       by the device's interrupt handle 
h if the device or host bridge
       supports the masking operation. The 
ddi_intr_get_cap() function
       returns the 
RO flag 
DDI_INTR_FLAG_MASKABLE if the device or host
       bridge supports interrupt mask bits for the given interrupt type. In
       flight interrupts can still be taken and delivered to the driver.
       The 
ddi_intr_clr_mask() function unmasks the given interrupt pointed
       by the device's interrupt handle 
h if the device or host bridge
       supports the masking operation.
       The 
ddi_intr_set_mask() and 
ddi_intr_clr_mask() functions should be
       called only if an interrupt is enabled. Otherwise the framework will
       return 
DDI_EINVAL to such calls.
       The mask cannot be cleared directly if the OS implementation has also
       temporarily masked the interrupt. A call to 
ddi_intr_clr_mask() must
       be preceded by a call to 
ddi_intr_set_mask(). It is not necessary to
       call 
ddi_intr_clr_mask() when adding and enabling the interrupt.
RETURN VALUES
       The 
ddi_intr_set_mask() and 
ddi_intr_clr_mask() functions return:       
DDI_SUCCESS                      On success.       
DDI_EINVAL                      On encountering invalid input parameters or when an
                      interrupt is not enabled.       
DDI_FAILURE                      On any implementation specific failure.       
DDI_ENOTSUP                      On device not supporting operation.
CONTEXT
       The 
ddi_intr_set_mask() and 
ddi_intr_clr_mask() functions can be
       called from any context.
ATTRIBUTES
       See 
attributes(7) for descriptions of the following attributes:
       +--------------------+-----------------+
       |  ATTRIBUTE TYPE    | ATTRIBUTE VALUE |
       +--------------------+-----------------+
       |Interface Stability | Committed       |
       +--------------------+-----------------+
SEE ALSO
       attributes(7), 
ddi_intr_block_disable(9F), 
ddi_intr_block_enable(9F),       
ddi_intr_disable(9F), 
ddi_intr_enable(9F), 
ddi_intr_get_pending(9F)       Writing Device DriversNOTES
       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.
                                April 5, 2006          DDI_INTR_SET_MASK(9F)