Message ID | 1460374506-9779-5-git-send-email-rogerq@ti.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Hi, Roger Quadros <rogerq@ti.com> writes: > From: Felipe Balbi <balbi@kernel.org> > > Even if pm_runtime_get*() fails, we *MUST* call > pm_runtime_put_sync() before disabling PM. > > While at it, remove superfluous dwc3_omap_disable_irqs() > in error path. > > Signed-off-by: Felipe Balbi <balbi@kernel.org> > [nsekhar@ti.com: patch description updates] > Signed-off-by: Sekhar Nori <nsekhar@ti.com> > Signed-off-by: Roger Quadros <rogerq@ti.com> this fix is unrelated to DRD/OTG work, right ? Care to rebase only this patch on v4.6-rc3 so I can apply it during current -rc ?
On 11/04/16 15:20, Felipe Balbi wrote: > > Hi, > > Roger Quadros <rogerq@ti.com> writes: >> From: Felipe Balbi <balbi@kernel.org> >> >> Even if pm_runtime_get*() fails, we *MUST* call >> pm_runtime_put_sync() before disabling PM. >> >> While at it, remove superfluous dwc3_omap_disable_irqs() >> in error path. >> >> Signed-off-by: Felipe Balbi <balbi@kernel.org> >> [nsekhar@ti.com: patch description updates] >> Signed-off-by: Sekhar Nori <nsekhar@ti.com> >> Signed-off-by: Roger Quadros <rogerq@ti.com> > > this fix is unrelated to DRD/OTG work, right ? Care to rebase only this > patch on v4.6-rc3 so I can apply it during current -rc ? > Sure, will do that. cheers, -roger -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/drivers/usb/dwc3/dwc3-omap.c b/drivers/usb/dwc3/dwc3-omap.c index c9b918d..3497b25 100644 --- a/drivers/usb/dwc3/dwc3-omap.c +++ b/drivers/usb/dwc3/dwc3-omap.c @@ -499,7 +499,7 @@ static int dwc3_omap_probe(struct platform_device *pdev) ret = pm_runtime_get_sync(dev); if (ret < 0) { dev_err(dev, "get_sync failed with err %d\n", ret); - goto err0; + goto err1; } dwc3_omap_map_offset(omap); @@ -519,28 +519,24 @@ static int dwc3_omap_probe(struct platform_device *pdev) ret = dwc3_omap_extcon_register(omap); if (ret < 0) - goto err2; + goto err1; ret = of_platform_populate(node, NULL, NULL, dev); if (ret) { dev_err(&pdev->dev, "failed to create dwc3 core\n"); - goto err3; + goto err2; } dwc3_omap_enable_irqs(omap); return 0; -err3: +err2: extcon_unregister_notifier(omap->edev, EXTCON_USB, &omap->vbus_nb); extcon_unregister_notifier(omap->edev, EXTCON_USB_HOST, &omap->id_nb); -err2: - dwc3_omap_disable_irqs(omap); err1: pm_runtime_put_sync(dev); - -err0: pm_runtime_disable(dev); return ret;