On 14.06.2023 08:05, Dmitry Baryshkov wrote: > On Tue, 30 May 2023 at 02:47, Dmitry Baryshkov > <dmitry.baryshkov@xxxxxxxxxx> wrote: >> >> On 11/05/2023 11:15, Manivannan Sadhasivam wrote: >>> On Tue, May 09, 2023 at 02:20:07PM +0300, Dmitry Baryshkov wrote: >>>> On Tue, 9 May 2023 at 08:50, Manivannan Sadhasivam >>>> <manivannan.sadhasivam@xxxxxxxxxx> wrote: >>>>> >>>>> On Sun, May 07, 2023 at 08:53:35PM +0300, Dmitry Baryshkov wrote: >>>>>> Using PWRSTS_RET on msm8974's MDSS_GDSC causes display to stop working. >>>>>> The gdsc doesn't fully come out of retention mode. Change it's pwrsts >>>>>> flags to PWRSTS_OFF_ON. >>>>>> >>>>> >>>>> What does "stop working" implies? Does it work during boot and randomly stopped >>>>> working or it stopped working after resume from suspend? >>>> >>>> It stops working during the boot. I observed the MDP not starting up >>>> properly. Mea culpa, I did not look deep enough into the details, just >>>> stomped upon this change which fixes the problem for me. >>>> >>> >>> IIUC, GDSC will be transitioned to retention mode only if the parent domain goes >>> to low power mode. So if the MDSS GDSC goes to retention mode during boot, then >>> it suggests that the parent domain is not voted properly. Unless I misunderstood >>> something... >> >> Not sure, what is the parent domain here. Note, it is a pretty old >> implementation. > > Colleagues, any further feedback on this? I'd like to note that all > other platforms use PWRSTS_OFF_ON for the MDSS_GDSC, > I do not think that msm8974 is particularly different here. I'd say it's ok for now. Konrad > >> >>> >>> Or is the GDSC behavior changes between RPM and RPMh? >>> >>> - Mani >>> >>>>> >>>>> Even though reverting to non-retention mode works, I think the issue might be >>>>> somewhere else. Like the vote might be missing to get the GDSC out of retention >>>>> mode. >>>> >>>> I don't think there is a vote missing. The driver votes on MDSS_GDSC >>>> before enabling access to any of the registers from the MDSS region. >>>> >>>>> >>>>> - Mani >>>>> >>>>>> Fixes: d399723950c4 ("clk: qcom: gdsc: Fix the handling of PWRSTS_RET support") >>>>>> Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@xxxxxxxxxx> >>>>>> --- >>>>>> drivers/clk/qcom/mmcc-msm8974.c | 2 +- >>>>>> 1 file changed, 1 insertion(+), 1 deletion(-) >>>>>> >>>>>> diff --git a/drivers/clk/qcom/mmcc-msm8974.c b/drivers/clk/qcom/mmcc-msm8974.c >>>>>> index aa29c79fcd55..277ef0065aae 100644 >>>>>> --- a/drivers/clk/qcom/mmcc-msm8974.c >>>>>> +++ b/drivers/clk/qcom/mmcc-msm8974.c >>>>>> @@ -2401,7 +2401,7 @@ static struct gdsc mdss_gdsc = { >>>>>> .pd = { >>>>>> .name = "mdss", >>>>>> }, >>>>>> - .pwrsts = PWRSTS_RET_ON, >>>>>> + .pwrsts = PWRSTS_OFF_ON, >>>>>> }; >>>>>> >>>>>> static struct gdsc camss_jpeg_gdsc = { >>>>>> -- >>>>>> 2.39.2 >>>>>> >>>>> >>>>> -- >>>>> மணிவண்ணன் சதாசிவம் >>>> >>>> >>>> >>>> -- >>>> With best wishes >>>> Dmitry >>> >> >> -- >> With best wishes >> Dmitry >> > >