Common pattern of handling deferred probe can be simplified with
dev_err_probe().  Less code and the error value gets printed.

Signed-off-by: Krzysztof Kozlowski <[email protected]>
---
 drivers/extcon/extcon-palmas.c | 18 ++++++------------
 1 file changed, 6 insertions(+), 12 deletions(-)

diff --git a/drivers/extcon/extcon-palmas.c b/drivers/extcon/extcon-palmas.c
index e8e9eebe6b1d..a2852bcc5f0d 100644
--- a/drivers/extcon/extcon-palmas.c
+++ b/drivers/extcon/extcon-palmas.c
@@ -205,21 +205,15 @@ static int palmas_usb_probe(struct platform_device *pdev)
 
        palmas_usb->id_gpiod = devm_gpiod_get_optional(&pdev->dev, "id",
                                                        GPIOD_IN);
-       if (PTR_ERR(palmas_usb->id_gpiod) == -EPROBE_DEFER) {
-               return -EPROBE_DEFER;
-       } else if (IS_ERR(palmas_usb->id_gpiod)) {
-               dev_err(&pdev->dev, "failed to get id gpio\n");
-               return PTR_ERR(palmas_usb->id_gpiod);
-       }
+       if (IS_ERR(palmas_usb->id_gpiod))
+               return dev_err_probe(&pdev->dev, PTR_ERR(palmas_usb->id_gpiod),
+                                    "failed to get id gpio\n");
 
        palmas_usb->vbus_gpiod = devm_gpiod_get_optional(&pdev->dev, "vbus",
                                                        GPIOD_IN);
-       if (PTR_ERR(palmas_usb->vbus_gpiod) == -EPROBE_DEFER) {
-               return -EPROBE_DEFER;
-       } else if (IS_ERR(palmas_usb->vbus_gpiod)) {
-               dev_err(&pdev->dev, "failed to get vbus gpio\n");
-               return PTR_ERR(palmas_usb->vbus_gpiod);
-       }
+       if (IS_ERR(palmas_usb->vbus_gpiod))
+               return dev_err_probe(&pdev->dev, 
PTR_ERR(palmas_usb->vbus_gpiod),
+                                    "failed to get id gpio\n");
 
        if (palmas_usb->enable_id_detection && palmas_usb->id_gpiod) {
                palmas_usb->enable_id_detection = false;
-- 
2.17.1

Reply via email to