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 <k...@kernel.org>
---
 drivers/mmc/host/dw_mmc-zx.c | 11 +++--------
 1 file changed, 3 insertions(+), 8 deletions(-)

diff --git a/drivers/mmc/host/dw_mmc-zx.c b/drivers/mmc/host/dw_mmc-zx.c
index eada648b27ec..d9e483432a61 100644
--- a/drivers/mmc/host/dw_mmc-zx.c
+++ b/drivers/mmc/host/dw_mmc-zx.c
@@ -155,7 +155,6 @@ static int dw_mci_zx_parse_dt(struct dw_mci *host)
        struct device_node *node;
        struct dw_mci_zx_priv_data *priv;
        struct regmap *sysc_base;
-       int ret;
 
        /* syscon is needed only by emmc */
        node = of_parse_phandle(np, "zte,aon-syscon", 0);
@@ -163,13 +162,9 @@ static int dw_mci_zx_parse_dt(struct dw_mci *host)
                sysc_base = syscon_node_to_regmap(node);
                of_node_put(node);
 
-               if (IS_ERR(sysc_base)) {
-                       ret = PTR_ERR(sysc_base);
-                       if (ret != -EPROBE_DEFER)
-                               dev_err(host->dev, "Can't get syscon: %d\n",
-                                       ret);
-                       return ret;
-               }
+               if (IS_ERR(sysc_base))
+                       return dev_err_probe(host->dev, PTR_ERR(sysc_base),
+                                            "Can't get syscon\n");
        } else {
                return 0;
        }
-- 
2.17.1

Reply via email to