From nobody Tue Dec 16 16:35:56 2025 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id F0CC4C28B2B for ; Fri, 19 Aug 2022 16:03:33 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1351161AbiHSQDa (ORCPT ); Fri, 19 Aug 2022 12:03:30 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:52784 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1351184AbiHSQAx (ORCPT ); Fri, 19 Aug 2022 12:00:53 -0400 Received: from dfw.source.kernel.org (dfw.source.kernel.org [IPv6:2604:1380:4641:c500::1]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 7906D109A31; Fri, 19 Aug 2022 08:52:47 -0700 (PDT) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 04769615E7; Fri, 19 Aug 2022 15:52:46 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 104B1C433D6; Fri, 19 Aug 2022 15:52:44 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1660924365; bh=uVkf7CN14tgu/MS2uIvLuZPejT79xiG5SYEG9Raoiaw=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=xovMHSA5Cndj2jXRAeNQ0RJbehGxDnp5q2p8j3RkVGLaCRGLOwALdfMiiBuA6FVm/ kf5+5/xn7B52qXXgJ3fnsZKkZDZ6lgITEs5/IKqrLoNPrNyXJ2xEywJmzSP4mgFvt/ wox5RXmwEJdkhJpXr8qEAtVmMK6AA2Fhv9pt47NQ= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Sumit Garg , Daniel Thompson , Bjorn Andersson , Sasha Levin Subject: [PATCH 5.10 145/545] arm64: dts: qcom: qcs404: Fix incorrect USB2 PHYs assignment Date: Fri, 19 Aug 2022 17:38:35 +0200 Message-Id: <20220819153835.815965233@linuxfoundation.org> X-Mailer: git-send-email 2.37.2 In-Reply-To: <20220819153829.135562864@linuxfoundation.org> References: <20220819153829.135562864@linuxfoundation.org> User-Agent: quilt/0.67 MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" From: Sumit Garg [ Upstream commit 58577966a42fc0b660b5e2c7c9e5a2241363ea83 ] Currently the DT for QCS404 SoC has setup for 2 USB2 PHYs with one each assigned to USB3 controller and USB2 controller. This assignment is incorrect which only works by luck: as when each USB HCI comes up it configures the *other* controllers PHY which is enough to make them happy. If, for any reason, we were to disable one of the controllers then both would stop working. This was a difficult inconsistency to be caught which was found while trying to enable USB support in u-boot. So with all the required drivers ported to u-boot, I couldn't get the same USB storage device enumerated in u-boot which was being enumerated fine by the kernel. The root cause of the problem came out to be that I wasn't enabling USB2 PHY: "usb2_phy_prim" in u-boot. Then I realised that via simply disabling the same USB2 PHY currently assigned to USB2 host controller in the kernel disabled enumeration for USB3 host controller as well. So fix this inconsistency by correctly assigning USB2 PHYs. Fixes: 9375e7d719b3 ("arm64: dts: qcom: qcs404: Add USB devices and PHYs") Signed-off-by: Sumit Garg Reviewed-by: Daniel Thompson Signed-off-by: Bjorn Andersson Link: https://lore.kernel.org/r/20220711083038.1518529-1-sumit.garg@linaro.= org Signed-off-by: Sasha Levin --- arch/arm64/boot/dts/qcom/qcs404.dtsi | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/arch/arm64/boot/dts/qcom/qcs404.dtsi b/arch/arm64/boot/dts/qco= m/qcs404.dtsi index b654b802e95c..7bddc5ebc6aa 100644 --- a/arch/arm64/boot/dts/qcom/qcs404.dtsi +++ b/arch/arm64/boot/dts/qcom/qcs404.dtsi @@ -548,7 +548,7 @@ dwc3@7580000 { compatible =3D "snps,dwc3"; reg =3D <0x07580000 0xcd00>; interrupts =3D ; - phys =3D <&usb2_phy_sec>, <&usb3_phy>; + phys =3D <&usb2_phy_prim>, <&usb3_phy>; phy-names =3D "usb2-phy", "usb3-phy"; snps,has-lpm-erratum; snps,hird-threshold =3D /bits/ 8 <0x10>; @@ -577,7 +577,7 @@ dwc3@78c0000 { compatible =3D "snps,dwc3"; reg =3D <0x078c0000 0xcc00>; interrupts =3D ; - phys =3D <&usb2_phy_prim>; + phys =3D <&usb2_phy_sec>; phy-names =3D "usb2-phy"; snps,has-lpm-erratum; snps,hird-threshold =3D /bits/ 8 <0x10>; --=20 2.35.1