diff --git a/drivers/usb/host/ehci-msm.c b/drivers/usb/host/ehci-msm.c index 823229b67fa..8b1f3a8d7ef 100644 --- a/drivers/usb/host/ehci-msm.c +++ b/drivers/usb/host/ehci-msm.c @@ -48,7 +48,7 @@ static int ehci_msm_reset(struct usb_hcd *hcd) return retval; /* bursts of unspecified length. */ - writel(0, USB_AHBBURST); + writel_relaxed(0, USB_AHBBURST); /* Use the AHB transactor */ writel_relaxed(0x08, USB_AHBMODE); /* Disable streaming mode and select host mode */ @@ -60,6 +60,10 @@ static int ehci_msm_reset(struct usb_hcd *hcd) USB_PHY_CTRL2); } + /* Disable ULPI_TX_PKT_EN_CLR_FIX which is valid only for HSIC */ + writel_relaxed(readl_relaxed(USB_GENCONFIG2) & ~(1<<19), + USB_GENCONFIG2); + ehci_port_power(ehci, 1); return 0; }