All of lore.kernel.org
 help / color / mirror / Atom feed
From: Vitor Soares <ivitro@gmail.com>
To: Lucas Stach <l.stach@pengutronix.de>,
	Rob Herring <robh@kernel.org>,
	 Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>,
	Conor Dooley <conor+dt@kernel.org>,
	Shawn Guo <shawnguo@kernel.org>,
	 Sascha Hauer <s.hauer@pengutronix.de>,
	Pengutronix Kernel Team <kernel@pengutronix.de>,
	Fabio Estevam <festevam@gmail.com>
Cc: Vitor Soares <vitor.soares@toradex.com>,
	devicetree@vger.kernel.org,  imx@lists.linux.dev,
	linux-arm-kernel@lists.infradead.org,
	 linux-kernel@vger.kernel.org, stable@vger.kernel.org
Subject: Re: [PATCH v1] arm64: dts: imx8mm: fix missing pgc_vpu_* power domain parent
Date: Tue, 09 Apr 2024 14:22:17 +0100	[thread overview]
Message-ID: <e1552a3008a30ef7ed9097b4b80cda23ccb9e840.camel@gmail.com> (raw)
In-Reply-To: <9ce35b9bb5a15891f6bd01bd54b7dc84b3ba4021.camel@pengutronix.de>

Hi Lucas,

Thanks for your feedback.

On Tue, 2024-04-09 at 11:13 +0200, Lucas Stach wrote:
> Hi Vitor,
> 
> Am Dienstag, dem 09.04.2024 um 09:58 +0100 schrieb Vitor Soares:
> > From: Vitor Soares <vitor.soares@toradex.com>
> > 
> > The pgc_vpu_* nodes miss the reference to the power domain parent,
> > leading the system to hang during the resume.
> > 
> This change is not correct. The vpumix domain is controlled through
> the
> imx8mm-vpu-blk-ctrl and must not be directly triggered by the child
> domains in order to guarantee proper power sequencing.
> 
> If the sequencing is incorrect for resume, it needs to be fixed in
> the
> blk-ctrl driver. I'll happily assist if you have any questions about
> this intricate mix between GPC and blk-ctrl hardware/drivers.
 
I'm new into the topic, so I tried to follow same approach as in imx8mp
DT. I also checked the imx8mq DT and it only have one domain for the
VPU in the GPC. It seem blk-ctrl also dependes on pgc_vpu_* to work
properly.

The blk-ctrl driver hangs on imx8m_blk_ctrl_power_on() when access the
ip registers for the soft reset. I tried to power-up the before the
soft reset, but it didn't work.

Do you have an idea how we can address this within blk-ctrl?

Best regards,
Vitor

