USB: fix up for "usb: misc: onboard_hub: rename to onboard_dev"
authorStephen Rothwell <sfr@canb.auug.org.au>
Wed, 24 Apr 2024 06:12:02 +0000 (16:12 +1000)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 30 Apr 2024 16:11:13 +0000 (18:11 +0200)
interacting with "usb: misc: onboard_usb_hub: Disable the USB hub clock
on failure"

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Link: https://lore.kernel.org/r/20240424161202.7e45e19e@canb.auug.org.au
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/usb/misc/onboard_usb_dev.c

index 648ea933bdad9c5b294a7826c672f56ea5e98fe3..f2bcc1a8b95fdaa4a2068a4470467daa7ea897f2 100644 (file)
@@ -93,7 +93,7 @@ static int onboard_dev_power_on(struct onboard_dev *onboard_dev)
        if (err) {
                dev_err(onboard_dev->dev, "failed to enable supplies: %pe\n",
                        ERR_PTR(err));
-               return err;
+               goto disable_clk;
        }
 
        fsleep(onboard_dev->pdata->reset_us);
@@ -102,6 +102,10 @@ static int onboard_dev_power_on(struct onboard_dev *onboard_dev)
        onboard_dev->is_powered_on = true;
 
        return 0;
+
+disable_clk:
+       clk_disable_unprepare(onboard_dev->clk);
+       return err;
 }
 
 static int onboard_dev_power_off(struct onboard_dev *onboard_dev)