[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CABGWkvqbiuvBNy2wBT4yVgwP+CY67__+sNxN3vS3Bwss7AwQhA@mail.gmail.com>
Date: Mon, 28 Oct 2024 16:07:08 +0100
From: Dario Binacchi <dario.binacchi@...rulasolutions.com>
To: Ulf Hansson <ulf.hansson@...aro.org>
Cc: linux-kernel@...r.kernel.org, linux-amarula@...rulasolutions.com,
Michael Trimarchi <michael@...rulasolutions.com>, linux-pm@...r.kernel.org
Subject: Re: [PATCH] pmdomain: core: fix "sd_count" field setting
On Mon, Oct 28, 2024 at 2:34 PM Ulf Hansson <ulf.hansson@...aro.org> wrote:
>
> On Thu, 24 Oct 2024 at 11:49, Dario Binacchi
> <dario.binacchi@...rulasolutions.com> wrote:
> >
> > The "sd_count" field keeps track of the number of subdomains with power
> > "on," so if pm_genpd_init() is called with the "is_off" parameter set to
> > false, it means that the power domain is already on, and therefore its
> > "sd_count" must be 1.
>
> genpd_sd_counter_inc() is being called when adding subdomains. Doesn't
> that work correctly for you?
In my use case the genpd_add_subdomain() is not called.
I am working on :
drivers/pmdomain/imx/gpcv2.c
drivers/pmdomain/imx/imx8m-blk-ctrl.c
Thanks and regards,
Dario
>
> >
> > Co-developed-by: Michael Trimarchi <michael@...rulasolutions.com>
> > Signed-off-by: Michael Trimarchi <michael@...rulasolutions.com>
> > Signed-off-by: Dario Binacchi <dario.binacchi@...rulasolutions.com>
> >
>
> Kind regards
> Uffe
>
> > ---
> >
> > drivers/pmdomain/core.c | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/drivers/pmdomain/core.c b/drivers/pmdomain/core.c
> > index 5ede0f7eda09..2df6dda98021 100644
> > --- a/drivers/pmdomain/core.c
> > +++ b/drivers/pmdomain/core.c
> > @@ -2221,7 +2221,7 @@ int pm_genpd_init(struct generic_pm_domain *genpd,
> > genpd_lock_init(genpd);
> > genpd->gov = gov;
> > INIT_WORK(&genpd->power_off_work, genpd_power_off_work_fn);
> > - atomic_set(&genpd->sd_count, 0);
> > + atomic_set(&genpd->sd_count, is_off ? 0 : 1);
> > genpd->status = is_off ? GENPD_STATE_OFF : GENPD_STATE_ON;
> > genpd->device_count = 0;
> > genpd->provider = NULL;
> > --
> > 2.43.0
> >
--
Dario Binacchi
Senior Embedded Linux Developer
dario.binacchi@...rulasolutions.com
__________________________________
Amarula Solutions SRL
Via Le Canevare 30, 31100 Treviso, Veneto, IT
T. +39 042 243 5310
info@...rulasolutions.com
www.amarulasolutions.com
Powered by blists - more mailing lists