Re: [PATCH v2] clk: qcom: gcc-sc8280xp: Allow PCIe GDSCs to enter retention state

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 6.07.2023 16:40, Konrad Dybcio wrote:
> On 6.07.2023 16:17, Johan Hovold wrote:
>> On Thu, Jul 06, 2023 at 07:38:42PM +0530, Manivannan Sadhasivam wrote:
>>> With the minimal system suspend support in place for the PCIe driver that
>>> keeps the interconnect path voted, the ALWAYS_ON flag can now be dropped.
>>>
>>> Also, the PWRSTS_RET_ON flag should be used to allow the GDSCs to enter the
>>> retention state when the parent domain get's turned off during system
>>> suspend.
>>>
>>> Signed-off-by: Manivannan Sadhasivam <manivannan.sadhasivam@xxxxxxxxxx>
>>> ---
>>>
>>> Changes in v2:
>>>
>>> * Changed the patch from simple revert to changing the ALWAYS_ON flag to
>>>   PWRSTS_RET_ON.
>>>
>>>  drivers/clk/qcom/gcc-sc8280xp.c | 10 +++++-----
>>>  1 file changed, 5 insertions(+), 5 deletions(-)
>>>
>>> diff --git a/drivers/clk/qcom/gcc-sc8280xp.c b/drivers/clk/qcom/gcc-sc8280xp.c
>>> index 04a99dbaa57e..c59b0f91c87d 100644
>>> --- a/drivers/clk/qcom/gcc-sc8280xp.c
>>> +++ b/drivers/clk/qcom/gcc-sc8280xp.c
>>> @@ -6786,7 +6786,7 @@ static struct gdsc pcie_2a_gdsc = {
>>>  		.name = "pcie_2a_gdsc",
>>>  	},
>>>  	.pwrsts = PWRSTS_OFF_ON,
>>> -	.flags = VOTABLE | ALWAYS_ON,
>>> +	.flags = VOTABLE | PWRSTS_RET_ON,
>>>  };
>>
>> This is not correct either. PWRSTS_RET_ON is a pwrsts mask...
> This + please rebase atop that:
> 
> https://lore.kernel.org/linux-arm-msm/20230620-topic-sc8280_gccgdsc-v2-0-562c1428c10d@xxxxxxxxxx/
Moreover, I tried a similar patch out.

Johan's v6.4 branch + the patchset I linked + removing ALWAYS_ON from gcc
(so keeping PWRSTS_OFF_ON) and PCIe survives a wakeup-s2idle-wakeup cycle.

I am however running with clk_ignore_unused, so I don't know how this
impacts the RPMh system suspend situation.

Konrad

> 
> Konrad
>>
>> Johan



[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [Linux for Sparc]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux