Vinod, can you take this? Cheers, -Paul Le mercredi 26 février 2025 à 21:54 +0100, H. Nikolaus Schaller a écrit : > Hi, > > I just wonder if anyone is picking this up? > > There seems to be no MAINTAINER specific for drivers/phy/ingenic. > > BR, > Nikolaus > > > Am 02.01.2025 um 13:53 schrieb Paul Cercueil > > <paul@xxxxxxxxxxxxxxx>: > > > > Hi Nikolaus, > > > > Le dimanche 29 décembre 2024 à 15:22 +0100, H. Nikolaus Schaller a > > écrit : > > > if ingenic_usb_phy_exit is called the regulator is already > > > disabled > > > through ingenic_usb_phy_power_off() leading to > > > > > > [ 5.367301] WARNING: CPU: 0 PID: 20 at > > > drivers/regulator/core.c:2953 _regulator_disable+0x200/0x230 > > > [ 5.368209] unbalanced disables for regulator-dummy > > > [ 5.370364] Modules linked in: phy_ingenic_usb > > > ... > > > [ 5.373441] [<8054601c>] regulator_disable+0x40/0x80 > > > [ 5.372952] [<c02450f8>] ingenic_usb_phy_exit+0x48/0x60 > > > [phy_ingenic_usb] > > > [ 5.374283] [<8050839c>] phy_exit+0xd8/0x104 > > > [ 5.373104] [<80657a24>] __dwc2_lowlevel_hw_disable+0xe0/0xe8 > > > [ 5.373393] [<80658ad4>] dwc2_driver_probe+0x818/0x834 > > > ... > > > > > > Signed-off-by: H. Nikolaus Schaller <hns@xxxxxxxxxxxxx> > > > > Looks good to me. The regulator is not enabled in > > ingenic_usb_phy_init(), so it should not be disabled in > > ingenic_usb_phy_exit(). > > > > Reviewed-by: Paul Cercueil <paul@xxxxxxxxxxxxxxx> > > > > Cheers, > > -Paul > > > > > > > --- > > > > > > Notes: > > > Resent because linux-mips@xxxxxxxxxxxxxxx was not > > > automatically > > > added by > > > get_maintainer.pl (drivers/phy/ingenic missing in MAINTAINERS > > > record?) > > > > > > drivers/phy/ingenic/phy-ingenic-usb.c | 1 - > > > 1 file changed, 1 deletion(-) > > > > > > diff --git a/drivers/phy/ingenic/phy-ingenic-usb.c > > > b/drivers/phy/ingenic/phy-ingenic-usb.c > > > index eb2721f72a4c1..35984dd8a1bd7 100644 > > > --- a/drivers/phy/ingenic/phy-ingenic-usb.c > > > +++ b/drivers/phy/ingenic/phy-ingenic-usb.c > > > @@ -124,7 +124,6 @@ static int ingenic_usb_phy_exit(struct phy > > > *phy) > > > struct ingenic_usb_phy *priv = phy_get_drvdata(phy); > > > > > > clk_disable_unprepare(priv->clk); > > > - regulator_disable(priv->vcc_supply); > > > > > > return 0; > > > } > >