ARM: tegra: Enable XUSB on Nyan
authorThierry Reding <treding@nvidia.com>
Thu, 4 Feb 2016 15:54:18 +0000 (16:54 +0100)
committerThierry Reding <treding@nvidia.com>
Fri, 29 Apr 2016 14:49:56 +0000 (16:49 +0200)
Add XUSB pad controller and XUSB controller device tree nodes and enable
them with a configuration for the Nyan boards.

Signed-off-by: Thierry Reding <treding@nvidia.com>
arch/arm/boot/dts/tegra124-nyan.dtsi

index ec1aa64ded681a1a4f834343b3fc45d0c4946819..4b978aaa50cfd83d20c8febc14d6005f7375a55d 100644 (file)
                                        regulator-always-on;
                                };
 
-                               ldo0 {
+                               avdd_1v05_run: ldo0 {
                                        regulator-name = "+1.05V_RUN_AVDD";
                                        regulator-min-microvolt = <1050000>;
                                        regulator-max-microvolt = <1050000>;
                status = "okay";
        };
 
+       usb@0,70090000 {
+               phys = <&{/padctl@0,7009f000/pads/usb2/lanes/usb2-0}>, /* 1st USB A */
+                      <&{/padctl@0,7009f000/pads/usb2/lanes/usb2-1}>, /* Internal USB */
+                      <&{/padctl@0,7009f000/pads/usb2/lanes/usb2-2}>, /* 2nd USB A */
+                      <&{/padctl@0,7009f000/pads/pcie/lanes/pcie-0}>, /* 1st USB A */
+                      <&{/padctl@0,7009f000/pads/pcie/lanes/pcie-1}>; /* 2nd USB A */
+               phy-names = "usb2-0", "usb2-1", "usb2-2", "usb3-0", "usb3-1";
+
+               avddio-pex-supply = <&vdd_1v05_run>;
+               dvddio-pex-supply = <&vdd_1v05_run>;
+               avdd-usb-supply = <&vdd_3v3_lp0>;
+               avdd-pll-utmip-supply = <&vddio_1v8>;
+               avdd-pll-erefe-supply = <&avdd_1v05_run>;
+               avdd-usb-ss-pll-supply = <&vdd_1v05_run>;
+               hvdd-usb-ss-supply = <&vdd_3v3_lp0>;
+               hvdd-usb-ss-pll-e-supply = <&vdd_3v3_lp0>;
+
+               status = "okay";
+       };
+
+       padctl@0,7009f000 {
+               status = "okay";
+
+               pads {
+                       usb2 {
+                               status = "okay";
+
+                               lanes {
+                                       usb2-0 {
+                                               nvidia,function = "xusb";
+                                               status = "okay";
+                                       };
+
+                                       usb2-1 {
+                                               nvidia,function = "xusb";
+                                               status = "okay";
+                                       };
+
+                                       usb2-2 {
+                                               nvidia,function = "xusb";
+                                               status = "okay";
+                                       };
+                               };
+                       };
+
+                       pcie {
+                               status = "okay";
+
+                               lanes {
+                                       pcie-0 {
+                                               nvidia,function = "usb3-ss";
+                                               status = "okay";
+                                       };
+
+                                       pcie-1 {
+                                               nvidia,function = "usb3-ss";
+                                               status = "okay";
+                                       };
+                               };
+                       };
+               };
+
+               ports {
+                       usb2-0 {
+                               vbus-supply = <&vdd_usb1_vbus>;
+                               status = "okay";
+                               mode = "otg";
+                       };
+
+                       usb2-1 {
+                               vbus-supply = <&vdd_run_cam>;
+                               status = "okay";
+                               mode = "host";
+                       };
+
+                       usb2-2 {
+                               vbus-supply = <&vdd_usb3_vbus>;
+                               status = "okay";
+                               mode = "host";
+                       };
+
+                       usb3-0 {
+                               nvidia,usb2-companion = <0>;
+                               status = "okay";
+                       };
+
+                       usb3-1 {
+                               nvidia,usb2-companion = <1>;
+                               status = "okay";
+                       };
+               };
+       };
+
        sdhci0_pwrseq: sdhci0_pwrseq {
                compatible = "mmc-pwrseq-simple";
 
                };
        };
 
-       usb@0,7d000000 { /* Rear external USB port. */
-               status = "okay";
-       };
-
-       usb-phy@0,7d000000 {
-               status = "okay";
-               vbus-supply = <&vdd_usb1_vbus>;
-       };
-
-       usb@0,7d004000 { /* Internal webcam. */
-               status = "okay";
-       };
-
-       usb-phy@0,7d004000 {
-               status = "okay";
-               vbus-supply = <&vdd_run_cam>;
-       };
-
-       usb@0,7d008000 { /* Left external USB port. */
-               status = "okay";
-       };
-
-       usb-phy@0,7d008000 {
-               status = "okay";
-               vbus-supply = <&vdd_usb3_vbus>;
-       };
-
        backlight: backlight {
                compatible = "pwm-backlight";