From mboxrd@z Thu Jan 1 00:00:00 1970 From: Mikko Perttunen Subject: Re: [PATCH v3] ARM: tegra: Correct which USB controller has the UTMI pad registers Date: Fri, 03 Apr 2015 12:10:29 +0300 Message-ID: <551E5905.6050105@kapsi.fi> References: <551D61A5.2010102@kapsi.fi> <1428045671-2333-1-git-send-email-tomeu.vizoso@collabora.com> Mime-Version: 1.0 Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <1428045671-2333-1-git-send-email-tomeu.vizoso-ZGY8ohtN/8qB+jHODAdFcQ@public.gmane.org> Sender: linux-tegra-owner-u79uwXL29TY76Z2rM5mHXA@public.gmane.org To: Tomeu Vizoso , linux-tegra-u79uwXL29TY76Z2rM5mHXA@public.gmane.org Cc: Tuomas Tynkkynen , Rob Herring , Pawel Moll , Mark Rutland , Ian Campbell , Kumar Gala , Russell King , Stephen Warren , Thierry Reding , Alexandre Courbot , devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org, linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org List-Id: linux-tegra@vger.kernel.org On 04/03/2015 10:21 AM, Tomeu Vizoso wrote: > It should be the first controller, not the second. The indexes of the > usb resets were also wrong and have been fixed. > > The issue was caused by the changes in 308efde ("ARM: tegra: Add resets > & has-utmi-pad-registers flag to all USB PHYs") being misapplied by git > due to the patch context being insufficient. > > This broke USB after 6261b06 ("regulator: Defer lookup of supply to > regulator_get"), because it changed the order in which the controllers > were probed. > > The fix for this issue was suggested by Mikko Perttunen and Tuomas > Tynkkynen. > > Signed-off-by: Tomeu Vizoso > Cc: Mikko Perttunen > Cc: Tuomas Tynkkynen > --- > Hi, > > hope I have gotten it right this time, but please do check :) Yeah, this seems correct to me :) > > Thanks, > > Tomeu > --- > arch/arm/boot/dts/tegra124.dtsi | 8 ++++---- > 1 file changed, 4 insertions(+), 4 deletions(-) > > diff --git a/arch/arm/boot/dts/tegra124.dtsi b/arch/arm/boot/dts/tegra124.dtsi > index cf01c81..13cc7ca 100644 > --- a/arch/arm/boot/dts/tegra124.dtsi > +++ b/arch/arm/boot/dts/tegra124.dtsi > @@ -809,114 +809,114 @@ > compatible = "nvidia,tegra124-ehci", "nvidia,tegra30-ehci", "usb-ehci"; > reg = <0x0 0x7d000000 0x0 0x4000>; > interrupts = ; > phy_type = "utmi"; > clocks = <&tegra_car TEGRA124_CLK_USBD>; > resets = <&tegra_car 22>; > reset-names = "usb"; > nvidia,phy = <&phy1>; > status = "disabled"; > }; > > phy1: usb-phy@0,7d000000 { > compatible = "nvidia,tegra124-usb-phy", "nvidia,tegra30-usb-phy"; > reg = <0x0 0x7d000000 0x0 0x4000>, > <0x0 0x7d000000 0x0 0x4000>; > phy_type = "utmi"; > clocks = <&tegra_car TEGRA124_CLK_USBD>, > <&tegra_car TEGRA124_CLK_PLL_U>, > <&tegra_car TEGRA124_CLK_USBD>; > clock-names = "reg", "pll_u", "utmi-pads"; > - resets = <&tegra_car 59>, <&tegra_car 22>; > + resets = <&tegra_car 22>, <&tegra_car 22>; > reset-names = "usb", "utmi-pads"; > nvidia,hssync-start-delay = <0>; > nvidia,idle-wait-delay = <17>; > nvidia,elastic-limit = <16>; > nvidia,term-range-adj = <6>; > nvidia,xcvr-setup = <9>; > nvidia,xcvr-lsfslew = <0>; > nvidia,xcvr-lsrslew = <3>; > nvidia,hssquelch-level = <2>; > nvidia,hsdiscon-level = <5>; > nvidia,xcvr-hsslew = <12>; > + nvidia,has-utmi-pad-registers; > status = "disabled"; > }; > > usb@0,7d004000 { > compatible = "nvidia,tegra124-ehci", "nvidia,tegra30-ehci", "usb-ehci"; > reg = <0x0 0x7d004000 0x0 0x4000>; > interrupts = ; > phy_type = "utmi"; > clocks = <&tegra_car TEGRA124_CLK_USB2>; > resets = <&tegra_car 58>; > reset-names = "usb"; > nvidia,phy = <&phy2>; > status = "disabled"; > }; > > phy2: usb-phy@0,7d004000 { > compatible = "nvidia,tegra124-usb-phy", "nvidia,tegra30-usb-phy"; > reg = <0x0 0x7d004000 0x0 0x4000>, > <0x0 0x7d000000 0x0 0x4000>; > phy_type = "utmi"; > clocks = <&tegra_car TEGRA124_CLK_USB2>, > <&tegra_car TEGRA124_CLK_PLL_U>, > <&tegra_car TEGRA124_CLK_USBD>; > clock-names = "reg", "pll_u", "utmi-pads"; > - resets = <&tegra_car 22>, <&tegra_car 22>; > + resets = <&tegra_car 58>, <&tegra_car 22>; > reset-names = "usb", "utmi-pads"; > nvidia,hssync-start-delay = <0>; > nvidia,idle-wait-delay = <17>; > nvidia,elastic-limit = <16>; > nvidia,term-range-adj = <6>; > nvidia,xcvr-setup = <9>; > nvidia,xcvr-lsfslew = <0>; > nvidia,xcvr-lsrslew = <3>; > nvidia,hssquelch-level = <2>; > nvidia,hsdiscon-level = <5>; > nvidia,xcvr-hsslew = <12>; > - nvidia,has-utmi-pad-registers; > status = "disabled"; > }; > > usb@0,7d008000 { > compatible = "nvidia,tegra124-ehci", "nvidia,tegra30-ehci", "usb-ehci"; > reg = <0x0 0x7d008000 0x0 0x4000>; > interrupts = ; > phy_type = "utmi"; > clocks = <&tegra_car TEGRA124_CLK_USB3>; > resets = <&tegra_car 59>; > reset-names = "usb"; > nvidia,phy = <&phy3>; > status = "disabled"; > }; > > phy3: usb-phy@0,7d008000 { > compatible = "nvidia,tegra124-usb-phy", "nvidia,tegra30-usb-phy"; > reg = <0x0 0x7d008000 0x0 0x4000>, > <0x0 0x7d000000 0x0 0x4000>; > phy_type = "utmi"; > clocks = <&tegra_car TEGRA124_CLK_USB3>, > <&tegra_car TEGRA124_CLK_PLL_U>, > <&tegra_car TEGRA124_CLK_USBD>; > clock-names = "reg", "pll_u", "utmi-pads"; > - resets = <&tegra_car 58>, <&tegra_car 22>; > + resets = <&tegra_car 59>, <&tegra_car 22>; > reset-names = "usb", "utmi-pads"; > nvidia,hssync-start-delay = <0>; > nvidia,idle-wait-delay = <17>; > nvidia,elastic-limit = <16>; > nvidia,term-range-adj = <6>; > nvidia,xcvr-setup = <9>; > nvidia,xcvr-lsfslew = <0>; > nvidia,xcvr-lsrslew = <3>; > nvidia,hssquelch-level = <2>; > nvidia,hsdiscon-level = <5>; > nvidia,xcvr-hsslew = <12>; > status = "disabled"; > }; > > cpus { > #address-cells = <1>; > #size-cells = <0>; > > cpu@0 { > device_type = "cpu"; > From mboxrd@z Thu Jan 1 00:00:00 1970 From: mikko.perttunen@kapsi.fi (Mikko Perttunen) Date: Fri, 03 Apr 2015 12:10:29 +0300 Subject: [PATCH v3] ARM: tegra: Correct which USB controller has the UTMI pad registers In-Reply-To: <1428045671-2333-1-git-send-email-tomeu.vizoso@collabora.com> References: <551D61A5.2010102@kapsi.fi> <1428045671-2333-1-git-send-email-tomeu.vizoso@collabora.com> Message-ID: <551E5905.6050105@kapsi.fi> To: linux-arm-kernel@lists.infradead.org List-Id: linux-arm-kernel.lists.infradead.org On 04/03/2015 10:21 AM, Tomeu Vizoso wrote: > It should be the first controller, not the second. The indexes of the > usb resets were also wrong and have been fixed. > > The issue was caused by the changes in 308efde ("ARM: tegra: Add resets > & has-utmi-pad-registers flag to all USB PHYs") being misapplied by git > due to the patch context being insufficient. > > This broke USB after 6261b06 ("regulator: Defer lookup of supply to > regulator_get"), because it changed the order in which the controllers > were probed. > > The fix for this issue was suggested by Mikko Perttunen and Tuomas > Tynkkynen. > > Signed-off-by: Tomeu Vizoso > Cc: Mikko Perttunen > Cc: Tuomas Tynkkynen > --- > Hi, > > hope I have gotten it right this time, but please do check :) Yeah, this seems correct to me :) > > Thanks, > > Tomeu > --- > arch/arm/boot/dts/tegra124.dtsi | 8 ++++---- > 1 file changed, 4 insertions(+), 4 deletions(-) > > diff --git a/arch/arm/boot/dts/tegra124.dtsi b/arch/arm/boot/dts/tegra124.dtsi > index cf01c81..13cc7ca 100644 > --- a/arch/arm/boot/dts/tegra124.dtsi > +++ b/arch/arm/boot/dts/tegra124.dtsi > @@ -809,114 +809,114 @@ > compatible = "nvidia,tegra124-ehci", "nvidia,tegra30-ehci", "usb-ehci"; > reg = <0x0 0x7d000000 0x0 0x4000>; > interrupts = ; > phy_type = "utmi"; > clocks = <&tegra_car TEGRA124_CLK_USBD>; > resets = <&tegra_car 22>; > reset-names = "usb"; > nvidia,phy = <&phy1>; > status = "disabled"; > }; > > phy1: usb-phy at 0,7d000000 { > compatible = "nvidia,tegra124-usb-phy", "nvidia,tegra30-usb-phy"; > reg = <0x0 0x7d000000 0x0 0x4000>, > <0x0 0x7d000000 0x0 0x4000>; > phy_type = "utmi"; > clocks = <&tegra_car TEGRA124_CLK_USBD>, > <&tegra_car TEGRA124_CLK_PLL_U>, > <&tegra_car TEGRA124_CLK_USBD>; > clock-names = "reg", "pll_u", "utmi-pads"; > - resets = <&tegra_car 59>, <&tegra_car 22>; > + resets = <&tegra_car 22>, <&tegra_car 22>; > reset-names = "usb", "utmi-pads"; > nvidia,hssync-start-delay = <0>; > nvidia,idle-wait-delay = <17>; > nvidia,elastic-limit = <16>; > nvidia,term-range-adj = <6>; > nvidia,xcvr-setup = <9>; > nvidia,xcvr-lsfslew = <0>; > nvidia,xcvr-lsrslew = <3>; > nvidia,hssquelch-level = <2>; > nvidia,hsdiscon-level = <5>; > nvidia,xcvr-hsslew = <12>; > + nvidia,has-utmi-pad-registers; > status = "disabled"; > }; > > usb at 0,7d004000 { > compatible = "nvidia,tegra124-ehci", "nvidia,tegra30-ehci", "usb-ehci"; > reg = <0x0 0x7d004000 0x0 0x4000>; > interrupts = ; > phy_type = "utmi"; > clocks = <&tegra_car TEGRA124_CLK_USB2>; > resets = <&tegra_car 58>; > reset-names = "usb"; > nvidia,phy = <&phy2>; > status = "disabled"; > }; > > phy2: usb-phy at 0,7d004000 { > compatible = "nvidia,tegra124-usb-phy", "nvidia,tegra30-usb-phy"; > reg = <0x0 0x7d004000 0x0 0x4000>, > <0x0 0x7d000000 0x0 0x4000>; > phy_type = "utmi"; > clocks = <&tegra_car TEGRA124_CLK_USB2>, > <&tegra_car TEGRA124_CLK_PLL_U>, > <&tegra_car TEGRA124_CLK_USBD>; > clock-names = "reg", "pll_u", "utmi-pads"; > - resets = <&tegra_car 22>, <&tegra_car 22>; > + resets = <&tegra_car 58>, <&tegra_car 22>; > reset-names = "usb", "utmi-pads"; > nvidia,hssync-start-delay = <0>; > nvidia,idle-wait-delay = <17>; > nvidia,elastic-limit = <16>; > nvidia,term-range-adj = <6>; > nvidia,xcvr-setup = <9>; > nvidia,xcvr-lsfslew = <0>; > nvidia,xcvr-lsrslew = <3>; > nvidia,hssquelch-level = <2>; > nvidia,hsdiscon-level = <5>; > nvidia,xcvr-hsslew = <12>; > - nvidia,has-utmi-pad-registers; > status = "disabled"; > }; > > usb at 0,7d008000 { > compatible = "nvidia,tegra124-ehci", "nvidia,tegra30-ehci", "usb-ehci"; > reg = <0x0 0x7d008000 0x0 0x4000>; > interrupts = ; > phy_type = "utmi"; > clocks = <&tegra_car TEGRA124_CLK_USB3>; > resets = <&tegra_car 59>; > reset-names = "usb"; > nvidia,phy = <&phy3>; > status = "disabled"; > }; > > phy3: usb-phy at 0,7d008000 { > compatible = "nvidia,tegra124-usb-phy", "nvidia,tegra30-usb-phy"; > reg = <0x0 0x7d008000 0x0 0x4000>, > <0x0 0x7d000000 0x0 0x4000>; > phy_type = "utmi"; > clocks = <&tegra_car TEGRA124_CLK_USB3>, > <&tegra_car TEGRA124_CLK_PLL_U>, > <&tegra_car TEGRA124_CLK_USBD>; > clock-names = "reg", "pll_u", "utmi-pads"; > - resets = <&tegra_car 58>, <&tegra_car 22>; > + resets = <&tegra_car 59>, <&tegra_car 22>; > reset-names = "usb", "utmi-pads"; > nvidia,hssync-start-delay = <0>; > nvidia,idle-wait-delay = <17>; > nvidia,elastic-limit = <16>; > nvidia,term-range-adj = <6>; > nvidia,xcvr-setup = <9>; > nvidia,xcvr-lsfslew = <0>; > nvidia,xcvr-lsrslew = <3>; > nvidia,hssquelch-level = <2>; > nvidia,hsdiscon-level = <5>; > nvidia,xcvr-hsslew = <12>; > status = "disabled"; > }; > > cpus { > #address-cells = <1>; > #size-cells = <0>; > > cpu at 0 { > device_type = "cpu"; > From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752468AbbDCJKp (ORCPT ); Fri, 3 Apr 2015 05:10:45 -0400 Received: from mail.kapsi.fi ([217.30.184.167]:55797 "EHLO mail.kapsi.fi" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751916AbbDCJKk (ORCPT ); Fri, 3 Apr 2015 05:10:40 -0400 Message-ID: <551E5905.6050105@kapsi.fi> Date: Fri, 03 Apr 2015 12:10:29 +0300 From: Mikko Perttunen User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.4.0 MIME-Version: 1.0 To: Tomeu Vizoso , linux-tegra@vger.kernel.org CC: Tuomas Tynkkynen , Rob Herring , Pawel Moll , Mark Rutland , Ian Campbell , Kumar Gala , Russell King , Stephen Warren , Thierry Reding , Alexandre Courbot , devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH v3] ARM: tegra: Correct which USB controller has the UTMI pad registers References: <551D61A5.2010102@kapsi.fi> <1428045671-2333-1-git-send-email-tomeu.vizoso@collabora.com> In-Reply-To: <1428045671-2333-1-git-send-email-tomeu.vizoso@collabora.com> Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit X-SA-Exim-Connect-IP: 2001:708:30:12d0:beee:7bff:fe5b:f272 X-SA-Exim-Mail-From: mikko.perttunen@kapsi.fi X-SA-Exim-Scanned: No (on mail.kapsi.fi); SAEximRunCond expanded to false Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 04/03/2015 10:21 AM, Tomeu Vizoso wrote: > It should be the first controller, not the second. The indexes of the > usb resets were also wrong and have been fixed. > > The issue was caused by the changes in 308efde ("ARM: tegra: Add resets > & has-utmi-pad-registers flag to all USB PHYs") being misapplied by git > due to the patch context being insufficient. > > This broke USB after 6261b06 ("regulator: Defer lookup of supply to > regulator_get"), because it changed the order in which the controllers > were probed. > > The fix for this issue was suggested by Mikko Perttunen and Tuomas > Tynkkynen. > > Signed-off-by: Tomeu Vizoso > Cc: Mikko Perttunen > Cc: Tuomas Tynkkynen > --- > Hi, > > hope I have gotten it right this time, but please do check :) Yeah, this seems correct to me :) > > Thanks, > > Tomeu > --- > arch/arm/boot/dts/tegra124.dtsi | 8 ++++---- > 1 file changed, 4 insertions(+), 4 deletions(-) > > diff --git a/arch/arm/boot/dts/tegra124.dtsi b/arch/arm/boot/dts/tegra124.dtsi > index cf01c81..13cc7ca 100644 > --- a/arch/arm/boot/dts/tegra124.dtsi > +++ b/arch/arm/boot/dts/tegra124.dtsi > @@ -809,114 +809,114 @@ > compatible = "nvidia,tegra124-ehci", "nvidia,tegra30-ehci", "usb-ehci"; > reg = <0x0 0x7d000000 0x0 0x4000>; > interrupts = ; > phy_type = "utmi"; > clocks = <&tegra_car TEGRA124_CLK_USBD>; > resets = <&tegra_car 22>; > reset-names = "usb"; > nvidia,phy = <&phy1>; > status = "disabled"; > }; > > phy1: usb-phy@0,7d000000 { > compatible = "nvidia,tegra124-usb-phy", "nvidia,tegra30-usb-phy"; > reg = <0x0 0x7d000000 0x0 0x4000>, > <0x0 0x7d000000 0x0 0x4000>; > phy_type = "utmi"; > clocks = <&tegra_car TEGRA124_CLK_USBD>, > <&tegra_car TEGRA124_CLK_PLL_U>, > <&tegra_car TEGRA124_CLK_USBD>; > clock-names = "reg", "pll_u", "utmi-pads"; > - resets = <&tegra_car 59>, <&tegra_car 22>; > + resets = <&tegra_car 22>, <&tegra_car 22>; > reset-names = "usb", "utmi-pads"; > nvidia,hssync-start-delay = <0>; > nvidia,idle-wait-delay = <17>; > nvidia,elastic-limit = <16>; > nvidia,term-range-adj = <6>; > nvidia,xcvr-setup = <9>; > nvidia,xcvr-lsfslew = <0>; > nvidia,xcvr-lsrslew = <3>; > nvidia,hssquelch-level = <2>; > nvidia,hsdiscon-level = <5>; > nvidia,xcvr-hsslew = <12>; > + nvidia,has-utmi-pad-registers; > status = "disabled"; > }; > > usb@0,7d004000 { > compatible = "nvidia,tegra124-ehci", "nvidia,tegra30-ehci", "usb-ehci"; > reg = <0x0 0x7d004000 0x0 0x4000>; > interrupts = ; > phy_type = "utmi"; > clocks = <&tegra_car TEGRA124_CLK_USB2>; > resets = <&tegra_car 58>; > reset-names = "usb"; > nvidia,phy = <&phy2>; > status = "disabled"; > }; > > phy2: usb-phy@0,7d004000 { > compatible = "nvidia,tegra124-usb-phy", "nvidia,tegra30-usb-phy"; > reg = <0x0 0x7d004000 0x0 0x4000>, > <0x0 0x7d000000 0x0 0x4000>; > phy_type = "utmi"; > clocks = <&tegra_car TEGRA124_CLK_USB2>, > <&tegra_car TEGRA124_CLK_PLL_U>, > <&tegra_car TEGRA124_CLK_USBD>; > clock-names = "reg", "pll_u", "utmi-pads"; > - resets = <&tegra_car 22>, <&tegra_car 22>; > + resets = <&tegra_car 58>, <&tegra_car 22>; > reset-names = "usb", "utmi-pads"; > nvidia,hssync-start-delay = <0>; > nvidia,idle-wait-delay = <17>; > nvidia,elastic-limit = <16>; > nvidia,term-range-adj = <6>; > nvidia,xcvr-setup = <9>; > nvidia,xcvr-lsfslew = <0>; > nvidia,xcvr-lsrslew = <3>; > nvidia,hssquelch-level = <2>; > nvidia,hsdiscon-level = <5>; > nvidia,xcvr-hsslew = <12>; > - nvidia,has-utmi-pad-registers; > status = "disabled"; > }; > > usb@0,7d008000 { > compatible = "nvidia,tegra124-ehci", "nvidia,tegra30-ehci", "usb-ehci"; > reg = <0x0 0x7d008000 0x0 0x4000>; > interrupts = ; > phy_type = "utmi"; > clocks = <&tegra_car TEGRA124_CLK_USB3>; > resets = <&tegra_car 59>; > reset-names = "usb"; > nvidia,phy = <&phy3>; > status = "disabled"; > }; > > phy3: usb-phy@0,7d008000 { > compatible = "nvidia,tegra124-usb-phy", "nvidia,tegra30-usb-phy"; > reg = <0x0 0x7d008000 0x0 0x4000>, > <0x0 0x7d000000 0x0 0x4000>; > phy_type = "utmi"; > clocks = <&tegra_car TEGRA124_CLK_USB3>, > <&tegra_car TEGRA124_CLK_PLL_U>, > <&tegra_car TEGRA124_CLK_USBD>; > clock-names = "reg", "pll_u", "utmi-pads"; > - resets = <&tegra_car 58>, <&tegra_car 22>; > + resets = <&tegra_car 59>, <&tegra_car 22>; > reset-names = "usb", "utmi-pads"; > nvidia,hssync-start-delay = <0>; > nvidia,idle-wait-delay = <17>; > nvidia,elastic-limit = <16>; > nvidia,term-range-adj = <6>; > nvidia,xcvr-setup = <9>; > nvidia,xcvr-lsfslew = <0>; > nvidia,xcvr-lsrslew = <3>; > nvidia,hssquelch-level = <2>; > nvidia,hsdiscon-level = <5>; > nvidia,xcvr-hsslew = <12>; > status = "disabled"; > }; > > cpus { > #address-cells = <1>; > #size-cells = <0>; > > cpu@0 { > device_type = "cpu"; >