]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
usb: ehci-omap: Fix PM disable depth umbalance in ehci_hcd_omap_probe
authorZhang Qilong <zhangqilong3@huawei.com>
Mon, 23 Nov 2020 14:57:19 +0000 (22:57 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 29 Dec 2020 12:42:39 +0000 (13:42 +0100)
[ Upstream commit d6ff32478d7e95d6ca199b5c852710d6964d5811 ]

The pm_runtime_enable will decrement the power disable depth. Imbalance
depth will resulted in enabling runtime PM of device fails later.  Thus
a pairing decrement must be needed on the error handling path to keep it
balanced.

Fixes: 6c984b066d84b ("ARM: OMAP: USBHOST: Replace usbhs core driver APIs by Runtime pm APIs")
Acked-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Zhang Qilong <zhangqilong3@huawei.com>
Link: https://lore.kernel.org/r/20201123145719.1455849-1-zhangqilong3@huawei.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/usb/host/ehci-omap.c

index cccde8217f288f1d713c1c724dc27da30995e3a7..8e0625cc1801b7560945561323b9216567c81a9d 100644 (file)
@@ -237,6 +237,7 @@ static int ehci_hcd_omap_probe(struct platform_device *pdev)
 
 err_pm_runtime:
        pm_runtime_put_sync(dev);
+       pm_runtime_disable(dev);
 
 err_phy:
        for (i = 0; i < omap->nports; i++) {