usb: musb: omap2430: fix PHY error handling
authorFelipe Balbi <balbi@ti.com>
Fri, 15 Mar 2013 08:57:40 +0000 (10:57 +0200)
committerFelipe Balbi <balbi@ti.com>
Mon, 18 Mar 2013 09:18:29 +0000 (11:18 +0200)
PHY layer no longer returns NULL. It will
return -ENXIO when PHY layer isn't enabled
and we can use that to bail out instead of
request a probe deferral.

Signed-off-by: Felipe Balbi <balbi@ti.com>
drivers/usb/musb/omap2430.c

index ec460eaed842017716310b2f134d40f956161b2d..798e029e3db024c60184930bb81c30784e6486c7 100644 (file)
@@ -353,7 +353,12 @@ static int omap2430_musb_init(struct musb *musb)
        else
                musb->xceiv = devm_usb_get_phy_dev(dev, 0);
 
-       if (IS_ERR_OR_NULL(musb->xceiv)) {
+       if (IS_ERR(musb->xceiv)) {
+               status = PTR_ERR(musb->xceiv);
+
+               if (status == -ENXIO)
+                       return status;
+
                pr_err("HS USB OTG: no transceiver configured\n");
                return -EPROBE_DEFER;
        }