Lines Matching refs:hdlp

446     ddi_intr_handle_impl_t *hdlp, void *result)  in xpvd_intr_ops()  argument
454 (void *)pdip, (void *)rdip, intr_op, (void *)hdlp)); in xpvd_intr_ops()
471 if (hdlp->ih_type == DDI_INTR_TYPE_FIXED) { in xpvd_intr_ops()
476 hdlp->ih_cap |= XENDEV_INTR_CAPABILITIES; in xpvd_intr_ops()
484 ispec = xpvd_get_ispec(rdip, (int)hdlp->ih_inum); in xpvd_intr_ops()
491 if (xpvd_get_priority(rdip, hdlp->ih_inum, &priority) != in xpvd_intr_ops()
509 if ((*psm_intr_ops)(rdip, hdlp, PSM_INTR_OP_SET_PRI, result) == in xpvd_intr_ops()
513 ispec = xpvd_get_ispec(rdip, (int)hdlp->ih_inum); in xpvd_intr_ops()
521 ispec = xpvd_get_ispec(rdip, (int)hdlp->ih_inum); in xpvd_intr_ops()
524 ispec->intrspec_func = hdlp->ih_cb_func; in xpvd_intr_ops()
529 ispec = xpvd_get_ispec(rdip, (int)hdlp->ih_inum); in xpvd_intr_ops()
543 if (hdlp->ih_type == DDI_INTR_TYPE_FIXED) { in xpvd_intr_ops()
562 if ((*psm_intr_ops)(rdip, hdlp, PSM_INTR_OP_SET_CAP, result)) { in xpvd_intr_ops()
573 if (xpvd_enable_intr(rdip, hdlp, (int)hdlp->ih_inum) != in xpvd_intr_ops()
578 hdlp->ih_vector)); in xpvd_intr_ops()
584 xpvd_disable_intr(rdip, hdlp, hdlp->ih_inum); in xpvd_intr_ops()
586 hdlp->ih_vector)); in xpvd_intr_ops()
601 if (hdlp->ih_type != DDI_INTR_TYPE_FIXED) in xpvd_intr_ops()
604 ec_disable_irq(hdlp->ih_vector); in xpvd_intr_ops()
606 ec_enable_irq(hdlp->ih_vector); in xpvd_intr_ops()
614 if (hdlp->ih_type != DDI_INTR_TYPE_FIXED) in xpvd_intr_ops()
616 *(int *)result = ec_pending_irq(hdlp->ih_vector); in xpvd_intr_ops()
629 return (i_ddi_intr_ops(pdip, rdip, intr_op, hdlp, result)); in xpvd_intr_ops()
637 xpvd_enable_intr(dev_info_t *rdip, ddi_intr_handle_impl_t *hdlp, int inum) in xpvd_enable_intr() argument
640 ihdl_plat_t *ihdl_plat_datap = (ihdl_plat_t *)hdlp->ih_private; in xpvd_enable_intr()
643 (void *)hdlp, inum)); in xpvd_enable_intr()
650 (void) (*psm_intr_ops)(rdip, hdlp, PSM_INTR_OP_XLATE_VECTOR, &vector); in xpvd_enable_intr()
652 hdlp->ih_pri, vector)); in xpvd_enable_intr()
655 if (!add_avintr((void *)hdlp, hdlp->ih_pri, hdlp->ih_cb_func, in xpvd_enable_intr()
656 DEVI(rdip)->devi_name, vector, hdlp->ih_cb_arg1, in xpvd_enable_intr()
657 hdlp->ih_cb_arg2, NULL, rdip)) in xpvd_enable_intr()
661 hdlp->ih_vector = (ushort_t)vector; in xpvd_enable_intr()
668 xpvd_disable_intr(dev_info_t *rdip, ddi_intr_handle_impl_t *hdlp, int inum) in xpvd_disable_intr() argument
671 ihdl_plat_t *ihdl_plat_datap = (ihdl_plat_t *)hdlp->ih_private; in xpvd_disable_intr()
679 (void) (*psm_intr_ops)(rdip, hdlp, PSM_INTR_OP_XLATE_VECTOR, &vector); in xpvd_disable_intr()
682 rem_avintr((void *)hdlp, hdlp->ih_pri, hdlp->ih_cb_func, vector); in xpvd_disable_intr()