[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <91e4a3f1-84ed-4433-90fc-bdfb9b08e57a@linaro.org>
Date: Thu, 24 Aug 2023 10:30:08 +0200
From: Neil Armstrong <neil.armstrong@...aro.org>
To: Xianwei Zhao <xianwei.zhao@...ogic.com>,
devicetree@...r.kernel.org, linux-arm-kernel@...ts.infradead.org,
linux-amlogic@...ts.infradead.org, linux-kernel@...r.kernel.org
Cc: Rob Herring <robh+dt@...nel.org>,
Krzysztof Kozlowski <krzysztof.kozlowski+dt@...aro.org>,
Conor Dooley <conor+dt@...nel.org>,
Kevin Hilman <khilman@...libre.com>
Subject: Re: [PATCH V2 3/6] soc: amlogic: init power domain state
Hi,
On 24/08/2023 07:59, Xianwei Zhao wrote:
> From: "xianwei.zhao" <xianwei.zhao@...ogic.com>
>
> If initial power domain with 'AWAY_ON' property state is off,
> turn on the power.
>
> Signed-off-by: xianwei.zhao <xianwei.zhao@...ogic.com>
> ---
> V1 -> V2: None
> ---
> drivers/genpd/amlogic/meson-secure-pwrc.c | 5 ++++-
> 1 file changed, 4 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/genpd/amlogic/meson-secure-pwrc.c b/drivers/genpd/amlogic/meson-secure-pwrc.c
> index 76527f4946b4..3e7e3bd25d1f 100644
> --- a/drivers/genpd/amlogic/meson-secure-pwrc.c
> +++ b/drivers/genpd/amlogic/meson-secure-pwrc.c
> @@ -55,7 +55,7 @@ static bool pwrc_secure_is_off(struct meson_secure_pwrc_domain *pwrc_domain)
> pwrc_domain->index, 0, 0, 0, 0) < 0)
> pr_err("failed to get power domain status\n");
>
> - return is_off;
> + return !!is_off;
Can you explain this ? the function returns bool, so if if_off is > 0, it would return true,
so I don't see why you would need to transform is_off into 1 or 0 using !!.
> }
>
> static int meson_secure_pwrc_off(struct generic_pm_domain *domain)
> @@ -222,6 +222,9 @@ static int meson_secure_pwrc_probe(struct platform_device *pdev)
> dom->base.power_on = meson_secure_pwrc_on;
> dom->base.power_off = meson_secure_pwrc_off;
>
> + if (match->domains[i].is_off(dom) && (dom->base.flags & GENPD_FLAG_ALWAYS_ON))
> + meson_secure_pwrc_on(&dom->base);
> +
> pm_genpd_init(&dom->base, NULL, match->domains[i].is_off(dom));
>
> pwrc->xlate.domains[i] = &dom->base;
Powered by blists - more mailing lists