Re: [PATCH 1/6] clk: qcom: gdsc: Add custom disable callback for GX GDSC

From: Konrad Dybcio

Date: Tue Apr 14 2026 - 10:29:17 EST


On 4/8/26 9:26 AM, Taniya Das wrote:
>
>
> On 4/7/2026 4:26 PM, Konrad Dybcio wrote:
>>> @@ -675,3 +675,25 @@ int gdsc_gx_do_nothing_enable(struct generic_pm_domain *domain)
>>> return ret;
>>> }
>>> EXPORT_SYMBOL_GPL(gdsc_gx_do_nothing_enable);
>>> +
>>> +/*
>>> + * GX GDSC is a special power domain. Normally, its disable sequence
>>> + * is managed by the GMU firmware, and high level OS must not attempt
>> nit: "and high level OS must not attempt" -> "and the OS must not attempt"
>>
>
> Sure, will update in the next patch.
>
>>
>>> + * to disable it. The only exception is during GMU recovery, where the
>>> + * GMU driver can set GenPD’s synced_poweroff flag to allow explicitly
>>> + * disable GX GDSC in hardware.
>>> + */
>>> +int gdsc_gx_disable(struct generic_pm_domain *domain)
>>> +{
>>> + struct gdsc *sc = domain_to_gdsc(domain);
>>> +
>>> + if (domain->synced_poweroff)
>>> + return gdsc_disable(domain);
>> Can we use this version to replace gdsc_gx_do_nothing_enable() too?
>
> No, Konrad, the enable should be always a no-op in every scenario.
> synced_poweroff can't be used to handle enable of GDSC.

You're right, I completely glanced over the fact that one is an enable
function and the other's a disable..

Konrad