Messages in this thread | | | From | Adam Ford <> | Date | Wed, 8 May 2024 12:47:41 -0500 | Subject | Re: iMX8M Mini suspend/resume hanging on imx8m_blk_ctrl_power_on() |
| |
On Wed, May 8, 2024 at 12:45 PM Lucas Stach <l.stach@pengutronix.de> wrote: > > Hi Adam, > > Am Mittwoch, dem 08.05.2024 um 12:30 -0500 schrieb Adam Ford: > > On Fri, Apr 5, 2024 at 10:09 AM vitor <ivitro@gmail.com> wrote: > > > > > > Hi, > > > > > > On Thu, 2024-04-04 at 16:53 +0100, vitor wrote: > > > > Greetings, > > > > > > > > I'm trying to suspend/resume our Verdin iMX8M Mini with VPU IP using > > > > the latest 6.9.0-rc2 Kernel. While the system can suspend without > > > > issues, it hangs on the resume routine. After some investigation, I > > > > can > > > > see the Kernel hanging on imx8m_blk_ctrl_power_on()[1] while resuming > > > > the hantro-vpu power domain. > > > > > > > > Any hint about that? > > > > > > > > [1] > > > > https://elixir.bootlin.com/linux/v6.9-rc2/source/drivers/pmdomain/imx > > > > /imx8m-blk-ctrl.c#L101 > > > > > > > > > + Lucas > > > > > Looking at other child nodes of the pgc node, pgc_vpu_[g1|g2|h1] seems > > > to be nested into pgc_vpumix. > > > > > > > On the surface, that's how it appears and it would be consistent with > > how the GPU's work with the GPC's for each GPU calling the gpumix. > > However, the VPU's all reference the vpu_blk_ctrl which itself > > references the vpumix. > > > > Lucas, > > > > You seem to know this driver pretty well. Do you expect the G1, G2, > > and H1 PGC's to all reference the vpumix, or do you expect the > > vpu_blk_ctrl to enable/disable the vpumix? > > > Nope, that's incorrect, as discussed here: > https://lore.kernel.org/all/9ce35b9bb5a15891f6bd01bd54b7dc84b3ba4021.camel@pengutronix.de/
That's what I thought. > > > > > > > > After applying the following changes to imx8mm.dtsi, the suspend/resume > > > is working. > > > > > > > > > @@ -739,16 +739,19 @@ pgc_vpumix: power-domain@6 { > > > pgc_vpu_g1: power-domain@7 { > > > #power-domain-cells = <0>; > > > reg = <IMX8MM_POWER_DOMAIN_VPUG1>; > > > + power-domains = <&pgc_vpumix>; > > > }; > > > > > > pgc_vpu_g2: power-domain@8 { > > > #power-domain-cells = <0>; > > > reg = <IMX8MM_POWER_DOMAIN_VPUG2>; > > > + power-domains = <&pgc_vpumix>; > > > }; > > > > > > pgc_vpu_h1: power-domain@9 { > > > #power-domain-cells = <0>; > > > reg = <IMX8MM_POWER_DOMAIN_VPUH1>; > > > + power-domains = <&pgc_vpumix>; > > > }; > > > > > > > > > I will prepare the patch to send in the next couple of days. > > > > Please CC me when post the patch, and I can run some tests on my hardware. > > The correct patch is already out: > https://lore.kernel.org/all/20240418155151.355133-1-ivitro@gmail.com/
Thanks. > > Regards, > Lucas
| |