]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
arm64: dts: imx8mm-verdin: extend pmic voltages
authorPhilippe Schenker <philippe.schenker@toradex.com>
Thu, 1 Sep 2022 10:01:51 +0000 (12:01 +0200)
committerShawn Guo <shawnguo@kernel.org>
Tue, 6 Sep 2022 02:05:18 +0000 (10:05 +0800)
Currently, we limited the voltages from the PMIC very strictly. This
causes an issue with one Toradex SKU that uses a consumer-grade chip
that is capable of going up to 1.8GHz at 1.00V.

Extend the ranges to min/max values of the SoC operating ranges (table
10) in the datasheet. Detailed explanation as follows:

BUCK2:
  - As already described above, the SKU with the consumer-grade chip
    needs a voltage of at least 1.00V. 1.05V is chosen now as this is
    listed as the maximum. Both industrial and consumer-grade chips have
    an absolute maximum rating of 1.15V which makes it still safe to put
    1.05V
  - Lower the regulator-min value to the smallest value allowed from the
    Quad-A53, 1.2GHz version of the SoC

BUCK3:
  - This regulator is used for SoC input voltages VDD_GPU, VDD_VPU and
    VDD_DRAM.
  - Use the smallest value of these three inputs as the regulator-min
  - Use the largest value of these three inputs as the regulator-max

LDO2:
  - This LDO is used for VDD_SNVS_0P8 SoC input voltage. As this has a
    single nominal input voltage just put this in the middle of 0.8V.

Fixes: 6a57f224f734 ("arm64: dts: freescale: add initial support for verdin imx8m mini")
Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
arch/arm64/boot/dts/freescale/imx8mm-verdin.dtsi

index b379c461aa13c35c2e4db081f00ae431037b03fd..3ec0c9ac3170588839adcb66d9cbc22777b4b6f5 100644 (file)
                                nxp,dvs-standby-voltage = <850000>;
                                regulator-always-on;
                                regulator-boot-on;
-                               regulator-max-microvolt = <950000>;
-                               regulator-min-microvolt = <850000>;
+                               regulator-max-microvolt = <1050000>;
+                               regulator-min-microvolt = <805000>;
                                regulator-name = "On-module +VDD_ARM (BUCK2)";
                                regulator-ramp-delay = <3125>;
                        };
                        reg_vdd_dram: BUCK3 {
                                regulator-always-on;
                                regulator-boot-on;
-                               regulator-max-microvolt = <950000>;
-                               regulator-min-microvolt = <850000>;
+                               regulator-max-microvolt = <1000000>;
+                               regulator-min-microvolt = <805000>;
                                regulator-name = "On-module +VDD_GPU_VPU_DDR (BUCK3)";
                        };
 
                        reg_vdd_snvs: LDO2 {
                                regulator-always-on;
                                regulator-boot-on;
-                               regulator-max-microvolt = <900000>;
+                               regulator-max-microvolt = <800000>;
                                regulator-min-microvolt = <800000>;
                                regulator-name = "On-module +V0.8_SNVS (LDO2)";
                        };