Re: [PATCH 3/3] clk: qcom: gcc-sc7280: Update the .pwrsts for usb gdsc

From: Matthias Kaehlcke
Date: Thu Sep 15 2022 - 12:43:44 EST


On Thu, Sep 15, 2022 at 06:59:36PM +0530, Rajendra Nayak wrote:
>
> On 9/15/2022 12:55 PM, Rajendra Nayak wrote:
> >
> >
> > On 9/15/2022 2:53 AM, Matthias Kaehlcke wrote:
> > > On Wed, Sep 14, 2022 at 09:12:36AM +0200, Johan Hovold wrote:
> > > > On Thu, Sep 01, 2022 at 09:04:55AM -0700, Matthias Kaehlcke wrote:
> > > > > On Thu, Sep 01, 2022 at 03:47:56PM +0530, Rajendra Nayak wrote:
> > > > > > USB on sc7280 cannot support wakeups from low power states
> > > > > > if the GDSC is turned OFF. Update the .pwrsts for usb GDSC so it
> > > > > > only transitions to RET in low power.
> > > > > >
> > > > > > Signed-off-by: Rajendra Nayak <quic_rjendra@xxxxxxxxxxx>
> > > > >
> > > > > Reviewed-by: Matthias Kaehlcke <mka@xxxxxxxxxxxx>
> > > > > Tested-by: Matthias Kaehlcke <mka@xxxxxxxxxxxx>
> > > >
> > > > Did you confirm that you actually hit the retention state?
> > >
> > > No, how would I do that?
> > >
> > > > IIUC, this series is equivalent to using ALWAYS_ON unless CX is actually
> > > > powered off during suspend.
> > >
> > > The count in /sys/kernel/debug/qcom_stats/cxsd increses with each suspend,
> > > however it also does that with the GDSC configured as ALWAYS_ON and with
> > > Rajendra's "arm64: dts: qcom: sc7280: Add required-opps for USB" [1], so
> >
> > hmm, that's really not expected. With my above patch and with the GDSC as
> > ALWAYS_ON there is a cx vote in suspend preventing cxsd so the counter
> > should not go up.
>
> Perhaps you are missing '1b771839: clk: qcom: gdsc: enable optional power domain support'
> in your tree?

Indeed, that patch was missing in our tree, thanks for the pointer!

With it the CXSD count does not increase when the GDSC is configured as
ALWAYS_ON.