Messages in this thread | | | From | Yoshihiro Shimoda <> | Subject | RE: rcar_gen3_phy_usb2: unbalanced disables for USB20_VBUS0 | Date | Wed, 5 Jun 2019 04:06:44 +0000 |
| |
Hi Geert-san,
Thank you very much for your report!
> From: Geert Uytterhoeven, Sent: Wednesday, June 5, 2019 3:06 AM > > Hi Shimoda-san, > > Using a tree based on renesas-drivers-2019-06-04-v5.2-rc3, I started seeing > the following warning during a second system suspend (s2idle): <snip> > So far I've seen this on Salvator-X with R-Car H3 ES1.0 or M3-W, and > on Salvator-XS with R-Car M3-N, but not (yet?) on H3 ES2.0.
I could reproduce this issue on R-Car H3 ES3.0 with Suspend-to-RAM. # I'm silly but I could not use s2idle that didn't wake up by ravb. # https://elinux.org/R-Car/Boards/Salvator-X#Suspend-to-Idle
> Unfortunately the issue seems to be fairly timing-sensitive, so I failed > to bisect it. > > I have added some debug. While this didn't help me finding the cause > of the above warning, it did discover another imbalance:
Thank you for trying it. I have investigated this issue and then I found the root cause.
After the following patch was applied, multiple phy devices are generated. https://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-drivers.git/commit/drivers/phy/renesas/phy-rcar-gen3-usb2.c?h=renesas-drivers-2019-06-04-v5.2-rc3&id=549b6b55b00558183cef4af2c2bb61d4f2ffe508
But, on the power_on function, it should set the "powered" flag for any other phys anyway. Otherwise, such a strange imbalance behavior happened. The powered flag is needed to avoid multiple "PLL_RST" register setting. # I think regulator_{en,dis}able() don't need such a condition though.
I'll submit a bugfix patch with your Reported-by tag later.
Best regards, Yoshihiro Shimoda
| |