* [RFC 0/2] Enable USB support for Venice2
@ 2014-02-25 21:35 Thierry Reding
[not found] ` <1393364160-28253-1-git-send-email-thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
0 siblings, 1 reply; 4+ messages in thread
From: Thierry Reding @ 2014-02-25 21:35 UTC (permalink / raw)
To: Stephen Warren; +Cc: linux-tegra-u79uwXL29TY76Z2rM5mHXA
From: Thierry Reding <treding-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
Hi,
These two patches add the USB controllers to Tegra124 and enable them on
Venice2, wiring them up with the corresponding regulators.
Unfortunately the USB1 VBUS regulator seems to be causing problems once
enabled, causing none of the USB ports to work properly. Commenting out
the gpio property for that regulator fixes things for me and I can use
the webcam connected to USB2 as well as any of the peripherals on USB3.
Since GPIO N.04 isn't connected to anything else, I don't understand how
it could possibly influence any of the other USB busses. I wonder if
perhaps this is caused by defect hardware, so it would be good if
somebody could test this on a different Venice2.
Thierry
Thierry Reding (2):
ARM: tegra: Add Tegra124 USB support
ARM: tegra: Enable USB on Venice2
arch/arm/boot/dts/tegra124-venice2.dts | 29 +++++++++-
arch/arm/boot/dts/tegra124.dtsi | 99 ++++++++++++++++++++++++++++++++++
2 files changed, 127 insertions(+), 1 deletion(-)
--
1.8.4.2
^ permalink raw reply [flat|nested] 4+ messages in thread
* [RFC 1/2] ARM: tegra: Add Tegra124 USB support
[not found] ` <1393364160-28253-1-git-send-email-thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
@ 2014-02-25 21:35 ` Thierry Reding
2014-02-25 21:36 ` [RFC 2/2] ARM: tegra: Enable USB on Venice2 Thierry Reding
2014-02-25 22:23 ` [RFC 0/2] Enable USB support for Venice2 Stephen Warren
2 siblings, 0 replies; 4+ messages in thread
From: Thierry Reding @ 2014-02-25 21:35 UTC (permalink / raw)
To: Stephen Warren; +Cc: linux-tegra-u79uwXL29TY76Z2rM5mHXA
From: Thierry Reding <treding-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
The USB controllers on Tegra124 are backwards-compatible with those
found on Tegra30.
Signed-off-by: Thierry Reding <treding-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
---
arch/arm/boot/dts/tegra124.dtsi | 99 +++++++++++++++++++++++++++++++++++++++++
1 file changed, 99 insertions(+)
diff --git a/arch/arm/boot/dts/tegra124.dtsi b/arch/arm/boot/dts/tegra124.dtsi
index 30a7377d5600..d81a05a07d0b 100644
--- a/arch/arm/boot/dts/tegra124.dtsi
+++ b/arch/arm/boot/dts/tegra124.dtsi
@@ -524,6 +524,105 @@
};
};
+ usb@7d000000 {
+ compatible = "nvidia,tegra30-ehci", "usb-ehci";
+ reg = <0x7d000000 0x4000>;
+ interrupts = <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>;
+ phy_type = "utmi";
+ clocks = <&tegra_car TEGRA124_CLK_USBD>;
+ resets = <&tegra_car 22>;
+ reset-names = "usb";
+ nvidia,phy = <&phy1>;
+ status = "disabled";
+ };
+
+ phy1: usb-phy@7d000000 {
+ compatible = "nvidia,tegra30-usb-phy";
+ reg = <0x7d000000 0x4000 0x7d000000 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";
+ 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";
+ };
+
+ usb@7d004000 {
+ compatible = "nvidia,tegra30-ehci", "usb-ehci";
+ reg = <0x7d004000 0x4000>;
+ interrupts = <GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>;
+ phy_type = "utmi";
+ clocks = <&tegra_car TEGRA124_CLK_USB2>;
+ resets = <&tegra_car 58>;
+ reset-names = "usb";
+ nvidia,phy = <&phy2>;
+ status = "disabled";
+ };
+
+ phy2: usb-phy@7d004000 {
+ compatible = "nvidia,tegra30-usb-phy";
+ reg = <0x7d004000 0x4000 0x7d000000 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";
+ 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";
+ };
+
+ usb@7d008000 {
+ compatible = "nvidia,tegra30-ehci", "usb-ehci";
+ reg = <0x7d008000 0x4000>;
+ interrupts = <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>;
+ phy_type = "utmi";
+ clocks = <&tegra_car TEGRA124_CLK_USB3>;
+ resets = <&tegra_car 59>;
+ reset-names = "usb";
+ nvidia,phy = <&phy3>;
+ status = "disabled";
+ };
+
+ phy3: usb-phy@7d008000 {
+ compatible = "nvidia,tegra30-usb-phy";
+ reg = <0x7d008000 0x4000 0x7d000000 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";
+ 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>;
--
1.8.4.2
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [RFC 2/2] ARM: tegra: Enable USB on Venice2
[not found] ` <1393364160-28253-1-git-send-email-thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2014-02-25 21:35 ` [RFC 1/2] ARM: tegra: Add Tegra124 USB support Thierry Reding
@ 2014-02-25 21:36 ` Thierry Reding
2014-02-25 22:23 ` [RFC 0/2] Enable USB support for Venice2 Stephen Warren
2 siblings, 0 replies; 4+ messages in thread
From: Thierry Reding @ 2014-02-25 21:36 UTC (permalink / raw)
To: Stephen Warren; +Cc: linux-tegra-u79uwXL29TY76Z2rM5mHXA
From: Thierry Reding <treding-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
USB1 and USB3 are routed to two external connectors, while USB2 is used
for the integrated webcam.
Signed-off-by: Thierry Reding <treding-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
---
arch/arm/boot/dts/tegra124-venice2.dts | 29 ++++++++++++++++++++++++++++-
1 file changed, 28 insertions(+), 1 deletion(-)
diff --git a/arch/arm/boot/dts/tegra124-venice2.dts b/arch/arm/boot/dts/tegra124-venice2.dts
index ed2cbf5b5999..6c146c685d7b 100644
--- a/arch/arm/boot/dts/tegra124-venice2.dts
+++ b/arch/arm/boot/dts/tegra124-venice2.dts
@@ -751,7 +751,7 @@
ams,enable-tracking;
};
- ldo4 {
+ vdd_run_cam: ldo4 {
regulator-name = "+3.3V_RUN_CAM";
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <2800000>;
@@ -943,6 +943,33 @@
};
};
+ usb@7d000000 {
+ status = "okay";
+ };
+
+ usb-phy@7d000000 {
+ status = "okay";
+ vbus-supply = <&vdd_usb1_vbus>;
+ };
+
+ usb@7d004000 {
+ status = "okay";
+ };
+
+ usb-phy@7d004000 {
+ status = "okay";
+ vbus-supply = <&vdd_run_cam>;
+ };
+
+ usb@7d008000 {
+ status = "okay";
+ };
+
+ usb-phy@7d008000 {
+ status = "okay";
+ vbus-supply = <&vdd_usb3_vbus>;
+ };
+
clocks {
compatible = "simple-bus";
#address-cells = <1>;
--
1.8.4.2
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [RFC 0/2] Enable USB support for Venice2
[not found] ` <1393364160-28253-1-git-send-email-thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2014-02-25 21:35 ` [RFC 1/2] ARM: tegra: Add Tegra124 USB support Thierry Reding
2014-02-25 21:36 ` [RFC 2/2] ARM: tegra: Enable USB on Venice2 Thierry Reding
@ 2014-02-25 22:23 ` Stephen Warren
2 siblings, 0 replies; 4+ messages in thread
From: Stephen Warren @ 2014-02-25 22:23 UTC (permalink / raw)
To: Thierry Reding; +Cc: linux-tegra-u79uwXL29TY76Z2rM5mHXA
On 02/25/2014 02:35 PM, Thierry Reding wrote:
> From: Thierry Reding <treding-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
>
> Hi,
>
> These two patches add the USB controllers to Tegra124 and enable them on
> Venice2, wiring them up with the corresponding regulators.
>
> Unfortunately the USB1 VBUS regulator seems to be causing problems once
> enabled, causing none of the USB ports to work properly. Commenting out
> the gpio property for that regulator fixes things for me and I can use
> the webcam connected to USB2 as well as any of the peripherals on USB3.
>
> Since GPIO N.04 isn't connected to anything else, I don't understand how
> it could possibly influence any of the other USB busses. I wonder if
> perhaps this is caused by defect hardware, so it would be good if
> somebody could test this on a different Venice2.
I see the same behaviour as you.
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2014-02-25 22:23 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-02-25 21:35 [RFC 0/2] Enable USB support for Venice2 Thierry Reding
[not found] ` <1393364160-28253-1-git-send-email-thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2014-02-25 21:35 ` [RFC 1/2] ARM: tegra: Add Tegra124 USB support Thierry Reding
2014-02-25 21:36 ` [RFC 2/2] ARM: tegra: Enable USB on Venice2 Thierry Reding
2014-02-25 22:23 ` [RFC 0/2] Enable USB support for Venice2 Stephen Warren
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).