Commit 4dbb7161 authored by Felipe Balbi's avatar Felipe Balbi

usb: gadget: mv_udc_core: fix PHY error handling

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: default avatarFelipe Balbi <balbi@ti.com>
parent d105e7f8
...@@ -2127,16 +2127,19 @@ static int mv_udc_probe(struct platform_device *pdev) ...@@ -2127,16 +2127,19 @@ static int mv_udc_probe(struct platform_device *pdev)
udc->dev = pdev; udc->dev = pdev;
#if IS_ENABLED(CONFIG_USB_PHY)
if (pdata->mode == MV_USB_MODE_OTG) { if (pdata->mode == MV_USB_MODE_OTG) {
udc->transceiver = devm_usb_get_phy(&pdev->dev, udc->transceiver = devm_usb_get_phy(&pdev->dev,
USB_PHY_TYPE_USB2); USB_PHY_TYPE_USB2);
if (IS_ERR_OR_NULL(udc->transceiver)) { if (IS_ERR(udc->transceiver)) {
retval = PTR_ERR(udc->transceiver);
if (retval == -ENXIO)
return retval;
udc->transceiver = NULL; udc->transceiver = NULL;
return -ENODEV; return -EPROBE_DEFER;
} }
} }
#endif
udc->clknum = pdata->clknum; udc->clknum = pdata->clknum;
for (clk_i = 0; clk_i < udc->clknum; clk_i++) { for (clk_i = 0; clk_i < udc->clknum; clk_i++) {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment