[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20240701124302.16520-1-ivitro@gmail.com>
Date: Mon, 1 Jul 2024 13:43:02 +0100
From: Vitor Soares <ivitro@...il.com>
To: Rob Herring <robh@...nel.org>,
Krzysztof Kozlowski <krzk+dt@...nel.org>,
Conor Dooley <conor+dt@...nel.org>,
Shawn Guo <shawnguo@...nel.org>,
Sascha Hauer <s.hauer@...gutronix.de>,
Pengutronix Kernel Team <kernel@...gutronix.de>,
Fabio Estevam <festevam@...il.com>,
Peng Fan <peng.fan@....com>,
Ulf Hansson <ulf.hansson@...aro.org>
Cc: Vitor Soares <vitor.soares@...adex.com>,
devicetree@...r.kernel.org,
imx@...ts.linux.dev,
linux-arm-kernel@...ts.infradead.org,
linux-kernel@...r.kernel.org,
linux-pm@...r.kernel.org,
ivitro@...il.com,
stable@...r.kernel.org,
Lucas Stach <l.stach@...gutronix.de>
Subject: [PATCH v1] arm64: dts: imx8mp: Fix VPU PGC power-domain parents
From: Vitor Soares <vitor.soares@...adex.com>
On iMX8M Plus QuadLite (VPU-less SoC), the dependency between VPU power
domains lead to a deferred probe error during boot:
[ 17.140195] imx-pgc imx-pgc-domain.8: failed to command PGC
[ 17.147183] platform imx-pgc-domain.11: deferred probe pending: (reason unknown)
[ 17.147200] platform imx-pgc-domain.12: deferred probe pending: (reason unknown)
[ 17.147207] platform imx-pgc-domain.13: deferred probe pending: (reason unknown)
This is incorrect and should be the VPU blk-ctrl controlling these power
domains, which is already doing it.
After removing the `power-domain` property from the VPU PGC nodes, both
iMX8M Plus w/ and w/out VPU boot correctly. However, it breaks the
suspend/resume functionality. A fix for this is pending, see Links.
Cc: <stable@...r.kernel.org>
Fixes: df680992dd62 ("arm64: dts: imx8mp: add vpu pgc nodes")
Link: https://lore.kernel.org/all/fcd6acc268b8642371cf289149b2b1c3e90c7f45.camel@pengutronix.de/
Link: https://lore.kernel.org/all/20240418155151.355133-1-ivitro@gmail.com/
Suggested-by: Lucas Stach <l.stach@...gutronix.de>
Signed-off-by: Vitor Soares <vitor.soares@...adex.com>
---
arch/arm64/boot/dts/freescale/imx8mp.dtsi | 3 ---
1 file changed, 3 deletions(-)
diff --git a/arch/arm64/boot/dts/freescale/imx8mp.dtsi b/arch/arm64/boot/dts/freescale/imx8mp.dtsi
index b92abb5a5c53..12548336b736 100644
--- a/arch/arm64/boot/dts/freescale/imx8mp.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8mp.dtsi
@@ -882,21 +882,18 @@ pgc_vpumix: power-domain@19 {
pgc_vpu_g1: power-domain@20 {
#power-domain-cells = <0>;
- power-domains = <&pgc_vpumix>;
reg = <IMX8MP_POWER_DOMAIN_VPU_G1>;
clocks = <&clk IMX8MP_CLK_VPU_G1_ROOT>;
};
pgc_vpu_g2: power-domain@21 {
#power-domain-cells = <0>;
- power-domains = <&pgc_vpumix>;
reg = <IMX8MP_POWER_DOMAIN_VPU_G2>;
clocks = <&clk IMX8MP_CLK_VPU_G2_ROOT>;
};
pgc_vpu_vc8000e: power-domain@22 {
#power-domain-cells = <0>;
- power-domains = <&pgc_vpumix>;
reg = <IMX8MP_POWER_DOMAIN_VPU_VC8000E>;
clocks = <&clk IMX8MP_CLK_VPU_VC8KE_ROOT>;
};
--
2.34.1
Powered by blists - more mailing lists