aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/usb
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/usb')
-rw-r--r--drivers/usb/phy/phy-msm-usb.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/drivers/usb/phy/phy-msm-usb.c b/drivers/usb/phy/phy-msm-usb.c
index bb339963f8bb..db8d96377620 100644
--- a/drivers/usb/phy/phy-msm-usb.c
+++ b/drivers/usb/phy/phy-msm-usb.c
@@ -287,8 +287,9 @@ static int msm_link_reset(struct msm_otg *motg)
287 if (motg->phy_number) 287 if (motg->phy_number)
288 writel(readl(USB_PHY_CTRL2) | BIT(16), USB_PHY_CTRL2); 288 writel(readl(USB_PHY_CTRL2) | BIT(16), USB_PHY_CTRL2);
289 289
290 /* put transceiver in serial mode as part of reset */
290 val = readl(USB_PORTSC) & ~PORTSC_PTS_MASK; 291 val = readl(USB_PORTSC) & ~PORTSC_PTS_MASK;
291 writel(val | PORTSC_PTS_ULPI, USB_PORTSC); 292 writel(val | PORTSC_PTS_SERIAL, USB_PORTSC);
292 293
293 return 0; 294 return 0;
294} 295}
@@ -308,8 +309,9 @@ static int msm_otg_reset(struct usb_phy *phy)
308 if (cnt >= LINK_RESET_TIMEOUT_USEC) 309 if (cnt >= LINK_RESET_TIMEOUT_USEC)
309 return -ETIMEDOUT; 310 return -ETIMEDOUT;
310 311
311 /* select ULPI phy */ 312 /* select ULPI phy and clear other status/control bits in PORTSC */
312 writel(0x80000000, USB_PORTSC); 313 writel(PORTSC_PTS_ULPI, USB_PORTSC);
314
313 writel(0x0, USB_AHBBURST); 315 writel(0x0, USB_AHBBURST);
314 writel(0x08, USB_AHBMODE); 316 writel(0x08, USB_AHBMODE);
315 317