Common pattern of handling deferred probe can be simplified with
dev_err_probe().  Less code, the error value gets printed and real error
from dw_mci_parse_dt() is passed further instead of fixed -EINVAL.

Signed-off-by: Krzysztof Kozlowski <k...@kernel.org>
---
 drivers/mmc/host/dw_mmc.c | 9 +++------
 1 file changed, 3 insertions(+), 6 deletions(-)

diff --git a/drivers/mmc/host/dw_mmc.c b/drivers/mmc/host/dw_mmc.c
index 0fba940544ca..43c5795691fb 100644
--- a/drivers/mmc/host/dw_mmc.c
+++ b/drivers/mmc/host/dw_mmc.c
@@ -3161,12 +3161,9 @@ int dw_mci_probe(struct dw_mci *host)
 
        if (!host->pdata) {
                host->pdata = dw_mci_parse_dt(host);
-               if (PTR_ERR(host->pdata) == -EPROBE_DEFER) {
-                       return -EPROBE_DEFER;
-               } else if (IS_ERR(host->pdata)) {
-                       dev_err(host->dev, "platform data not available\n");
-                       return -EINVAL;
-               }
+               if (IS_ERR(host->pdata))
+                       return dev_err_probe(host->dev, PTR_ERR(host->pdata),
+                                            "platform data not available\n");
        }
 
        host->biu_clk = devm_clk_get(host->dev, "biu");
-- 
2.17.1

Reply via email to