summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJonas Gorski <jogo@openwrt.org>2015-08-23 15:01:08 +0200
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2015-12-09 14:03:25 -0500
commit81f136ae6cac5c2fd92136bd530cd69a42dbddfa (patch)
tree0e5a4367a38829a7b410888b19bde9806bd70abb
parent3577eb6d02c3f5bf751f60f125e34c2197605c65 (diff)
downloadlinux-exynos-81f136ae6cac5c2fd92136bd530cd69a42dbddfa.tar.gz
linux-exynos-81f136ae6cac5c2fd92136bd530cd69a42dbddfa.tar.bz2
linux-exynos-81f136ae6cac5c2fd92136bd530cd69a42dbddfa.zip
usb: ehci-orion: fix probe for !GENERIC_PHY
commit db1319e166c5e872c4be54eac4e47454133708cf upstream. Commit d445913ce0ab7f ("usb: ehci-orion: add optional PHY support") added support for optional phys, but devm_phy_optional_get returns -ENOSYS if GENERIC_PHY is not enabled. This causes probe failures, even when there are no phys specified: [ 1.443365] orion-ehci f1058000.usb: init f1058000.usb fail, -38 [ 1.449403] orion-ehci: probe of f1058000.usb failed with error -38 Similar to dwc3, treat -ENOSYS as no phy. Fixes: d445913ce0ab7f ("usb: ehci-orion: add optional PHY support") Signed-off-by: Jonas Gorski <jogo@openwrt.org> Acked-by: Alan Stern <stern@rowland.harvard.edu> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--drivers/usb/host/ehci-orion.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/usb/host/ehci-orion.c b/drivers/usb/host/ehci-orion.c
index bfcbb9aa8816..ee8d5faa0194 100644
--- a/drivers/usb/host/ehci-orion.c
+++ b/drivers/usb/host/ehci-orion.c
@@ -224,7 +224,8 @@ static int ehci_orion_drv_probe(struct platform_device *pdev)
priv->phy = devm_phy_optional_get(&pdev->dev, "usb");
if (IS_ERR(priv->phy)) {
err = PTR_ERR(priv->phy);
- goto err_phy_get;
+ if (err != -ENOSYS)
+ goto err_phy_get;
} else {
err = phy_init(priv->phy);
if (err)