Lines Matching full:xhci
3 * xHCI host controller driver for HiSilicon STB SoCs
19 #include "xhci.h"
69 * refer to xHCI spec in xhci_histb_config()
193 struct xhci_hcd *xhci; in xhci_histb_probe() local
252 xhci = hcd_to_xhci(hcd); in xhci_histb_probe()
256 xhci->main_hcd = hcd; in xhci_histb_probe()
257 xhci->shared_hcd = usb_create_shared_hcd(driver, dev, dev_name(dev), in xhci_histb_probe()
259 if (!xhci->shared_hcd) { in xhci_histb_probe()
265 xhci->quirks |= XHCI_HW_LPM_DISABLE; in xhci_histb_probe()
268 xhci->quirks |= XHCI_LPM_SUPPORT; in xhci_histb_probe()
271 xhci->imod_interval = 40000; in xhci_histb_probe()
273 &xhci->imod_interval); in xhci_histb_probe()
279 if (HCC_MAX_PSA(xhci->hcc_params) >= 4) in xhci_histb_probe()
280 xhci->shared_hcd->can_do_streams = 1; in xhci_histb_probe()
282 ret = usb_add_hcd(xhci->shared_hcd, irq, IRQF_SHARED); in xhci_histb_probe()
300 usb_put_hcd(xhci->shared_hcd); in xhci_histb_probe()
316 struct xhci_hcd *xhci = hcd_to_xhci(hcd); in xhci_histb_remove() local
317 struct usb_hcd *shared_hcd = xhci->shared_hcd; in xhci_histb_remove()
319 xhci->xhc_state |= XHCI_STATE_REMOVING; in xhci_histb_remove()
322 xhci->shared_hcd = NULL; in xhci_histb_remove()
338 struct xhci_hcd *xhci = hcd_to_xhci(hcd); in xhci_histb_suspend() local
341 ret = xhci_suspend(xhci, device_may_wakeup(dev)); in xhci_histb_suspend()
353 struct xhci_hcd *xhci = hcd_to_xhci(hcd); in xhci_histb_resume() local
358 return xhci_resume(xhci, PMSG_RESUME); in xhci_histb_resume()
368 { .compatible = "hisilicon,hi3798cv200-xhci"},
378 .name = "xhci-histb",
383 MODULE_ALIAS("platform:xhci-histb");
398 MODULE_DESCRIPTION("HiSilicon STB xHCI Host Controller Driver");