Lines Matching full:dwc3
49 static int dwc3_get_dr_mode(struct dwc3 *dwc) in dwc3_get_dr_mode()
92 !DWC3_VER_IS_PRIOR(DWC3, 330A)) in dwc3_get_dr_mode()
107 void dwc3_enable_susphy(struct dwc3 *dwc, bool enable) in dwc3_enable_susphy()
128 void dwc3_set_prtcap(struct dwc3 *dwc, u32 mode, bool ignore_susphy) in dwc3_set_prtcap()
155 struct dwc3 *dwc = work_to_dwc(work); in __dwc3_set_mode()
203 if (dwc->current_dr_role && ((DWC3_IP_IS(DWC3) || in __dwc3_set_mode()
274 void dwc3_set_mode(struct dwc3 *dwc, u32 mode) in dwc3_set_mode()
290 struct dwc3 *dwc = dep->dwc; in dwc3_core_fifo_space()
306 int dwc3_core_soft_reset(struct dwc3 *dwc) in dwc3_core_soft_reset()
313 * XHCI driver will reset the host block. If dwc3 was configured for in dwc3_core_soft_reset()
344 dev_warn(dwc->dev, "DWC3 controller soft reset failed.\n"); in dwc3_core_soft_reset()
361 * @dwc3: Pointer to our controller context structure
363 static void dwc3_frame_length_adjustment(struct dwc3 *dwc) in dwc3_frame_length_adjustment()
368 if (DWC3_VER_IS_PRIOR(DWC3, 250A)) in dwc3_frame_length_adjustment()
391 static void dwc3_ref_clk_period(struct dwc3 *dwc) in dwc3_ref_clk_period()
416 if (DWC3_VER_IS_PRIOR(DWC3, 250A)) in dwc3_ref_clk_period()
461 static void dwc3_free_one_event_buffer(struct dwc3 *dwc, in dwc3_free_one_event_buffer()
475 static struct dwc3_event_buffer *dwc3_alloc_one_event_buffer(struct dwc3 *dwc, in dwc3_alloc_one_event_buffer()
502 static void dwc3_free_event_buffers(struct dwc3 *dwc) in dwc3_free_event_buffers()
519 static int dwc3_alloc_event_buffers(struct dwc3 *dwc, unsigned int length) in dwc3_alloc_event_buffers()
546 int dwc3_event_buffers_setup(struct dwc3 *dwc) in dwc3_event_buffers_setup()
569 void dwc3_event_buffers_cleanup(struct dwc3 *dwc) in dwc3_event_buffers_cleanup()
598 static void dwc3_core_num_eps(struct dwc3 *dwc) in dwc3_core_num_eps()
605 static void dwc3_cache_hwparams(struct dwc3 *dwc) in dwc3_cache_hwparams()
623 static int dwc3_core_ulpi_init(struct dwc3 *dwc) in dwc3_core_ulpi_init()
640 * dwc3_phy_setup - Configure USB PHY Interface of DWC3 Core
647 static int dwc3_phy_setup(struct dwc3 *dwc) in dwc3_phy_setup()
758 static int dwc3_phy_init(struct dwc3 *dwc) in dwc3_phy_init()
784 static void dwc3_phy_exit(struct dwc3 *dwc) in dwc3_phy_exit()
793 static int dwc3_phy_power_on(struct dwc3 *dwc) in dwc3_phy_power_on()
824 if (!DWC3_VER_IS_WITHIN(DWC3, ANY, 194A)) in dwc3_phy_power_on()
838 static void dwc3_phy_power_off(struct dwc3 *dwc) in dwc3_phy_power_off()
847 static int dwc3_clk_enable(struct dwc3 *dwc) in dwc3_clk_enable()
872 static void dwc3_clk_disable(struct dwc3 *dwc) in dwc3_clk_disable()
879 static void dwc3_core_exit(struct dwc3 *dwc) in dwc3_core_exit()
888 static bool dwc3_core_is_valid(struct dwc3 *dwc) in dwc3_core_is_valid()
896 if (DWC3_IP_IS(DWC3)) { in dwc3_core_is_valid()
908 static void dwc3_core_setup_global_control(struct dwc3 *dwc) in dwc3_core_setup_global_control()
922 * WORKAROUND: DWC3 revisions between 2.10a and 2.50a have an in dwc3_core_setup_global_control()
935 DWC3_VER_IS_WITHIN(DWC3, 210A, 250A)) in dwc3_core_setup_global_control()
966 /* check if current dwc3 is on simulation board */ in dwc3_core_setup_global_control()
984 * WORKAROUND: DWC3 revisions <1.90a have a bug in dwc3_core_setup_global_control()
989 if (DWC3_VER_IS_PRIOR(DWC3, 190A)) in dwc3_core_setup_global_control()
995 static int dwc3_core_get_phy(struct dwc3 *dwc);
996 static int dwc3_core_ulpi_init(struct dwc3 *dwc);
999 static void dwc3_set_incr_burst_type(struct dwc3 *dwc) in dwc3_set_incr_burst_type()
1090 static void dwc3_set_power_down_clk_scale(struct dwc3 *dwc) in dwc3_set_power_down_clk_scale()
1121 static void dwc3_config_threshold(struct dwc3 *dwc) in dwc3_config_threshold()
1133 if (!DWC3_IP_IS(DWC3) && dwc->dr_mode == USB_DR_MODE_HOST) { in dwc3_config_threshold()
1171 if (DWC3_IP_IS(DWC3)) { in dwc3_config_threshold()
1227 * dwc3_core_init - Low-level initialization of DWC3 Core
1232 static int dwc3_core_init(struct dwc3 *dwc) in dwc3_core_init()
1306 if (DWC3_VER_IS_WITHIN(DWC3, 310A, ANY)) { in dwc3_core_init()
1321 if (DWC3_VER_IS(DWC3, 320A)) { in dwc3_core_init()
1342 if (!DWC3_VER_IS_PRIOR(DWC3, 250A)) { in dwc3_core_init()
1349 if (!DWC3_VER_IS_PRIOR(DWC3, 290A)) in dwc3_core_init()
1358 if (!DWC3_VER_IS_PRIOR(DWC3, 300A)) in dwc3_core_init()
1370 if (DWC3_VER_IS_WITHIN(DWC3, 290A, ANY) && in dwc3_core_init()
1392 static int dwc3_core_get_phy(struct dwc3 *dwc) in dwc3_core_get_phy()
1443 static int dwc3_core_init_mode(struct dwc3 *dwc) in dwc3_core_init_mode()
1487 static void dwc3_core_exit_mode(struct dwc3 *dwc) in dwc3_core_exit_mode()
1508 static void dwc3_get_properties(struct dwc3 *dwc) in dwc3_get_properties()
1678 bool dwc3_has_imod(struct dwc3 *dwc) in dwc3_has_imod()
1680 return DWC3_VER_IS_WITHIN(DWC3, 300A, ANY) || in dwc3_has_imod()
1685 static void dwc3_check_params(struct dwc3 *dwc) in dwc3_check_params()
1784 static struct extcon_dev *dwc3_get_extcon(struct dwc3 *dwc) in dwc3_get_extcon()
1834 static int dwc3_get_clocks(struct dwc3 *dwc) in dwc3_get_clocks()
1892 static struct power_supply *dwc3_get_usb_power_supply(struct dwc3 *dwc) in dwc3_get_usb_power_supply()
1914 struct dwc3 *dwc; in dwc3_probe()
1945 if (of_device_is_compatible(parent, "realtek,rtd-dwc3")) { in dwc3_probe()
2074 struct dwc3 *dwc = platform_get_drvdata(pdev); in dwc3_remove()
2102 static int dwc3_core_init_for_resume(struct dwc3 *dwc) in dwc3_core_init_for_resume()
2128 static int dwc3_suspend_common(struct dwc3 *dwc, pm_message_t msg) in dwc3_suspend_common()
2195 static int dwc3_resume_common(struct dwc3 *dwc, pm_message_t msg) in dwc3_resume_common()
2262 static int dwc3_runtime_checks(struct dwc3 *dwc) in dwc3_runtime_checks()
2280 struct dwc3 *dwc = dev_get_drvdata(dev); in dwc3_runtime_suspend()
2295 struct dwc3 *dwc = dev_get_drvdata(dev); in dwc3_runtime_resume()
2323 struct dwc3 *dwc = dev_get_drvdata(dev); in dwc3_runtime_idle()
2346 struct dwc3 *dwc = dev_get_drvdata(dev); in dwc3_suspend()
2360 struct dwc3 *dwc = dev_get_drvdata(dev); in dwc3_resume()
2378 struct dwc3 *dwc = dev_get_drvdata(dev); in dwc3_complete()
2408 .compatible = "snps,dwc3"
2411 .compatible = "synopsys,dwc3"
2433 .name = "dwc3",
2442 MODULE_ALIAS("platform:dwc3");