Received: by 2002:a05:6a10:6006:0:0:0:0 with SMTP id w6csp491851pxa; Thu, 27 Aug 2020 07:50:25 -0700 (PDT) X-Google-Smtp-Source: ABdhPJy4hoz/GgMTmtz/WfuakRI/66/2g9TQYl42ALD8ka8JK7nBolsFmuKuIvByPCQdQJwZk8dJ X-Received: by 2002:a17:906:255b:: with SMTP id j27mr20994318ejb.46.1598539825565; Thu, 27 Aug 2020 07:50:25 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1598539825; cv=none; d=google.com; s=arc-20160816; b=EoIH9AaguSxWOR/LUim1Ckazae9svXyBIqP1HVE6WWrByexvB9bNcPjVsm/bgFWA4h ry5t76vIR1mbSVTCNt1vVK5Y/cC9ITDFsvtjUVtC9skQFE3dTAI6aX6j01/KtvLDBEtm GhPxPQXmh7oo2alG6Y+8mILDXkhd1OCAfVbEW2vRP1gMYXZi5MyBBfyk02ZmvFXa86dU 9LnPG5YVY/LUyIM7KuLh/HNa8XLhtRnpXIovMQl7ige9jIZx+Tnc9/vp5kBE8wHr5hJQ kfpE/RUKsaIngUpd5QpHblg1FTZX7x4fLkhv65u40r3dIkuuNqOUyiCy9FttbRaCEi/k UZnA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:message-id:date:subject:cc:to:from :dkim-signature; bh=US0rKLWi0Ij67svDuIlZzqQZrRksxzdQhyeGx2i0lHA=; b=tv7NwEdZZWzhGsQW37DG/fRdSqaJn9DXADzJaRfMtrRiv4RsONTOFyLuQCfQN65MLR 35MSOycuNVLdxf63qVMOubHnZlS4cOziMdu9ZFtw54VYHwGMsleUWfGmlFwgMCdiSesW 0XG/NXUnLTH6lMGy858VSJWqq1gOlI2ZFYYFXIdeN55OMLaBGPCHaMWVijC8mDdmpF0X mpJ9ne1aXA9aDQFFNGlWxDCeqqpwNByCW8lW1d09giEzJ+Dr9JHHF105li+5XWICvqAd bq3A+bp80vRa1WsZt6dEXE9TlrV9f227/1LfZKKeV7RvBfqIi66ME/Y6u4r4lIe02nQX 8dEw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@baylibre-com.20150623.gappssmtp.com header.s=20150623 header.b=S4pcjGYX; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id u1si1583422edv.460.2020.08.27.07.50.01; Thu, 27 Aug 2020 07:50:25 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@baylibre-com.20150623.gappssmtp.com header.s=20150623 header.b=S4pcjGYX; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728029AbgH0Oso (ORCPT + 99 others); Thu, 27 Aug 2020 10:48:44 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:32792 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727849AbgH0Os3 (ORCPT ); Thu, 27 Aug 2020 10:48:29 -0400 Received: from mail-wm1-x342.google.com (mail-wm1-x342.google.com [IPv6:2a00:1450:4864:20::342]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 727FCC06121B for ; Thu, 27 Aug 2020 07:48:28 -0700 (PDT) Received: by mail-wm1-x342.google.com with SMTP id y8so3891570wma.0 for ; Thu, 27 Aug 2020 07:48:28 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=baylibre-com.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id; bh=US0rKLWi0Ij67svDuIlZzqQZrRksxzdQhyeGx2i0lHA=; b=S4pcjGYXLbtMtCdpP90WCSGT29fBBzW7vj9f/R0GaIuYOTidERM3wLubMrY4hB2pbg blCZiFzfpu7LOlZm6YLit8h2vBenAXIDzbDKpM1nyGz68tCsEf6aFR2LSVWXDA7UQFCi WdYhRjw+1HzPQng1fIkDEVMVYcChzzL2se2+/0o39WTH6pL6dzkjK9YOX3zfOt59Hpov GFIB09ihBviRr0RBGQ/59DE1I0zW9GY3AXKRJmmsRdkAzy83fGSOOEGX4+VsQReIfA77 o1ay6NYxCmZ3A6ZpgyPhpvuXQanBmWwCd5U0T9nIpgxp/O7eFuV6j2CmKkNpXrP58sHC l3SA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=US0rKLWi0Ij67svDuIlZzqQZrRksxzdQhyeGx2i0lHA=; b=ManngnA3+2aax20bi7XkSY35N0/8cREyQhD1C6yk8CN40IQWEZLrl4SDjC/y/IpWjC Ypo49SPHcFaeEO6BrbL5TT6JL9un2wtynvSOQf0PxRww4d0RIp+FzaTf3tZj1oS6rWfw ziHHd/7ch7xSCY2LIDSOFQ/WiGq1tN31liqlAZ7R4Eeyj5nI7xbvi4sJUooTNqSiz/s6 mP0nBMA7INKYuYVnsVZFO5zPJsuuldHNApjLeExj3YUJjZ9ReleR9Xdl42fwqX36nkoE CamBoF2nGdsiYq5UYQlsPkACII9P++69RiIWdmv5CJfExTH9rjve6dj+97h6cy5y1ePw jqOw== X-Gm-Message-State: AOAM531zO3NQCBMfsjjbYrOPqNsjC9VAQuYGPYo45rV0bh6qtqimCRWe 8TkEm4DKIPn4Npz7Nw2Vap1bLA== X-Received: by 2002:a1c:7c11:: with SMTP id x17mr10242160wmc.122.1598539707094; Thu, 27 Aug 2020 07:48:27 -0700 (PDT) Received: from amjad-ThinkPad-T490.baylibre.local (laubervilliers-658-1-213-31.w90-63.abo.wanadoo.fr. [90.63.244.31]) by smtp.googlemail.com with ESMTPSA id 33sm6756659wri.16.2020.08.27.07.48.25 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 27 Aug 2020 07:48:26 -0700 (PDT) From: Amjad Ouled-Ameur To: Felipe Balbi Cc: Amjad Ouled-Ameur , Dan Robertson , Greg Kroah-Hartman , Kevin Hilman , Neil Armstrong , Jerome Brunet , Martin Blumenstingl , Philipp Zabel , linux-usb@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-amlogic@lists.infradead.org, linux-kernel@vger.kernel.org Subject: [PATCH] Revert "usb: dwc3: meson-g12a: fix shared reset control use" Date: Thu, 27 Aug 2020 16:48:10 +0200 Message-Id: <20200827144810.26657-1-aouledameur@baylibre.com> X-Mailer: git-send-email 2.17.1 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org This reverts commit 7a410953d1fb4dbe91ffcfdee9cbbf889d19b0d7. This commit breaks USB on meson-gxl-s905x-libretech-cc. Reverting the change solves the issue. In fact, according to the reset framework code, consumers must not use reset_control_(de)assert() on shared reset lines when reset_control_reset has been used, and vice-versa. Moreover, with this commit, usb is not guaranted to be reset since the reset is likely to be initially deasserted. Reverting the commit will bring back the suspend warning mentioned in the commit description. Nevertheless, a warning is much less critical than breaking dwc3-meson-g12a USB completely. We will address the warning issue in another way as a 2nd step. Signed-off-by: Amjad Ouled-Ameur Reported-by: Jerome Brunet --- drivers/usb/dwc3/dwc3-meson-g12a.c | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) diff --git a/drivers/usb/dwc3/dwc3-meson-g12a.c b/drivers/usb/dwc3/dwc3-meson-g12a.c index 88b75b5a039c..1f7f4d88ed9d 100644 --- a/drivers/usb/dwc3/dwc3-meson-g12a.c +++ b/drivers/usb/dwc3/dwc3-meson-g12a.c @@ -737,13 +737,13 @@ static int dwc3_meson_g12a_probe(struct platform_device *pdev) goto err_disable_clks; } - ret = reset_control_deassert(priv->reset); + ret = reset_control_reset(priv->reset); if (ret) - goto err_assert_reset; + goto err_disable_clks; ret = dwc3_meson_g12a_get_phys(priv); if (ret) - goto err_assert_reset; + goto err_disable_clks; ret = priv->drvdata->setup_regmaps(priv, base); if (ret) @@ -752,7 +752,7 @@ static int dwc3_meson_g12a_probe(struct platform_device *pdev) if (priv->vbus) { ret = regulator_enable(priv->vbus); if (ret) - goto err_assert_reset; + goto err_disable_clks; } /* Get dr_mode */ @@ -765,13 +765,13 @@ static int dwc3_meson_g12a_probe(struct platform_device *pdev) ret = priv->drvdata->usb_init(priv); if (ret) - goto err_assert_reset; + goto err_disable_clks; /* Init PHYs */ for (i = 0 ; i < PHY_COUNT ; ++i) { ret = phy_init(priv->phys[i]); if (ret) - goto err_assert_reset; + goto err_disable_clks; } /* Set PHY Power */ @@ -809,9 +809,6 @@ static int dwc3_meson_g12a_probe(struct platform_device *pdev) for (i = 0 ; i < PHY_COUNT ; ++i) phy_exit(priv->phys[i]); -err_assert_reset: - reset_control_assert(priv->reset); - err_disable_clks: clk_bulk_disable_unprepare(priv->drvdata->num_clks, priv->drvdata->clks); -- 2.17.1