[PATCH V2 3/6] soc: amlogic: init power domain state
Xianwei Zhao
xianwei.zhao at amlogic.com
Thu Aug 24 01:46:09 PDT 2023
Hi Neil,
Thanks for your reply.
On 2023/8/24 16:30, Neil Armstrong wrote:
> [ EXTERNAL EMAIL ]
>
> Hi,
>
> On 24/08/2023 07:59, Xianwei Zhao wrote:
>> From: "xianwei.zhao" <xianwei.zhao at amlogic.com>
>>
>> If initial power domain with 'AWAY_ON' property state is off,
>> turn on the power.
>>
>> Signed-off-by: xianwei.zhao <xianwei.zhao at amlogic.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 !!.
>
I will remove this modify, in next version.
>> }
>>
>> 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;
>
More information about the linux-amlogic
mailing list