Lines Matching defs:udev
119 get_bw_info(struct xhci_hcd_mtk *mtk, struct usb_device *udev,
126 virt_dev = xhci->devs[udev->slot_id];
128 WARN_ONCE(1, "%s invalid real_port\n", dev_name(&udev->dev));
132 if (udev->speed >= USB_SPEED_SUPER) {
156 static struct mu3h_sch_tt *find_tt(struct usb_device *udev)
158 struct usb_tt *utt = udev->tt;
181 ptt = &tt_index[udev->ttport - 1];
203 /* Release the TT above udev, if it's not in use */
204 static void drop_tt(struct usb_device *udev)
206 struct usb_tt *utt = udev->tt;
216 ptt = &tt_index[udev->ttport - 1];
239 create_sch_ep(struct xhci_hcd_mtk *mtk, struct usb_device *udev,
246 bw_info = get_bw_info(mtk, udev, ep);
254 if (is_fs_or_ls(udev->speed)) {
255 tt = find_tt(udev);
265 sch_ep->speed = udev->speed;
560 static void destroy_sch_ep(struct xhci_hcd_mtk *mtk, struct usb_device *udev,
568 drop_tt(udev);
575 static bool need_bw_sch(struct usb_device *udev,
578 bool has_tt = udev->tt && udev->tt->hub->parent;
590 if (is_fs_or_ls(udev->speed) && !has_tt)
626 static int add_ep_quirk(struct usb_hcd *hcd, struct usb_device *udev,
636 virt_dev = xhci->devs[udev->slot_id];
640 if (!need_bw_sch(udev, ep)) {
652 xhci_dbg(xhci, "%s %s\n", __func__, decode_ep(ep, udev->speed));
654 sch_ep = create_sch_ep(mtk, udev, ep);
666 static void drop_ep_quirk(struct usb_hcd *hcd, struct usb_device *udev,
674 if (!need_bw_sch(udev, ep))
677 xhci_dbg(xhci, "%s %s\n", __func__, decode_ep(ep, udev->speed));
682 destroy_sch_ep(mtk, udev, sch_ep);
688 int xhci_mtk_check_bandwidth(struct usb_hcd *hcd, struct usb_device *udev)
692 struct xhci_virt_device *virt_dev = xhci->devs[udev->slot_id];
696 xhci_dbg(xhci, "%s() udev %s\n", __func__, dev_name(&udev->dev));
722 ret = xhci_check_bandwidth(hcd, udev);
729 void xhci_mtk_reset_bandwidth(struct usb_hcd *hcd, struct usb_device *udev)
735 xhci_dbg(xhci, "%s() udev %s\n", __func__, dev_name(&udev->dev));
738 destroy_sch_ep(mtk, udev, sch_ep);
740 xhci_reset_bandwidth(hcd, udev);
743 int xhci_mtk_add_ep(struct usb_hcd *hcd, struct usb_device *udev,
748 ret = xhci_add_endpoint(hcd, udev, ep);
753 ret = add_ep_quirk(hcd, udev, ep);
758 int xhci_mtk_drop_ep(struct usb_hcd *hcd, struct usb_device *udev,
763 ret = xhci_drop_endpoint(hcd, udev, ep);
768 drop_ep_quirk(hcd, udev, ep);