Lines Matching refs:qh
74 if (!chan->qh) in dwc2_hc_handle_tt_clear()
77 if (chan->qh->dev_speed == USB_SPEED_HIGH) in dwc2_hc_handle_tt_clear()
97 chan->qh->tt_buffer_dirty = 1; in dwc2_hc_handle_tt_clear()
100 chan->qh->tt_buffer_dirty = 0; in dwc2_hc_handle_tt_clear()
113 struct dwc2_qh *qh; in dwc2_sof_intr() local
130 qh = list_entry(qh_entry, struct dwc2_qh, qh_list_entry); in dwc2_sof_intr()
132 if (dwc2_frame_num_le(qh->next_active_frame, in dwc2_sof_intr()
135 qh, hsotg->frame_number, in dwc2_sof_intr()
136 qh->next_active_frame); in dwc2_sof_intr()
142 list_move_tail(&qh->qh_list_entry, in dwc2_sof_intr()
423 } else if (chan->qh->do_split) { in dwc2_get_actual_xfer_length()
518 if (WARN(!chan || !chan->qh, in dwc2_hcd_save_data_toggle()
523 chan->qh->data_toggle = DWC2_HC_PID_DATA0; in dwc2_hcd_save_data_toggle()
525 chan->qh->data_toggle = DWC2_HC_PID_DATA1; in dwc2_hcd_save_data_toggle()
593 if (chan->qh->do_split && in dwc2_update_isoc_urb_state()
628 static void dwc2_deactivate_qh(struct dwc2_hsotg *hsotg, struct dwc2_qh *qh, in dwc2_deactivate_qh() argument
634 if (dbg_qh(qh)) in dwc2_deactivate_qh()
636 hsotg, qh, free_qtd); in dwc2_deactivate_qh()
638 if (list_empty(&qh->qtd_list)) { in dwc2_deactivate_qh()
643 qtd = list_first_entry(&qh->qtd_list, struct dwc2_qtd, qtd_list_entry); in dwc2_deactivate_qh()
652 dwc2_hcd_qtd_unlink_and_free(hsotg, qtd, qh); in dwc2_deactivate_qh()
657 qh->channel = NULL; in dwc2_deactivate_qh()
658 dwc2_hcd_qh_deactivate(hsotg, qh, continue_split); in dwc2_deactivate_qh()
721 dwc2_deactivate_qh(hsotg, chan->qh, free_qtd); in dwc2_release_channel()
813 list_move_tail(&chan->qh->qh_list_entry, in dwc2_halt_channel()
849 chan->qh->ping_state = 1; in dwc2_complete_non_periodic_xfer()
924 dma_unmap_single(hsotg->dev, chan->qh->dw_align_buf_dma, in dwc2_xfercomp_isoc_split_in()
927 chan->qh->dw_align_buf, len); in dwc2_xfercomp_isoc_split_in()
986 if (chan->qh->do_split) { in dwc2_hc_xfercomp_intr()
1125 chan->qh->data_toggle = 0; in dwc2_hc_stall_intr()
1220 qtd->qh->want_wait = qtd->num_naks >= DWC2_NAKS_BEFORE_DELAY && in dwc2_hc_nak_intr()
1248 if (!chan->qh->ping_state) { in dwc2_hc_nak_intr()
1254 chan->qh->ping_state = 1; in dwc2_hc_nak_intr()
1335 if (chan->qh->ping_state) { in dwc2_hc_ack_intr()
1336 chan->qh->ping_state = 0; in dwc2_hc_ack_intr()
1394 struct dwc2_qh *qh = chan->qh; in dwc2_hc_nyet_intr() local
1402 dwc2_full_frame_num(qh->next_active_frame); in dwc2_hc_nyet_intr()
1429 qh->start_active_frame, in dwc2_hc_nyet_intr()
1430 qh->num_hs_transfers); in dwc2_hc_nyet_intr()
1432 if (qh->ep_type != USB_ENDPOINT_XFER_ISOC || in dwc2_hc_nyet_intr()
1433 qh->ep_is_in) in dwc2_hc_nyet_intr()
1438 end_frnum, qh->next_active_frame); in dwc2_hc_nyet_intr()
1465 chan->qh->ping_state = 1; in dwc2_hc_nyet_intr()
1643 if (!chan->qh->ping_state) { in dwc2_hc_xacterr_intr()
1648 chan->qh->ping_state = 1; in dwc2_hc_xacterr_intr()
2001 static bool dwc2_check_qtd_still_ok(struct dwc2_qtd *qtd, struct dwc2_qh *qh) in dwc2_check_qtd_still_ok() argument
2005 if (!qh) in dwc2_check_qtd_still_ok()
2008 cur_head = list_first_entry(&qh->qtd_list, struct dwc2_qtd, in dwc2_check_qtd_still_ok()
2044 if (!chan->qh) { in dwc2_hc_n_intr()
2071 if (list_empty(&chan->qh->qtd_list)) { in dwc2_hc_n_intr()
2087 qtd = list_first_entry(&chan->qh->qtd_list, struct dwc2_qtd, in dwc2_hc_n_intr()
2107 if (!dwc2_check_qtd_still_ok(qtd, chan->qh)) in dwc2_hc_n_intr()
2112 if (!dwc2_check_qtd_still_ok(qtd, chan->qh)) in dwc2_hc_n_intr()
2117 if (!dwc2_check_qtd_still_ok(qtd, chan->qh)) in dwc2_hc_n_intr()
2122 if (!dwc2_check_qtd_still_ok(qtd, chan->qh)) in dwc2_hc_n_intr()
2127 if (!dwc2_check_qtd_still_ok(qtd, chan->qh)) in dwc2_hc_n_intr()
2132 if (!dwc2_check_qtd_still_ok(qtd, chan->qh)) in dwc2_hc_n_intr()
2137 if (!dwc2_check_qtd_still_ok(qtd, chan->qh)) in dwc2_hc_n_intr()
2142 if (!dwc2_check_qtd_still_ok(qtd, chan->qh)) in dwc2_hc_n_intr()
2147 if (!dwc2_check_qtd_still_ok(qtd, chan->qh)) in dwc2_hc_n_intr()
2152 if (!dwc2_check_qtd_still_ok(qtd, chan->qh)) in dwc2_hc_n_intr()