On Fri, Aug 26, 2022 at 03:12:05PM +0200, Johan Hovold wrote: > On Fri, Aug 26, 2022 at 06:05:19AM -0700, Matthias Kaehlcke wrote: > > On Thu, Aug 25, 2022 at 03:16:58PM -0700, Matthias Kaehlcke wrote: > > > On Wed, Aug 24, 2022 at 10:47:44AM +0200, Johan Hovold wrote: > > > > > The wakeup setting doesn't seem to have anything to do with the genpd > > > > issues on sc8280xp and the controller doesn't resume properly regardless > > > > of whether the PHYs have been disabled or not during suspend unless the > > > > PD is left on. > > > > > > I'm essentially seeing the same. USB is hosed after resume unless the PD > > > is left on. > > > > > > On Chrome OS we currently work around that with a version of commit > > > d9be8d5c5b03 ("usb: dwc3: qcom: Keep power domain on to retain controller > > > status") which was reverted upstream. I'm not sure whether USB worked after > > > resume before we enabled wakeup support. I would have sworn it did, but we > > > landed an old version of the wakeup patches a long time ago, so my > > > memory might be failing me. > > > > I need to remind myself that keeping the GDSC on is only needed when the PHYs > > are kept on. The PHYs were always off before wakeup support was added, which > > is why USB wasn't broken after suspend in the pre-wakeup days. > > Ok, so to be clear: if you disable wakeup with my patches applied so > that the PD is actually turned off, USB still resumes with only > GENPD_FLAG_ACTIVE_WAKEUP set? > > That is, you don't need to set ALWAYS_ON as I do with sc8280xp? Correct The USB controller isn't entirely happy: [ 23.062936] xhci-hcd xhci-hcd.13.auto: xHC error in resume, USBSTS 0x411, Reinit but USB still works.