From: Shaikh Mohammed Suhan <[email protected]>

Add fixed supply regulators for the onboard USB hub (USB2744) used on
Kria platforms.

The USB hub requires two always-on power rails:
- vdd:  3.3V main supply
- vdd2: auxiliary supply

Model these rails as fixed regulators and reference them from the hub
node to accurately describe the hardware.

Signed-off-by: Shaikh Mohammed Suhan <[email protected]>
Reviewed-by: Radhey Shyam Pandey <[email protected]>
Signed-off-by: Michal Simek <[email protected]>
---

 arch/arm/dts/zynqmp-sck-kd-g-revA.dtso | 20 ++++++++++++++++++++
 arch/arm/dts/zynqmp-sck-kr-g-revA.dtso | 22 ++++++++++++++++++++++
 arch/arm/dts/zynqmp-sck-kr-g-revB.dtso | 22 ++++++++++++++++++++++
 arch/arm/dts/zynqmp-sck-kv-g-revA.dtso | 20 ++++++++++++++++++++
 arch/arm/dts/zynqmp-sck-kv-g-revB.dtso | 20 ++++++++++++++++++++
 5 files changed, 104 insertions(+)

diff --git a/arch/arm/dts/zynqmp-sck-kd-g-revA.dtso 
b/arch/arm/dts/zynqmp-sck-kd-g-revA.dtso
index 021bf8ac26e6..02b9d82eb7c7 100644
--- a/arch/arm/dts/zynqmp-sck-kd-g-revA.dtso
+++ b/arch/arm/dts/zynqmp-sck-kd-g-revA.dtso
@@ -50,6 +50,24 @@
                gpio-controller;
                gpios = <&slg7xl45106 3 GPIO_ACTIVE_LOW>;
        };
+
+       vdd_usb_hub: regulator-vdd-usb-hub {
+               compatible = "regulator-fixed";
+               regulator-name = "vdd_usb_hub";
+               regulator-min-microvolt = <3300000>;
+               regulator-max-microvolt = <3300000>;
+               regulator-always-on;
+               regulator-boot-on;
+       };
+
+       vdd2_usb_hub: regulator-vdd2-usb-hub {
+               compatible = "regulator-fixed";
+               regulator-name = "vdd2_usb_hub";
+               regulator-min-microvolt = <1200000>;
+               regulator-max-microvolt = <1200000>;
+               regulator-always-on;
+               regulator-boot-on;
+       };
 };
 
 &can0 {
@@ -124,6 +142,8 @@
                peer-hub = <&hub_3_0>;
                i2c-bus = <&hub>;
                reset-gpios = <&slg_delay 0 10000 10000>;
+               vdd-supply = <&vdd_usb_hub>;
+               vdd2-supply = <&vdd2_usb_hub>;
        };
 
        /* 3.0 hub on port 2 */
diff --git a/arch/arm/dts/zynqmp-sck-kr-g-revA.dtso 
b/arch/arm/dts/zynqmp-sck-kr-g-revA.dtso
index 048aeb1e7654..47f0fb5f74f1 100644
--- a/arch/arm/dts/zynqmp-sck-kr-g-revA.dtso
+++ b/arch/arm/dts/zynqmp-sck-kr-g-revA.dtso
@@ -85,6 +85,24 @@
                gpios = <&slg7xl45106 3 GPIO_ACTIVE_LOW>,
                        <&slg7xl45106 4 GPIO_ACTIVE_LOW>;
        };
+
+       vdd_usb_hub: regulator-vdd-usb-hub {
+               compatible = "regulator-fixed";
+               regulator-name = "vdd_usb_hub";
+               regulator-min-microvolt = <3300000>;
+               regulator-max-microvolt = <3300000>;
+               regulator-always-on;
+               regulator-boot-on;
+       };
+
+       vdd2_usb_hub: regulator-vdd2-usb-hub {
+               compatible = "regulator-fixed";
+               regulator-name = "vdd2_usb_hub";
+               regulator-min-microvolt = <1200000>;
+               regulator-max-microvolt = <1200000>;
+               regulator-always-on;
+               regulator-boot-on;
+       };
 };
 
 &i2c1 { /* I2C_SCK C26/C27 - MIO from SOM */
@@ -196,6 +214,8 @@
                peer-hub = <&hub_3_0>;
                i2c-bus = <&hub_1>;
                reset-gpios = <&slg_delay 0 10000 10000>;
+               vdd-supply = <&vdd_usb_hub>;
+               vdd2-supply = <&vdd2_usb_hub>;
        };
 
        /* 3.0 hub on port 2 */
@@ -233,6 +253,8 @@
                peer-hub = <&hub1_3_0>;
                i2c-bus = <&hub_2>;
                reset-gpios = <&slg_delay 1 10000 10000>;
+               vdd-supply = <&vdd_usb_hub>;
+               vdd2-supply = <&vdd2_usb_hub>;
        };
 
        /* 3.0 hub on port 2 */
