dwc3-msm: Don't perform additional USB PHY reset and initialization

For first USB cable connect case used initialization sequence:
1. dwc3_core_pre_init()
2. dwc3_core_init()
3. dwc3_event_buffers_setup()

For next USB cable connect case used initialization sequence:
1. dwc3_core_init()
2. dwc3_event_buffers_setup()

dwc3_core_pre_init() is performing below set of operations:
a. dwc3_cache_hwparams()
b. dwc3_alloc_event_buffers()
c. dwc3_core_init()
d. dwc3_event_buffers_setup()

dwc3_core_init() performs below operations.
1. phy_reset
2. phy_initialization
3. core soft reset
4. dr_mode based device and host mode configuration

This change is trying to fix first USB cable connect case scenario by
removing dwc3_core_init() and dwc3_event_buffers_setup() API usage from
dwc3_core_pre_init() API. With this, dwc3_core_init() is used once for
first USB cable connect which removes additional USB PHY reset and
initialization. It has been observed in some case back to back USB PHY
reset and initialization results into USB high speed PHY PLL doesn't
lock as expected. This change fixes this issue.

Change-Id: I0741cb8fd8e247530a423f57e8e81d53e7438ce2
Signed-off-by: Mayank Rana <mrana@codeaurora.org>
diff --git a/drivers/usb/dwc3/core.c b/drivers/usb/dwc3/core.c
index 33e3d9f..3e459b0 100644
--- a/drivers/usb/dwc3/core.c
+++ b/drivers/usb/dwc3/core.c
@@ -1064,56 +1064,17 @@
 
 int dwc3_core_pre_init(struct dwc3 *dwc)
 {
-	int ret;
+	int ret = 0;
 
 	dwc3_cache_hwparams(dwc);
-
-	ret = dwc3_phy_setup(dwc);
-	if (ret)
-		goto err0;
-
 	if (!dwc->ev_buf) {
 		ret = dwc3_alloc_event_buffers(dwc, DWC3_EVENT_BUFFERS_SIZE);
 		if (ret) {
 			dev_err(dwc->dev, "failed to allocate event buffers\n");
 			ret = -ENOMEM;
-			goto err1;
 		}
 	}
 
-	ret = dwc3_core_init(dwc);
-	if (ret) {
-		dev_err(dwc->dev, "failed to initialize core\n");
-		goto err2;
-	}
-
-	ret = phy_power_on(dwc->usb2_generic_phy);
-	if (ret < 0)
-		goto err3;
-
-	ret = phy_power_on(dwc->usb3_generic_phy);
-	if (ret < 0)
-		goto err4;
-
-	ret = dwc3_event_buffers_setup(dwc);
-	if (ret) {
-		dev_err(dwc->dev, "failed to setup event buffers\n");
-		goto err5;
-	}
-
-	return ret;
-
-err5:
-	phy_power_off(dwc->usb3_generic_phy);
-err4:
-	phy_power_off(dwc->usb2_generic_phy);
-err3:
-	dwc3_core_exit(dwc);
-err2:
-	dwc3_free_event_buffers(dwc);
-err1:
-	dwc3_ulpi_exit(dwc);
-err0:
 	return ret;
 }