From patchwork Fri Jul 25 21:38:36 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Tim Bird X-Patchwork-Id: 4625811 Return-Path: X-Original-To: patchwork-linux-arm-msm@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork1.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.19.201]) by patchwork1.web.kernel.org (Postfix) with ESMTP id CBB439F36A for ; Fri, 25 Jul 2014 21:38:40 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id 0164F201F4 for ; Fri, 25 Jul 2014 21:38:40 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id B706D2015E for ; Fri, 25 Jul 2014 21:38:38 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1760344AbaGYVii (ORCPT ); Fri, 25 Jul 2014 17:38:38 -0400 Received: from mail-wi0-f177.google.com ([209.85.212.177]:49842 "EHLO mail-wi0-f177.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1760273AbaGYVih (ORCPT ); Fri, 25 Jul 2014 17:38:37 -0400 Received: by mail-wi0-f177.google.com with SMTP id ho1so1663730wib.10 for ; Fri, 25 Jul 2014 14:38:36 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:date:message-id:subject:from:to:content-type; bh=Cy7DnicoevTmvJ4fo9+DQsldJQA9Vqwb8oOJRALiCRY=; b=TqE5gr8QJRBWA+Ujq1BhwDdmxDnHjNVTPLW8bk1JYYnuEqUh1c/DU9ICjtslX8Nt+d 47jI2ENecbwPlZ88QwILDuQxs3JMWI+AHLyHJQqUwn506exd4uZnffFE4v3YyRBdbRq2 UOrDlF0rloaZnqDvkENur7mEyYKzocXdmNPh/K28UDr1eR1XF3EfvhNhG9VYHGqa86z/ ySmF14f9voW29IIjWASsz59ONZQN7edyQn7JsWD+/w9Il9WqEv212YHeQgXG7e80akTy mYev0PXU+UCyls+xJsRGclh2D4ITtsOkCpTF+VONc41g3jBtuy9/M6/d1TFTaIkmFj52 wsGQ== MIME-Version: 1.0 X-Received: by 10.180.85.162 with SMTP id i2mr8778323wiz.53.1406324316642; Fri, 25 Jul 2014 14:38:36 -0700 (PDT) Received: by 10.217.10.73 with HTTP; Fri, 25 Jul 2014 14:38:36 -0700 (PDT) Date: Fri, 25 Jul 2014 14:38:36 -0700 Message-ID: Subject: Status of chipidea msm USB reset patch From: Tim Bird To: linux-arm-msm@vger.kernel.org, balbi@ti.com, "Ivan T. Ivanov" Sender: linux-arm-msm-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-arm-msm@vger.kernel.org X-Spam-Status: No, score=-6.8 required=5.0 tests=BAYES_00, DKIM_ADSP_CUSTOM_MED, DKIM_SIGNED, FREEMAIL_FROM, RCVD_IN_DNSWL_HI, RP_MATCHES_RCVD, T_DKIM_INVALID, UNPARSEABLE_RELAY autolearn=ham version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on mail.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP 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 --- drivers/usb/chipidea/ci_hdrc_msm.c | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) dev_dbg(dev, "unknown ci_hdrc event\n"); 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: