status = "okay";
        };
 
+       usb-phy@c5000000 {
+               status = "okay";
+       };
+
        usb@c5004000 {
                status = "okay";
                nvidia,phy-reset-gpio = <&gpio 169 1>; /* gpio PV1, active low */
        };
 
        usb-phy@c5004000 {
+               status = "okay";
                nvidia,phy-reset-gpio = <&gpio 169 1>; /* gpio PV1, active low */
        };
 
                status = "okay";
        };
 
+       usb-phy@c5008000 {
+               status = "okay";
+       };
+
        sdhci@c8000200 {
                status = "okay";
                cd-gpios = <&gpio 69 1>; /* gpio PI5 */
 
 
        usb@c5000000 {
                status = "okay";
-               dr_mode = "otg";
+       };
+
+       usb-phy@c5000000 {
+               status = "okay";
        };
 
        usb@c5008000 {
                status = "okay";
        };
 
+       usb-phy@c5008000 {
+               status = "okay";
+       };
+
        serial@70006000 {
                status = "okay";
        };
 
                status = "okay";
        };
 
+       usb-phy@c5000000 {
+               status = "okay";
+       };
+
        usb@c5004000 {
                status = "okay";
                nvidia,phy-reset-gpio = <&gpio 168 1>; /* gpio PV0, active low */
        };
 
        usb-phy@c5004000 {
+               status = "okay";
                nvidia,phy-reset-gpio = <&gpio 168 1>; /* gpio PV0, active low */
        };
 
                status = "okay";
        };
 
+       usb-phy@c5008000 {
+               status = "okay";
+       };
+
        sdhci@c8000000 {
                status = "okay";
                cd-gpios = <&gpio 173 1>; /* gpio PV5 */
 
                dr_mode = "otg";
        };
 
+       usb-phy@c5000000 {
+               status = "okay";
+               vbus-supply = <&vbus_reg>;
+               dr_mode = "otg";
+       };
+
        usb@c5004000 {
                status = "okay";
                nvidia,phy-reset-gpio = <&gpio 169 1>; /* gpio PV1, active low */
        };
 
        usb-phy@c5004000 {
+               status = "okay";
                nvidia,phy-reset-gpio = <&gpio 169 1>; /* gpio PV1, active low */
        };
 
                status = "okay";
        };
 
+       usb-phy@c5008000 {
+               status = "okay";
+       };
+
        sdhci@c8000000 {
                status = "okay";
                power-gpios = <&gpio 86 0>; /* gpio PK6 */
                        gpio = <&pmic 1 0>;
                        enable-active-high;
                };
+
+               vbus_reg: regulator@3 {
+                       compatible = "regulator-fixed";
+                       reg = <3>;
+                       regulator-name = "vdd_vbus_wup1";
+                       regulator-min-microvolt = <5000000>;
+                       regulator-max-microvolt = <5000000>;
+                       gpio = <&gpio 24 0>; /* PD0 */
+               };
        };
 
        sound {
 
                status = "okay";
        };
 
+       usb-phy@c5008000 {
+               status = "okay";
+       };
+
        sdhci@c8000600 {
                cd-gpios = <&gpio 58 1>; /* gpio PH2 */
                wp-gpios = <&gpio 59 0>; /* gpio PH3 */
 
                nvidia,vbus-gpio = <&gpio 170 0>; /* gpio PV2 */
        };
 
+       usb-phy@c5000000 {
+               status = "okay";
+               vbus-supply = <&vbus_reg>;
+       };
+
        usb@c5004000 {
                status = "okay";
                nvidia,phy-reset-gpio = <&gpio 168 1>; /* gpio PV0, active low */
        };
 
        usb-phy@c5004000 {
+               status = "okay";
                nvidia,phy-reset-gpio = <&gpio 168 1>; /* gpio PV0, active low */
        };
 
                status = "okay";
        };
 
+       usb-phy@c5008000 {
+               status = "okay";
+       };
+
        sdhci@c8000000 {
                status = "okay";
                bus-width = <4>;
                        regulator-max-microvolt = <1800000>;
                        regulator-always-on;
                };
+
+               vbus_reg: regulator@2 {
+                       compatible = "regulator-fixed";
+                       reg = <2>;
+                       regulator-name = "usb1_vbus";
+                       regulator-min-microvolt = <5000000>;
+                       regulator-max-microvolt = <5000000>;
+                       gpio = <&gpio 170 0>; /* PV2 */
+               };
        };
 
        sound {
 
                status = "okay";
        };
 
+       usb-phy@c5000000 {
+               status = "okay";
+       };
+
        usb@c5004000 {
                status = "okay";
                nvidia,phy-reset-gpio = <&gpio 169 1>; /* gpio PV1, active low */
        };
 
        usb-phy@c5004000 {
+               status = "okay";
                nvidia,phy-reset-gpio = <&gpio 169 1>; /* gpio PV1, active low */
        };
 
                status = "okay";
        };
 
+       usb-phy@c5008000 {
+               status = "okay";
+       };
+
        sdhci@c8000000 {
                status = "okay";
                power-gpios = <&gpio 86 0>; /* gpio PK6 */
 
                nvidia,vbus-gpio = <&tca6416 0 0>; /* GPIO_PMU0 */
        };
 
+       usb-phy@c5000000 {
+               status = "okay";
+               vbus-supply = <&vbus1_reg>;
+       };
+
        usb@c5008000 {
                status = "okay";
                nvidia,vbus-gpio = <&tca6416 1 0>; /* GPIO_PMU1 */
        };
 
+       usb-phy@c5008000 {
+               status = "okay";
+               vbus-supply = <&vbus3_reg>;
+       };
+
        sdhci@c8000400 {
                status = "okay";
                cd-gpios = <&gpio 69 1>; /* gpio PI5 */
                        regulator-max-microvolt = <5000000>;
                        regulator-always-on;
                };
+
+               vbus1_reg: regulator@2 {
+                       compatible = "regulator-fixed";
+                       reg = <2>;
+                       regulator-name = "vbus1";
+                       regulator-min-microvolt = <5000000>;
+                       regulator-max-microvolt = <5000000>;
+                       gpio = <&tca6416 0 0>; /* GPIO_PMU0 */
+               };
+
+               vbus3_reg: regulator@3 {
+                       compatible = "regulator-fixed";
+                       reg = <3>;
+                       regulator-name = "vbus3";
+                       regulator-min-microvolt = <5000000>;
+                       regulator-max-microvolt = <5000000>;
+                       gpio = <&tca6416 1 0>; /* GPIO_PMU1 */
+               };
        };
 
        sound {
 
                status = "disabled";
        };
 
-       phy1: usb-phy@c5000400 {
+       phy1: usb-phy@c5000000 {
                compatible = "nvidia,tegra20-usb-phy";
-               reg = <0xc5000400 0x3c00>;
+               reg = <0xc5000000 0x4000 0xc5000000 0x4000>;
                phy_type = "utmi";
+               clocks = <&tegra_car 22>,
+                        <&tegra_car 127>,
+                        <&tegra_car 106>,
+                        <&tegra_car 22>;
+               clock-names = "reg", "pll_u", "timer", "utmi-pads";
                nvidia,has-legacy-mode;
-               clocks = <&tegra_car 22>, <&tegra_car 127>;
-               clock-names = "phy", "pll_u";
+               hssync_start_delay = <9>;
+               idle_wait_delay = <17>;
+               elastic_limit = <16>;
+               term_range_adj = <6>;
+               xcvr_setup = <9>;
+               xcvr_lsfslew = <1>;
+               xcvr_lsrslew = <1>;
+               status = "disabled";
        };
 
        usb@c5004000 {
                status = "disabled";
        };
 
-       phy2: usb-phy@c5004400 {
+       phy2: usb-phy@c5004000 {
                compatible = "nvidia,tegra20-usb-phy";
-               reg = <0xc5004400 0x3c00>;
+               reg = <0xc5004000 0x4000>;
                phy_type = "ulpi";
-               clocks = <&tegra_car 93>, <&tegra_car 127>;
-               clock-names = "phy", "pll_u";
+               clocks = <&tegra_car 58>,
+                        <&tegra_car 127>,
+                        <&tegra_car 93>;
+               clock-names = "reg", "pll_u", "ulpi-link";
+               status = "disabled";
        };
 
        usb@c5008000 {
                status = "disabled";
        };
 
-       phy3: usb-phy@c5008400 {
+       phy3: usb-phy@c5008000 {
                compatible = "nvidia,tegra20-usb-phy";
-               reg = <0xc5008400 0x3c00>;
+               reg = <0xc5008000 0x4000 0xc5000000 0x4000>;
                phy_type = "utmi";
-               clocks = <&tegra_car 22>, <&tegra_car 127>;
-               clock-names = "phy", "pll_u";
+               clocks = <&tegra_car 59>,
+                        <&tegra_car 127>,
+                        <&tegra_car 106>,
+                        <&tegra_car 22>;
+               clock-names = "reg", "pll_u", "timer", "utmi-pads";
+               hssync_start_delay = <9>;
+               idle_wait_delay = <17>;
+               elastic_limit = <16>;
+               term_range_adj = <6>;
+               xcvr_setup = <9>;
+               xcvr_lsfslew = <2>;
+               xcvr_lsrslew = <2>;
+               status = "disabled";
        };
 
        sdhci@c8000000 {