diff options
Diffstat (limited to 'usr/src/uts/common/sys/ddi_intr_impl.h')
-rw-r--r-- | usr/src/uts/common/sys/ddi_intr_impl.h | 20 |
1 files changed, 5 insertions, 15 deletions
diff --git a/usr/src/uts/common/sys/ddi_intr_impl.h b/usr/src/uts/common/sys/ddi_intr_impl.h index f741709d09..554eb32da1 100644 --- a/usr/src/uts/common/sys/ddi_intr_impl.h +++ b/usr/src/uts/common/sys/ddi_intr_impl.h @@ -76,7 +76,7 @@ typedef struct ddi_intr_handle_impl { dev_info_t *ih_dip; /* dip associated with handle */ uint16_t ih_type; /* interrupt type being used */ ushort_t ih_inum; /* interrupt number */ - ushort_t ih_vector; /* vector number */ + uint32_t ih_vector; /* vector number */ uint16_t ih_ver; /* Version */ uint_t ih_state; /* interrupt handle state */ uint_t ih_cap; /* interrupt capabilities */ @@ -115,6 +115,9 @@ typedef struct ddi_intr_handle_impl { #define DDI_INTR_IS_MSI_OR_MSIX(type) \ ((type) == DDI_INTR_TYPE_MSI || (type) == DDI_INTR_TYPE_MSIX) +#define DDI_INTR_SUP_TYPES DDI_INTR_TYPE_FIXED|DDI_INTR_TYPE_MSI|\ + DDI_INTR_TYPE_MSIX + /* * One such data structure is allocated per ddi_soft_intr_handle * This is the incore copy of the softint info. @@ -190,8 +193,6 @@ typedef struct devinfo_intr { (DEVI(dip)->devi_ops->devo_bus_ops->busops_rev >= BUSO_REV_9) && \ (DEVI(dip)->devi_ops->devo_bus_ops->bus_intr_op)) -int i_ddi_handle_intr_ops(dev_info_t *dip, dev_info_t *rdip, - ddi_intr_op_t op, ddi_intr_handle_impl_t *hdlp, void *result); int i_ddi_intr_ops(dev_info_t *dip, dev_info_t *rdip, ddi_intr_op_t op, ddi_intr_handle_impl_t *hdlp, void *result); @@ -212,9 +213,9 @@ void i_ddi_intr_set_supported_nintrs(dev_info_t *dip, int nintrs); uint_t i_ddi_intr_get_current_nintrs(dev_info_t *dip); void i_ddi_intr_set_current_nintrs(dev_info_t *dip, int nintrs); +ddi_intr_handle_t *i_ddi_get_intr_handle(dev_info_t *dip, int inum); void i_ddi_set_intr_handle(dev_info_t *dip, int inum, ddi_intr_handle_t *hdlp); -ddi_intr_handle_t *i_ddi_get_intr_handle(dev_info_t *dip, int inum); ddi_intr_msix_t *i_ddi_get_msix(dev_info_t *dip); void i_ddi_set_msix(dev_info_t *dip, ddi_intr_msix_t *msix_p); @@ -222,8 +223,6 @@ void i_ddi_set_msix(dev_info_t *dip, ddi_intr_msix_t *msix_p); int32_t i_ddi_get_intr_weight(dev_info_t *); int32_t i_ddi_set_intr_weight(dev_info_t *, int32_t); -int i_ddi_get_nintrs(dev_info_t *dip); - #define DDI_INTR_ASSIGN_HDLR_N_ARGS(hdlp, func, arg1, arg2) \ hdlp->ih_cb_func = func; \ hdlp->ih_cb_arg1 = arg1; \ @@ -252,15 +251,6 @@ struct intrspec { }; #ifdef _KERNEL -/* - * This structure is allocated by i_ddi_add_softintr and its address is used - * as a cookie passed back to the caller to be used later by - * i_ddi_remove_softintr - */ -struct soft_intrspec { - struct dev_info *si_devi; /* records dev_info of caller */ - struct intrspec si_intrspec; /* and the intrspec */ -}; /* * NOTE: |