From 76d59119c2f0be67e2304d4d793b2f07663de7ce Mon Sep 17 00:00:00 2001 From: Lukas Wunner Date: Sat, 14 Jan 2023 10:03:46 +0100 Subject: [PATCH] bcm2835-mmc: Honor return value of mmc_of_parse() bcm2835_mmc_probe() ignores errors returned by mmc_of_parse() and in particular ignores -EPROBE_DEFER, which may be returned if the power sequencing driver configured in the devicetree is compiled as a module. The user-visible result is that access to the SDIO device fails because its power sequencing requirements have not been observed. Fix it. Signed-off-by: Lukas Wunner --- drivers/mmc/host/bcm2835-mmc.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/mmc/host/bcm2835-mmc.c b/drivers/mmc/host/bcm2835-mmc.c index cdc1318..bb6bbfb 100644 --- a/drivers/mmc/host/bcm2835-mmc.c +++ b/drivers/mmc/host/bcm2835-mmc.c @@ -1475,7 +1475,9 @@ static int bcm2835_mmc_probe(struct platform_device *pdev) } if (node) { - mmc_of_parse(mmc); + ret = mmc_of_parse(mmc); + if (ret) + goto err; /* Read any custom properties */ of_property_read_u32(node, -- 2.7.4