Lines Matching full:dwc2

57 static const char dwc2_driver_name[] = "dwc2";
224 hsotg->reset = devm_reset_control_get_optional(hsotg->dev, "dwc2"); in dwc2_lowlevel_hw_init()
233 hsotg->reset_ecc = devm_reset_control_get_optional(hsotg->dev, "dwc2-ecc"); in dwc2_lowlevel_hw_init()
345 * In specific conditions (involving usb hubs) dwc2 devices can create a
349 * of being able to handle the dwc2 interrupts. Disabling dwc2-irqs
632 struct dwc2_hsotg *dwc2 = dev_get_drvdata(dev); in dwc2_suspend() local
633 bool is_device_mode = dwc2_is_device_mode(dwc2); in dwc2_suspend()
637 dwc2_hsotg_suspend(dwc2); in dwc2_suspend()
639 dwc2_drd_suspend(dwc2); in dwc2_suspend()
641 if (dwc2->params.activate_stm_id_vb_detection) { in dwc2_suspend()
649 dwc2_force_mode(dwc2, !is_device_mode); in dwc2_suspend()
651 spin_lock_irqsave(&dwc2->lock, flags); in dwc2_suspend()
652 gotgctl = dwc2_readl(dwc2, GOTGCTL); in dwc2_suspend()
661 dwc2_writel(dwc2, gotgctl, GOTGCTL); in dwc2_suspend()
662 spin_unlock_irqrestore(&dwc2->lock, flags); in dwc2_suspend()
664 ggpio = dwc2_readl(dwc2, GGPIO); in dwc2_suspend()
667 dwc2_writel(dwc2, ggpio, GGPIO); in dwc2_suspend()
669 regulator_disable(dwc2->usb33d); in dwc2_suspend()
672 if (dwc2->ll_hw_enabled && in dwc2_suspend()
673 (is_device_mode || dwc2_host_can_poweroff_phy(dwc2))) { in dwc2_suspend()
674 ret = __dwc2_lowlevel_hw_disable(dwc2); in dwc2_suspend()
675 dwc2->phy_off_for_suspend = true; in dwc2_suspend()
683 struct dwc2_hsotg *dwc2 = dev_get_drvdata(dev); in dwc2_resume() local
686 if (dwc2->phy_off_for_suspend && dwc2->ll_hw_enabled) { in dwc2_resume()
687 ret = __dwc2_lowlevel_hw_enable(dwc2); in dwc2_resume()
691 dwc2->phy_off_for_suspend = false; in dwc2_resume()
693 if (dwc2->params.activate_stm_id_vb_detection) { in dwc2_resume()
697 ret = regulator_enable(dwc2->usb33d); in dwc2_resume()
701 ggpio = dwc2_readl(dwc2, GGPIO); in dwc2_resume()
704 dwc2_writel(dwc2, ggpio, GGPIO); in dwc2_resume()
709 spin_lock_irqsave(&dwc2->lock, flags); in dwc2_resume()
710 gotgctl = dwc2_readl(dwc2, GOTGCTL); in dwc2_resume()
714 dwc2_writel(dwc2, gotgctl, GOTGCTL); in dwc2_resume()
715 spin_unlock_irqrestore(&dwc2->lock, flags); in dwc2_resume()
719 dwc2_force_dr_mode(dwc2); in dwc2_resume()
721 dwc2_drd_resume(dwc2); in dwc2_resume()
723 if (dwc2_is_device_mode(dwc2)) in dwc2_resume()
724 ret = dwc2_hsotg_resume(dwc2); in dwc2_resume()