On Sat, Nov 04, 2023 at 11:51:22AM +0000, Stefan Eichenberger wrote: > > From: Johan Hovold <johan@xxxxxxxxxx> > > When reviewing the driver I did find a bug in the xhci-plat driver which > > is likely the cause for the imbalance you're seeing. I just sent a fix > > here in case you want to give it a try: > > > > https://lore.kernel.org/lkml/20231103164323.14294-1-johan+linaro@xxxxxxxxxx/ > > I tested it and it solves the issue we have. Thanks a lot for the fix! > Before the use count for our regulator always went up to 2 and now it is > 1 as expected. > root@verdin-imx8mp-14773241:~# cat /sys/kernel/debug/regulator/CTRL_SLEEP_MOCI#/use_count > 1 > > Also when going to suspend the regulator is turned off now. With the > suspend patch applied from us the use count will be one more but > everything still works as expected. Thanks for testing. > > But, also, why are you using legacy PHYs? Which platform is this for? > > We have an external hub that we want to turn off when the system goes > into suspend. For the i.MX8MM we use the phy-generic driver to achieve > this. When I saw that the dwc3 driver would support the phy-generic via > usb-phy, I thought we could use the same approach for the i.MX8MP and, > in the future, the AM62. Maybe I misunderstood, would the right solution > be to add a suspend function to the fsl,imx8mp-usb-phy driver and use > vbus instead? But what would we do for the AM62, as it doesn't have a > phy driver if I'm not mistaken. That's not how the phy driver is supposed be used, and for on-board hubs we now have: drivers/usb/misc/onboard_usb_hub.c Have you tried using that one instead? Johan