All of lore.kernel.org
 help / color / mirror / Atom feed
From: Bjorn Andersson <bjorn.andersson@linaro.org>
To: Rajendra Nayak <quic_rjendra@quicinc.com>
Cc: agross@kernel.org, linux-arm-msm@vger.kernel.org,
	linux-kernel@vger.kernel.org, swboyd@chromium.org,
	mka@chromium.org
Subject: Re: [PATCH v2 2/3] soc: qcom: rpmhpd: Remove mx/cx relationship on sc7280
Date: Thu, 9 Dec 2021 08:00:22 -0800	[thread overview]
Message-ID: <YbIoFjh9QbdsPnQh@ripper> (raw)
In-Reply-To: <7b8f359f-de8d-4ace-d28d-8242683e1f8c@quicinc.com>

On Thu 09 Dec 07:37 PST 2021, Rajendra Nayak wrote:

> 
> On 12/9/2021 12:29 PM, Rajendra Nayak wrote:
> > 
> > On 12/9/2021 2:12 AM, Bjorn Andersson wrote:
> > > On Tue 07 Dec 04:08 CST 2021, Rajendra Nayak wrote:
> > > 
> > > > While the requirement to specify the active + sleep and active-only MX
> > > > power-domains as the parents of the corresponding CX power domains is
> > > > applicable for most SoCs, we have some like the sc7280 where this
> > > > dependency is not applicable.
> > > > Define new rpmhpd structs for cx and cx_ao without the mx as
> > > > parent and use them for sc7280.
> > > > 
> > > > Signed-off-by: Rajendra Nayak <quic_rjendra@quicinc.com>
> > > > ---
> > > >   drivers/soc/qcom/rpmhpd.c | 18 ++++++++++++++++--
> > > >   1 file changed, 16 insertions(+), 2 deletions(-)
> > > > 
> > > > diff --git a/drivers/soc/qcom/rpmhpd.c b/drivers/soc/qcom/rpmhpd.c
> > > > index c71481d..4599efe 100644
> > > > --- a/drivers/soc/qcom/rpmhpd.c
> > > > +++ b/drivers/soc/qcom/rpmhpd.c
> > > > @@ -120,6 +120,20 @@ static struct rpmhpd cx_ao = {
> > > >       .res_name = "cx.lvl",
> > > >   };
> > > > +static struct rpmhpd cx_ao_no_parent;
> > > > +static struct rpmhpd cx_no_parent = {
> > > 
> > > There are multiple variations of how each of these can be parented, but
> > > only one way they can be without a parent. So how about we turn this the
> > > other way around?
> > > 
> > > I.e. let's name this one "cx" and the existing one "cx_w_mx_parent".
> > > 
> > > 
> > > This will be particularly useful when you look at mmcx, which on
> > > 8150/8180 has mx as parent and on 8450 has cx as parent.
> 
> I noticed mmcx on 8150/8180 does not have mx as parent, nevertheless
> I went ahead and moved to the _w_<parent-name>_parent suffix because
> it made sense if we did run into a situation like this in the future.
> 

You're correct, the 8150/8180 mmcx are wrong, let's fix that once your
patches has settled (probably later today).

Thanks for cleaning up the driver!

Regards,
Bjorn

> > > 
> > > 
> > > PS. Unfortunately I had merged 8450 since you wrote this series, I tried
> > > to just fix it up as I applied your patch, but noticed 8450_cx and
> > > 8450_mmcx and wanted to get your opinion on this first.
> > 
> > I agree that sounds like a reasonable thing to do, I hadn't looked at 8450
> > so did not notice it, I will rebase my patches on top and repost.
> > 
> > > 
> > > Regards,
> > > Bjorn
> > > 
> > > > +    .pd = { .name = "cx", },
> > > > +    .peer = &cx_ao_no_parent,
> > > > +    .res_name = "cx.lvl",
> > > > +};
> > > > +
> > > > +static struct rpmhpd cx_ao_no_parent = {
> > > > +    .pd = { .name = "cx_ao", },
> > > > +    .active_only = true,
> > > > +    .peer = &cx_no_parent,
> > > > +    .res_name = "cx.lvl",
> > > > +};
> > > > +
> > > >   static struct rpmhpd mmcx_ao;
> > > >   static struct rpmhpd mmcx = {
> > > >       .pd = { .name = "mmcx", },
> > > > @@ -273,8 +287,8 @@ static const struct rpmhpd_desc sc7180_desc = {
> > > >   /* SC7280 RPMH powerdomains */
> > > >   static struct rpmhpd *sc7280_rpmhpds[] = {
> > > > -    [SC7280_CX] = &cx,
> > > > -    [SC7280_CX_AO] = &cx_ao,
> > > > +    [SC7280_CX] = &cx_no_parent,
> > > > +    [SC7280_CX_AO] = &cx_ao_no_parent,
> > > >       [SC7280_EBI] = &ebi,
> > > >       [SC7280_GFX] = &gfx,
> > > >       [SC7280_MX] = &mx,
> > > > -- 
> > > > 2.7.4
> > > > 

  reply	other threads:[~2021-12-09 15:59 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-12-07 10:08 [PATCH v2 0/3] soc: qcom: rpmhpd: Cleanups and mx/cx fixup for sc7280 Rajendra Nayak
2021-12-07 10:08 ` [PATCH v2 1/3] soc: qcom: rpmhpd: Rename rpmhpd struct names Rajendra Nayak
2021-12-07 10:08 ` [PATCH v2 2/3] soc: qcom: rpmhpd: Remove mx/cx relationship on sc7280 Rajendra Nayak
2021-12-08 20:42   ` Bjorn Andersson
2021-12-09  6:59     ` Rajendra Nayak
2021-12-09 15:37       ` Rajendra Nayak
2021-12-09 16:00         ` Bjorn Andersson [this message]
2021-12-07 10:08 ` [PATCH v2 3/3] soc: qcom: rpmhpd: Sort power-domain definitions and lists Rajendra Nayak
2021-12-15 22:27 ` [PATCH v2 0/3] soc: qcom: rpmhpd: Cleanups and mx/cx fixup for sc7280 Bjorn Andersson

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=YbIoFjh9QbdsPnQh@ripper \
    --to=bjorn.andersson@linaro.org \
    --cc=agross@kernel.org \
    --cc=linux-arm-msm@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mka@chromium.org \
    --cc=quic_rjendra@quicinc.com \
    --cc=swboyd@chromium.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 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.