Message ID | CA+bK7J55xzQ-TYssLtDi7ftBW7VOz2j47xrdQnGOVrE6fJhxPw@mail.gmail.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Hi, On Thu, Aug 14, 2014 at 09:53:10AM -0700, Tim Bird wrote: > Ping. Anybody know the status of this patch? Is it queued in someone's tree? > Without it the USB driver for the Qualcomm 8974 (hsusb phy) doesn't > work (at least for me). > It looks like it got dropped from Ivan's original patch series, back in May. I don't maintain chipidea, Peter's the guy you want > > ---------- Forwarded message ---------- > From: Tim Bird <tbird20d@gmail.com> > Date: Fri, Jul 25, 2014 at 2:38 PM > Subject: Status of chipidea msm USB reset patch > To: linux-arm-msm@vger.kernel.org, balbi@ti.com, "Ivan T. Ivanov" > <iivanov@mm-sol.com> > > > Ivan and Felipe, > > Do you know the status of the patch below? It was part of Ivan's > USB patch set, which got mainlined recently. However, this patch > did not show up in Linus' tree. > > Is it in another tree on it's way, or does it need a re-submission? > > I was recently testing the MSM USB gadget driver on the Dragonboard 800 > (with a Qualcomm 8974 processor), and without this patch the USB hardware > does not come up properly. > > Thanks, > -- Tim > > > Subject: [PATCH] usb: chipidea: msm: Use USB PHY API to control PHY state > > PHY drivers keep track of the current state of the hardware, > so don't change PHY settings under it. > > Signed-off-by: Ivan T. Ivanov <iivanov@mm-sol.com> > --- > drivers/usb/chipidea/ci_hdrc_msm.c | 9 ++------- > 1 file changed, 2 insertions(+), 7 deletions(-) > > diff --git a/drivers/usb/chipidea/ci_hdrc_msm.c > b/drivers/usb/chipidea/ci_hdrc_msm.c > index d72b9d2..81de834 100644 > --- a/drivers/usb/chipidea/ci_hdrc_msm.c > +++ b/drivers/usb/chipidea/ci_hdrc_msm.c > @@ -20,13 +20,11 @@ > static void ci_hdrc_msm_notify_event(struct ci_hdrc *ci, unsigned event) > { > struct device *dev = ci->gadget.dev.parent; > - int val; > > switch (event) { > case CI_HDRC_CONTROLLER_RESET_EVENT: > dev_dbg(dev, "CI_HDRC_CONTROLLER_RESET_EVENT received\n"); > - writel(0, USB_AHBBURST); > - writel(0, USB_AHBMODE); > + usb_phy_init(ci->transceiver); > break; > case CI_HDRC_CONTROLLER_STOPPED_EVENT: > dev_dbg(dev, "CI_HDRC_CONTROLLER_STOPPED_EVENT received\n"); > @@ -34,10 +32,7 @@ static void ci_hdrc_msm_notify_event(struct ci_hdrc > *ci, unsigned event) > * Put the transceiver in non-driving mode. Otherwise host > * may not detect soft-disconnection. > */ > - val = usb_phy_io_read(ci->transceiver, ULPI_FUNC_CTRL); > - val &= ~ULPI_FUNC_CTRL_OPMODE_MASK; > - val |= ULPI_FUNC_CTRL_OPMODE_NONDRIVING; > - usb_phy_io_write(ci->transceiver, val, ULPI_FUNC_CTRL); > + usb_phy_notify_disconnect(ci->transceiver, USB_SPEED_UNKNOWN); > break; > default: > dev_dbg(dev, "unknown ci_hdrc event\n"); > -- > 1.8.2.2
On Thu, Aug 14, 2014 at 11:54:02AM -0500, Felipe Balbi wrote: > Hi, > > On Thu, Aug 14, 2014 at 09:53:10AM -0700, Tim Bird wrote: > > Ping. Anybody know the status of this patch? Is it queued in someone's tree? > > Without it the USB driver for the Qualcomm 8974 (hsusb phy) doesn't > > work (at least for me). > > It looks like it got dropped from Ivan's original patch series, back in May. > > I don't maintain chipidea, Peter's the guy you want Below patch was not at msm chipidea patchset Ivan sent me. http://markmail.org/search/?q=%5BPATCH+v4+0%2F3%5D+usb%3A+chipidea%3A+msm%3A+Clean+and+fix+#query:%5BPATCH%20v4%200%2F3%5D%20usb%3A%20chipidea%3A%20msm%3A%20Clean%20and%20fix%20from%3A%22Ivan%20T.%20Ivanov%22+page:1+mid:mt7hgr7yamyzegg3+state:results Peter > > > > > ---------- Forwarded message ---------- > > From: Tim Bird <tbird20d@gmail.com> > > Date: Fri, Jul 25, 2014 at 2:38 PM > > Subject: Status of chipidea msm USB reset patch > > To: linux-arm-msm@vger.kernel.org, balbi@ti.com, "Ivan T. Ivanov" > > <iivanov@mm-sol.com> > > > > > > Ivan and Felipe, > > > > Do you know the status of the patch below? It was part of Ivan's > > USB patch set, which got mainlined recently. However, this patch > > did not show up in Linus' tree. > > > > Is it in another tree on it's way, or does it need a re-submission? > > > > I was recently testing the MSM USB gadget driver on the Dragonboard 800 > > (with a Qualcomm 8974 processor), and without this patch the USB hardware > > does not come up properly. > > > > Thanks, > > -- Tim > > > > > > Subject: [PATCH] usb: chipidea: msm: Use USB PHY API to control PHY state > > > > PHY drivers keep track of the current state of the hardware, > > so don't change PHY settings under it. > > > > Signed-off-by: Ivan T. Ivanov <iivanov@mm-sol.com> > > --- > > drivers/usb/chipidea/ci_hdrc_msm.c | 9 ++------- > > 1 file changed, 2 insertions(+), 7 deletions(-) > > > > diff --git a/drivers/usb/chipidea/ci_hdrc_msm.c > > b/drivers/usb/chipidea/ci_hdrc_msm.c > > index d72b9d2..81de834 100644 > > --- a/drivers/usb/chipidea/ci_hdrc_msm.c > > +++ b/drivers/usb/chipidea/ci_hdrc_msm.c > > @@ -20,13 +20,11 @@ > > static void ci_hdrc_msm_notify_event(struct ci_hdrc *ci, unsigned event) > > { > > struct device *dev = ci->gadget.dev.parent; > > - int val; > > > > switch (event) { > > case CI_HDRC_CONTROLLER_RESET_EVENT: > > dev_dbg(dev, "CI_HDRC_CONTROLLER_RESET_EVENT received\n"); > > - writel(0, USB_AHBBURST); > > - writel(0, USB_AHBMODE); > > + usb_phy_init(ci->transceiver); > > break; > > case CI_HDRC_CONTROLLER_STOPPED_EVENT: > > dev_dbg(dev, "CI_HDRC_CONTROLLER_STOPPED_EVENT received\n"); > > @@ -34,10 +32,7 @@ static void ci_hdrc_msm_notify_event(struct ci_hdrc > > *ci, unsigned event) > > * Put the transceiver in non-driving mode. Otherwise host > > * may not detect soft-disconnection. > > */ > > - val = usb_phy_io_read(ci->transceiver, ULPI_FUNC_CTRL); > > - val &= ~ULPI_FUNC_CTRL_OPMODE_MASK; > > - val |= ULPI_FUNC_CTRL_OPMODE_NONDRIVING; > > - usb_phy_io_write(ci->transceiver, val, ULPI_FUNC_CTRL); > > + usb_phy_notify_disconnect(ci->transceiver, USB_SPEED_UNKNOWN); > > break; > > default: > > dev_dbg(dev, "unknown ci_hdrc event\n"); > > -- > > 1.8.2.2 > > -- > balbi
On Fri, 2014-08-15 at 08:23 +0800, Peter Chen wrote: > On Thu, Aug 14, 2014 at 11:54:02AM -0500, Felipe Balbi wrote: > > Hi, > > > > On Thu, Aug 14, 2014 at 09:53:10AM -0700, Tim Bird wrote: > > > Ping. Anybody know the status of this patch? Is it queued in someone's tree? > > > Without it the USB driver for the Qualcomm 8974 (hsusb phy) doesn't > > > work (at least for me). > > > It looks like it got dropped from Ivan's original patch series, back in May. > > > > I don't maintain chipidea, Peter's the guy you want > > Below patch was not at msm chipidea patchset Ivan sent me. > > http://markmail.org/search/?q=%5BPATCH+v4+0%2F3%5D+usb%3A+chipidea%3A+msm%3A+Clean+and+fix+#query:%5BPATCH%20v4%200%2F3%5D%20usb%3A%20chipidea%3A%20msm%3A%20Clean%20and%20fix%20from%3A%22Ivan%20T.%20Ivanov%22+page:1+mid:mt7hgr7yamyzegg3+state:results > My fault. I have waiting PHY patches to be accepted to send this one. Will rebase and resend. Ivan -- To unsubscribe from this list: send the line "unsubscribe linux-arm-msm" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/drivers/usb/chipidea/ci_hdrc_msm.c b/drivers/usb/chipidea/ci_hdrc_msm.c index d72b9d2..81de834 100644 --- a/drivers/usb/chipidea/ci_hdrc_msm.c +++ b/drivers/usb/chipidea/ci_hdrc_msm.c @@ -20,13 +20,11 @@ static void ci_hdrc_msm_notify_event(struct ci_hdrc *ci, unsigned event) { struct device *dev = ci->gadget.dev.parent; - int val; switch (event) { case CI_HDRC_CONTROLLER_RESET_EVENT: dev_dbg(dev, "CI_HDRC_CONTROLLER_RESET_EVENT received\n"); - writel(0, USB_AHBBURST); - writel(0, USB_AHBMODE); + usb_phy_init(ci->transceiver); break; case CI_HDRC_CONTROLLER_STOPPED_EVENT: dev_dbg(dev, "CI_HDRC_CONTROLLER_STOPPED_EVENT received\n"); @@ -34,10 +32,7 @@ static void ci_hdrc_msm_notify_event(struct ci_hdrc *ci, unsigned event) * Put the transceiver in non-driving mode. Otherwise host * may not detect soft-disconnection. */ - val = usb_phy_io_read(ci->transceiver, ULPI_FUNC_CTRL); - val &= ~ULPI_FUNC_CTRL_OPMODE_MASK; - val |= ULPI_FUNC_CTRL_OPMODE_NONDRIVING; - usb_phy_io_write(ci->transceiver, val, ULPI_FUNC_CTRL); + usb_phy_notify_disconnect(ci->transceiver, USB_SPEED_UNKNOWN); break; default: