diff options
-rw-r--r-- | drivers/usb/host/ehci-omap.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/drivers/usb/host/ehci-omap.c b/drivers/usb/host/ehci-omap.c index 45cd01e29252..1ba1df89a436 100644 --- a/drivers/usb/host/ehci-omap.c +++ b/drivers/usb/host/ehci-omap.c | |||
@@ -202,15 +202,16 @@ static int ehci_hcd_omap_probe(struct platform_device *pdev) | |||
202 | for (i = 0 ; i < omap->nports ; i++) { | 202 | for (i = 0 ; i < omap->nports ; i++) { |
203 | struct usb_phy *phy; | 203 | struct usb_phy *phy; |
204 | 204 | ||
205 | if (pdata->port_mode[i] != OMAP_EHCI_PORT_MODE_PHY) | ||
206 | continue; | ||
207 | |||
208 | /* get the PHY device */ | 205 | /* get the PHY device */ |
209 | if (dev->of_node) | 206 | if (dev->of_node) |
210 | phy = devm_usb_get_phy_by_phandle(dev, "phys", i); | 207 | phy = devm_usb_get_phy_by_phandle(dev, "phys", i); |
211 | else | 208 | else |
212 | phy = devm_usb_get_phy_dev(dev, i); | 209 | phy = devm_usb_get_phy_dev(dev, i); |
213 | if (IS_ERR(phy) || !phy) { | 210 | if (IS_ERR(phy) || !phy) { |
211 | /* Don't bail out if PHY is not absolutely necessary */ | ||
212 | if (pdata->port_mode[i] != OMAP_EHCI_PORT_MODE_PHY) | ||
213 | continue; | ||
214 | |||
214 | ret = IS_ERR(phy) ? PTR_ERR(phy) : -ENODEV; | 215 | ret = IS_ERR(phy) ? PTR_ERR(phy) : -ENODEV; |
215 | dev_err(dev, "Can't get PHY device for port %d: %d\n", | 216 | dev_err(dev, "Can't get PHY device for port %d: %d\n", |
216 | i, ret); | 217 | i, ret); |