> 
> Regards,
> Lucas
> 
> > As these PU domains are nested inside the vpumix domain, let's
> > reference
> > it accordingly. After this change, the suspend/resume is working.
> > 
> > Cc: Lucas Stach <l.stach@pengutronix.de>
> > Cc: <stable@vger.kernel.org>
> > Closes:
> > https://lore.kernel.org/all/fccbb040330a706a4f7b34875db1d896a0bf81c8.camel@gmail.com/
> > Fixes: d39d4bb15310 ("arm64: dts: imx8mm: add GPC node")
> > Signed-off-by: Vitor Soares <vitor.soares@toradex.com>
> > ---
> >  arch/arm64/boot/dts/freescale/imx8mm.dtsi | 3 +++
> >  1 file changed, 3 insertions(+)
> > 
> > diff --git a/arch/arm64/boot/dts/freescale/imx8mm.dtsi
> > b/arch/arm64/boot/dts/freescale/imx8mm.dtsi
> > index 8a1b42b94dce..97d0c6d23ad8 100644
> > --- a/arch/arm64/boot/dts/freescale/imx8mm.dtsi
> > +++ b/arch/arm64/boot/dts/freescale/imx8mm.dtsi
> > @@ -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>;
> >                                         };
> >  
> >                                         pgc_dispmix:
> > power-domain@10 {
> 


WARNING: multiple messages have this Message-ID (diff)
From: Vitor Soares <ivitro@gmail.com>
To: Lucas Stach <l.stach@pengutronix.de>,
	Rob Herring <robh@kernel.org>,
	 Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>,
	Conor Dooley <conor+dt@kernel.org>,
	Shawn Guo <shawnguo@kernel.org>,
	 Sascha Hauer <s.hauer@pengutronix.de>,
	Pengutronix Kernel Team <kernel@pengutronix.de>,
	Fabio Estevam <festevam@gmail.com>
Cc: Vitor Soares <vitor.soares@toradex.com>,
	devicetree@vger.kernel.org,  imx@lists.linux.dev,
	linux-arm-kernel@lists.infradead.org,
	 linux-kernel@vger.kernel.org, stable@vger.kernel.org
Subject: Re: [PATCH v1] arm64: dts: imx8mm: fix missing pgc_vpu_* power domain parent
Date: Tue, 09 Apr 2024 14:22:17 +0100	[thread overview]
Message-ID: <e1552a3008a30ef7ed9097b4b80cda23ccb9e840.camel@gmail.com> (raw)
In-Reply-To: <9ce35b9bb5a15891f6bd01bd54b7dc84b3ba4021.camel@pengutronix.de>

Hi Lucas,

Thanks for your feedback.

On Tue, 2024-04-09 at 11:13 +0200, Lucas Stach wrote:
> Hi Vitor,
> 
> Am Dienstag, dem 09.04.2024 um 09:58 +0100 schrieb Vitor Soares:
> > From: Vitor Soares <vitor.soares@toradex.com>
> > 
> > The pgc_vpu_* nodes miss the reference to the power domain parent,
> > leading the system to hang during the resume.
> > 
> This change is not correct. The vpumix domain is controlled through
> the
> imx8mm-vpu-blk-ctrl and must not be directly triggered by the child
> domains in order to guarantee proper power sequencing.
> 
> If the sequencing is incorrect for resume, it needs to be fixed in
> the
> blk-ctrl driver. I'll happily assist if you have any questions about
> this intricate mix between GPC and blk-ctrl hardware/drivers.
 
I'm new into the topic, so I tried to follow same approach as in imx8mp
DT. I also checked the imx8mq DT and it only have one domain for the
VPU in the GPC. It seem blk-ctrl also dependes on pgc_vpu_* to work
properly.

The blk-ctrl driver hangs on imx8m_blk_ctrl_power_on() when access the
ip registers for the soft reset. I tried to power-up the before the
soft reset, but it didn't work.

Do you have an idea how we can address this within blk-ctrl?

Best regards,
Vitor

> 
> Regards,
> Lucas
> 
> > As these PU domains are nested inside the vpumix domain, let's
> > reference
> > it accordingly. After this change, the suspend/resume is working.
> > 
> > Cc: Lucas Stach <l.stach@pengutronix.de>
> > Cc: <stable@vger.kernel.org>
> > Closes:
> > https://lore.kernel.org/all/fccbb040330a706a4f7b34875db1d896a0bf81c8.camel@gmail.com/
> > Fixes: d39d4bb15310 ("arm64: dts: imx8mm: add GPC node")
> > Signed-off-by: Vitor Soares <vitor.soares@toradex.com>
> > ---
> >  arch/arm64/boot/dts/freescale/imx8mm.dtsi | 3 +++
> >  1 file changed, 3 insertions(+)
> > 
> > diff --git a/arch/arm64/boot/dts/freescale/imx8mm.dtsi
> > b/arch/arm64/boot/dts/freescale/imx8mm.dtsi
> > index 8a1b42b94dce..97d0c6d23ad8 100644
> > --- a/arch/arm64/boot/dts/freescale/imx8mm.dtsi
> > +++ b/arch/arm64/boot/dts/freescale/imx8mm.dtsi
> > @@ -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>;
> >                                         };
> >  
> >                                         pgc_dispmix:
> > power-domain@10 {
> 

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

  reply	other threads:[~2024-04-09 13:22 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-04-09  8:58 [PATCH v1] arm64: dts: imx8mm: fix missing pgc_vpu_* power domain parent Vitor Soares
2024-04-09  8:58 ` Vitor Soares
2024-04-09  9:13 ` Lucas Stach
2024-04-09  9:13   ` Lucas Stach
2024-04-09 13:22   ` Vitor Soares [this message]
2024-04-09 13:22     ` Vitor Soares
2024-04-09 14:36     ` Lucas Stach
2024-04-09 14:36       ` Lucas Stach
2024-04-09 16:44       ` Vitor Soares
2024-04-09 16:44         ` Vitor Soares
2024-04-10 11:01         ` Vitor Soares
2024-04-10 11:01           ` Vitor Soares
2024-04-16 10:53           ` Vitor Soares
2024-04-16 10:53             ` Vitor Soares
2024-04-16 16:08             ` Vitor Soares
2024-04-16 16:08               ` Vitor Soares
2024-04-17  8:00               ` Lucas Stach
2024-04-17  8:00                 ` Lucas Stach
2024-04-17 12:12                 ` Vitor Soares
2024-04-17 12:12                   ` Vitor Soares

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=e1552a3008a30ef7ed9097b4b80cda23ccb9e840.camel@gmail.com \
    --to=ivitro@gmail.com \
    --cc=conor+dt@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=festevam@gmail.com \
    --cc=imx@lists.linux.dev \
    --cc=kernel@pengutronix.de \
    --cc=krzysztof.kozlowski+dt@linaro.org \
    --cc=l.stach@pengutronix.de \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=robh@kernel.org \
    --cc=s.hauer@pengutronix.de \
    --cc=shawnguo@kernel.org \
    --cc=stable@vger.kernel.org \
    --cc=vitor.soares@toradex.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.