From: Florian Fainelli <f.faine...@gmail.com>

The BDC clock is optional and we may get an -EPROBE_DEFER error code
which would not be propagated correctly, fix this by using
devm_clk_get_optional().

Signed-off-by: Florian Fainelli <f.faine...@gmail.com>
Signed-off-by: Al Cooper <alcoop...@gmail.com>
---
 drivers/usb/gadget/udc/bdc/bdc_core.c | 8 +++-----
 1 file changed, 3 insertions(+), 5 deletions(-)

diff --git a/drivers/usb/gadget/udc/bdc/bdc_core.c 
b/drivers/usb/gadget/udc/bdc/bdc_core.c
index c1650247ea39..f6e4026618e8 100644
--- a/drivers/usb/gadget/udc/bdc/bdc_core.c
+++ b/drivers/usb/gadget/udc/bdc/bdc_core.c
@@ -497,11 +497,9 @@ static int bdc_probe(struct platform_device *pdev)
 
        dev_dbg(dev, "%s()\n", __func__);
 
-       clk = devm_clk_get(dev, "sw_usbd");
-       if (IS_ERR(clk)) {
-               dev_info(dev, "Clock not found in Device Tree\n");
-               clk = NULL;
-       }
+       clk = devm_clk_get_optional(dev, "sw_usbd");
+       if (IS_ERR(clk))
+               return PTR_ERR(clk);
 
        ret = clk_prepare_enable(clk);
        if (ret) {
-- 
2.17.1

Reply via email to