From: Sudeep Holla <sudeep.holla@arm.com>
To: Peng Fan <peng.fan@nxp.com>
Cc: Ulf Hansson <ulf.hansson@linaro.org>,
"ben.dooks@codethink.co.uk" <ben.dooks@codethink.co.uk>,
"rafael.j.wysocki@intel.com" <rafael.j.wysocki@intel.com>,
"dmitry.baryshkov@linaro.org" <dmitry.baryshkov@linaro.org>,
"jonathanh@nvidia.com" <jonathanh@nvidia.com>,
"npitre@baylibre.com" <npitre@baylibre.com>,
"linux-pm@vger.kernel.org" <linux-pm@vger.kernel.org>,
Aisheng Dong <aisheng.dong@nxp.com>
Subject: Re: Question: why call clk_prepare in pm_clk_acquire
Date: Mon, 12 Sep 2022 14:01:37 +0100 [thread overview]
Message-ID: <20220912130137.kkmnpfce5cgocmsh@bogus> (raw)
In-Reply-To: <DU0PR04MB9417294DCE3DD29CD76F911388459@DU0PR04MB9417.eurprd04.prod.outlook.com>
On Sun, Sep 11, 2022 at 01:31:15AM +0000, Peng Fan wrote:
> > Subject: Re: Question: why call clk_prepare in pm_clk_acquire
> >
> > On Thu, Sep 08, 2022 at 04:37:13PM +0200, Ulf Hansson wrote:
> > > On Thu, 8 Sept 2022 at 09:33, Peng Fan <peng.fan@nxp.com> wrote:
> > > >
> > > > Hi All,
> > > >
> > > > We are facing an issue clk_set_rate fail with commit a3b884cef873
> > ("firmware:
> > > > arm_scmi: Add clock management to the SCMI power domain") ,
> > >
> > > Hmm, I wonder about the main reason behind that commit. Can we revert
> > > it or is there some platform/driver that is really relying on it?
> > >
> >
> > IIUC, at the time of the commit, it was needed on some Renesas platform.
> > Not sure if it is still used or not.
> >
> > > >
> > > > we use scmi power domain, but not use scmi clk, but with upper
> > > > commit, the clk is prepared when pm_clk_acquire.
> > > >
> >
> > Is this based on latest SCMI clocks that support atomic or older one which
> > doesn't. If latter, I see pm_clk_acquire doesn't actually call prepare as if
> > clk_is_enabled_when_prepared(clk) = true. Do you see have issue ?
>
> We are using 5.15 kernel, and clk_is_enabled_when_prepared(clk) is false.
>
Sorry I was just looking at scmi clk driver.
> >
> > > > However the clk has flag CLK_SET_RATE_GATE, clk_set_rate will fail
> > > > in driver, because clk is prepared in pm_clk_acquire.
> > > >
> >
> > Where is CLK_SET_RATE_GATE set exactly ?
>
> The is flag in clk driver, drivers/clk/imx/clk-imx8ulp.c,
> imx8ulp_clk_hw_composite will use CLK_SET_RATE_GATE.
>
Understood.
> >
> > > > Looking into drivers/base/power/clock_ops.c, I see
> > > > pm_clk_suspend/pm_clk_resume will handle clk prepare/unprepared,
> > so why pm_clk_acquire will also prepare the clk?
> > >
> >
> > As asked above do you see the actual clk_prepare getting called as I see it
> > isn't if lk_is_enabled_when_prepared(clk) = true.
>
> Yes, clk_is_enabled_when_prepared(clk) is not always true in my case,
> This function is just checking ops:
> clk && !(clk->core->ops->enable && clk->core->ops->disable)
>
Got it, I was assuming you are using scmi clk driver which is not the case.
--
Regards,
Sudeep
prev parent reply other threads:[~2022-09-12 13:01 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-09-08 7:33 Question: why call clk_prepare in pm_clk_acquire Peng Fan
2022-09-08 14:37 ` Ulf Hansson
2022-09-08 17:38 ` Sudeep Holla
2022-09-09 11:12 ` Ulf Hansson
2022-09-09 15:42 ` Sudeep Holla
2022-09-11 1:52 ` Peng Fan
2022-09-12 17:49 ` Geert Uytterhoeven
2022-09-12 17:58 ` Geert Uytterhoeven
2022-09-14 15:30 ` Sudeep Holla
2022-09-14 17:05 ` Nicolas Pitre
2022-09-19 9:53 ` Ulf Hansson
2022-09-21 14:42 ` Sudeep Holla
2022-09-22 8:08 ` Ulf Hansson
2022-09-15 0:59 ` Peng Fan
2022-09-16 13:15 ` Sudeep Holla
2022-09-11 1:47 ` Peng Fan
2022-09-11 1:31 ` Peng Fan
2022-09-12 13:01 ` Sudeep Holla [this message]
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=20220912130137.kkmnpfce5cgocmsh@bogus \
--to=sudeep.holla@arm.com \
--cc=aisheng.dong@nxp.com \
--cc=ben.dooks@codethink.co.uk \
--cc=dmitry.baryshkov@linaro.org \
--cc=jonathanh@nvidia.com \
--cc=linux-pm@vger.kernel.org \
--cc=npitre@baylibre.com \
--cc=peng.fan@nxp.com \
--cc=rafael.j.wysocki@intel.com \
--cc=ulf.hansson@linaro.org \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox