[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-arm-kernel mailing list