[PATCH] ARM: dts: imx6dl-yapp4: Do not allow PM to switch PU regulator off on Q/QP

From: Petr Benes
Date: Tue Oct 04 2022 - 11:57:40 EST


Fix our design flaw in supply voltage distribution on the Quad and QuadPlus
based boards.

The problem is that we supply the SoC cache (VDD_CACHE_CAP) from VDD_PU
instead of VDD_SOC. The VDD_PU internal regulator can be disabled by PM
if VPU or GPU is not used. If that happens the system freezes. To prevent
that configure the reg_pu regulator to be always on.

Fixes: 0de4ab81ab26 ("ARM: dts: imx6dl-yapp4: Add Y Soft IOTA Crux/Crux+ board")
Cc: petrben@xxxxxxxxx
Cc: stable@xxxxxxxxxxxxxxx
Signed-off-by: Petr Benes <petr.benes@xxxxxxxxx>
Signed-off-by: Michal Vokáč <michal.vokac@xxxxxxxxx>
---
arch/arm/boot/dts/imx6q-yapp4-crux.dts | 4 ++++
arch/arm/boot/dts/imx6qp-yapp4-crux-plus.dts | 4 ++++
2 files changed, 8 insertions(+)

diff --git a/arch/arm/boot/dts/imx6q-yapp4-crux.dts b/arch/arm/boot/dts/imx6q-yapp4-crux.dts
index deb18c57cf18..22f647eb12e7 100644
--- a/arch/arm/boot/dts/imx6q-yapp4-crux.dts
+++ b/arch/arm/boot/dts/imx6q-yapp4-crux.dts
@@ -45,6 +45,10 @@ &oled_1309 {
status = "okay";
};

+&reg_pu {
+ regulator-always-on;
+};
+
&reg_usb_h1_vbus {
status = "okay";
};
diff --git a/arch/arm/boot/dts/imx6qp-yapp4-crux-plus.dts b/arch/arm/boot/dts/imx6qp-yapp4-crux-plus.dts
index a450a77f920f..b580ce891f7e 100644
--- a/arch/arm/boot/dts/imx6qp-yapp4-crux-plus.dts
+++ b/arch/arm/boot/dts/imx6qp-yapp4-crux-plus.dts
@@ -45,6 +45,10 @@ &oled_1309 {
status = "okay";
};

+&reg_pu {
+ regulator-always-on;
+};
+
&reg_usb_h1_vbus {
status = "okay";
};
--
2.25.1