diff --git a/arch/arm/dts/zynqmp-sck-kr-g-revB.dtso 
b/arch/arm/dts/zynqmp-sck-kr-g-revB.dtso
index 2eef6ba7df75..b3c75f67bbd6 100644
--- a/arch/arm/dts/zynqmp-sck-kr-g-revB.dtso
+++ b/arch/arm/dts/zynqmp-sck-kr-g-revB.dtso
@@ -86,6 +86,24 @@
                gpios = <&slg7xl45106 3 GPIO_ACTIVE_LOW>,
                        <&slg7xl45106 4 GPIO_ACTIVE_LOW>;
        };
+
+       vdd_usb_hub: regulator-vdd-usb-hub {
+               compatible = "regulator-fixed";
+               regulator-name = "vdd_usb_hub";
+               regulator-min-microvolt = <3300000>;
+               regulator-max-microvolt = <3300000>;
+               regulator-always-on;
+               regulator-boot-on;
+       };
+
+       vdd2_usb_hub: regulator-vdd2-usb-hub {
+               compatible = "regulator-fixed";
+               regulator-name = "vdd2_usb_hub";
+               regulator-min-microvolt = <1200000>;
+               regulator-max-microvolt = <1200000>;
+               regulator-always-on;
+               regulator-boot-on;
+       };
 };
 
 &i2c1 { /* I2C_SCK C26/C27 - MIO from SOM */
@@ -197,6 +215,8 @@
                peer-hub = <&hub_3_0>;
                i2c-bus = <&hub_1>;
                reset-gpios = <&slg_delay 0 10000 10000>;
+               vdd-supply = <&vdd_usb_hub>;
+               vdd2-supply = <&vdd2_usb_hub>;
        };
 
        /* 3.0 hub on port 2 */
@@ -234,6 +254,8 @@
                peer-hub = <&hub1_3_0>;
                i2c-bus = <&hub_2>;
                reset-gpios = <&slg_delay 1 10000 10000>;
+               vdd-supply = <&vdd_usb_hub>;
+               vdd2-supply = <&vdd2_usb_hub>;
        };
 
        /* 3.0 hub on port 2 */
diff --git a/arch/arm/dts/zynqmp-sck-kv-g-revA.dtso 
b/arch/arm/dts/zynqmp-sck-kv-g-revA.dtso
index ea947cd2dc02..3c551f303150 100644
--- a/arch/arm/dts/zynqmp-sck-kv-g-revA.dtso
+++ b/arch/arm/dts/zynqmp-sck-kv-g-revA.dtso
@@ -85,6 +85,24 @@
                gpio-controller;
                gpios = <&gpio 44 GPIO_ACTIVE_LOW>;
        };
+
+       vdd_usb_hub: regulator-vdd-usb-hub {
+               compatible = "regulator-fixed";
+               regulator-name = "vdd_usb_hub";
+               regulator-min-microvolt = <3300000>;
+               regulator-max-microvolt = <3300000>;
+               regulator-always-on;
+               regulator-boot-on;
+       };
+
+       vdd2_usb_hub: regulator-vdd2-usb-hub {
+               compatible = "regulator-fixed";
+               regulator-name = "vdd2_usb_hub";
+               regulator-min-microvolt = <1200000>;
+               regulator-max-microvolt = <1200000>;
+               regulator-always-on;
+               regulator-boot-on;
+       };
 };
 
 &i2c1 { /* I2C_SCK C23/C24 - MIO from SOM */
@@ -169,6 +187,8 @@
                reg = <1>;
                peer-hub = <&hub_3_0>;
                reset-gpios = <&slg_delay 0 10000 10000>;
+               vdd-supply = <&vdd_usb_hub>;
+               vdd2-supply = <&vdd2_usb_hub>;
        };
 
        /* 3.0 hub on port 2 */
diff --git a/arch/arm/dts/zynqmp-sck-kv-g-revB.dtso 
b/arch/arm/dts/zynqmp-sck-kv-g-revB.dtso
index ea7b9253468e..a60bd7b7bdb2 100644
--- a/arch/arm/dts/zynqmp-sck-kv-g-revB.dtso
+++ b/arch/arm/dts/zynqmp-sck-kv-g-revB.dtso
@@ -81,6 +81,24 @@
                gpio-controller;
                gpios = <&gpio 44 GPIO_ACTIVE_LOW>;
        };
+
+       vdd_usb_hub: regulator-vdd-usb-hub {
+               compatible = "regulator-fixed";
+               regulator-name = "vdd_usb_hub";
+               regulator-min-microvolt = <3300000>;
+               regulator-max-microvolt = <3300000>;
+               regulator-always-on;
+               regulator-boot-on;
+       };
+
+       vdd2_usb_hub: regulator-vdd2-usb-hub {
+               compatible = "regulator-fixed";
+               regulator-name = "vdd2_usb_hub";
+               regulator-min-microvolt = <1200000>;
+               regulator-max-microvolt = <1200000>;
+               regulator-always-on;
+               regulator-boot-on;
+       };
 };
 
 &i2c1 { /* I2C_SCK C23/C24 - MIO from SOM */
@@ -156,6 +174,8 @@
                peer-hub = <&hub_3_0>;
                i2c-bus = <&hub>;
                reset-gpios = <&slg_delay 0 10000 10000>;
+               vdd-supply = <&vdd_usb_hub>;
+               vdd2-supply = <&vdd2_usb_hub>;
        };
 
        /* 3.0 hub on port 2 */
-- 
2.43.0

Reply via email to