Re: [PATCH v3] ARM: tegra: Correct which USB controller has the UTMI pad registers

2015-04-28 Thread Jon Hunter

On 04/03/2015 08: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 :)

FWIW, this works for me.

Tested-by: Jon Hunter 

Cheers
Jon
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH v3] ARM: tegra: Correct which USB controller has the UTMI pad registers

2015-04-03 Thread Mikko Perttunen

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 0x7d00 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,7d00 {
compatible = "nvidia,tegra124-usb-phy", 
"nvidia,tegra30-usb-phy";
reg = <0x0 0x7d00 0x0 0x4000>,
  <0x0 0x7d00 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 0x7d00 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>,

[PATCH v3] ARM: tegra: Correct which USB controller has the UTMI pad registers

2015-04-03 Thread Tomeu Vizoso
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 :)

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 0x7d00 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,7d00 {
compatible = "nvidia,tegra124-usb-phy", 
"nvidia,tegra30-usb-phy";
reg = <0x0 0x7d00 0x0 0x4000>,
  <0x0 0x7d00 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 0x7d00 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 0x7d00 0x0 0x4000>;
phy_type = "utmi";