driver core: platform: Make use of the helper function dev_err_probe()
authorCai Huoqing <caihuoqing@baidu.com>
Fri, 5 Nov 2021 07:15:09 +0000 (15:15 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 27 Nov 2021 09:56:45 +0000 (10:56 +0100)
When possible using dev_err_probe() helps to properly deal with the
PROBE_DEFER error, the benefit is that DEFER issue will be logged
in the devices_deferred debugfs file.

Signed-off-by: Cai Huoqing <caihuoqing@baidu.com>
Link: https://lore.kernel.org/r/20211105071509.969-1-caihuoqing@baidu.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/base/platform.c

index 598acf9..7109351 100644 (file)
@@ -258,8 +258,9 @@ int platform_get_irq(struct platform_device *dev, unsigned int num)
        int ret;
 
        ret = platform_get_irq_optional(dev, num);
-       if (ret < 0 && ret != -EPROBE_DEFER)
-               dev_err(&dev->dev, "IRQ index %u not found\n", num);
+       if (ret < 0)
+               return dev_err_probe(&dev->dev, ret,
+                                    "IRQ index %u not found\n", num);
 
        return ret;
 }