> Subject: [PATCH v1] arm64: dts: imx8mp: Fix VPU PGC power-domain > parents > > From: Vitor Soares <vitor.soares@xxxxxxxxxxx> > > 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@xxxxxxxxxxxxxxx> > Fixes: df680992dd62 ("arm64: dts: imx8mp: add vpu pgc nodes") > Link: > Suggested-by: Lucas Stach <l.stach@xxxxxxxxxxxxxx> > Signed-off-by: Vitor Soares <vitor.soares@xxxxxxxxxxx> For VPU-Less 8MP, all the VPU PGC nodes should be dropped, right? Why not use bootloader to update the device tree based on fuse settings? Regards, Peng. > --- > 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