[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20220428084143.GB583115@leoy-ThinkPad-X240s>
Date: Thu, 28 Apr 2022 16:41:43 +0800
From: Leo Yan <leo.yan@...aro.org>
To: Georgi Djakov <djakov@...nel.org>
Cc: Andy Gross <agross@...nel.org>,
Bjorn Andersson <bjorn.andersson@...aro.org>,
Bryan O'Donoghue <bryan.odonoghue@...aro.org>,
Dmitry Baryshkov <dmitry.baryshkov@...aro.org>,
linux-arm-msm@...r.kernel.org, linux-pm@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH] interconnect: qcom: msm8939: Use icc_sync_state
On Thu, Apr 28, 2022 at 10:19:55AM +0300, Georgi Djakov wrote:
> On 16.04.22 4:26, Leo Yan wrote:
> > It's fashion to use the icc_sync_state callback to notify the framework
> > when all consumers are probed, so that the bandwidth request doesn't
> > need to stay on maximum value.
> >
> > Do the same thing for msm8939 driver.
>
> I assume that you tested this with some out of tree DT? Is it public?
Yes, Bryan is upstreaming for DT binding patch, see:
https://lore.kernel.org/all/20220419010903.3109514-3-bryan.odonoghue@linaro.org/
> If the consumers are not described as such in DT and/or the support
> in the client drivers is missing, paths might get disabled.
Indeed, when tested the mainline kernel on msm8939 (with several
offline patches for enabling msm8939), I observed that GPU and display
drivers are not enabled yet, so some interconnect paths are failed.
In this case, the interconnect clock stays on maximum frequency.
But I think this doesn't impact this patch; if without this patch,
icc_sync_state() will never be called and the global variable
'synced_state' is always false.
In other words, based on this patch and after initiailize all client
drivers, the clients' bandwdith request will be respected.
Thanks,
Leo
> > Signed-off-by: Leo Yan <leo.yan@...aro.org>
> > ---
> > drivers/interconnect/qcom/msm8939.c | 1 +
> > 1 file changed, 1 insertion(+)
> >
> > diff --git a/drivers/interconnect/qcom/msm8939.c b/drivers/interconnect/qcom/msm8939.c
> > index f9c2d7d3100d..ca5f611d33b0 100644
> > --- a/drivers/interconnect/qcom/msm8939.c
> > +++ b/drivers/interconnect/qcom/msm8939.c
> > @@ -1423,6 +1423,7 @@ static struct platform_driver msm8939_noc_driver = {
> > .driver = {
> > .name = "qnoc-msm8939",
> > .of_match_table = msm8939_noc_of_match,
> > + .sync_state = icc_sync_state,
> > },
> > };
> > module_platform_driver(msm8939_noc_driver);
>
Powered by blists - more mailing lists