[PATCH] mci: be more verbose about wrong bus-width
Christoph Fritz
chf.fritz at googlemail.com
Sun Apr 30 06:45:58 PDT 2017
If configured or default bus-width is wrong for the current hardware,
registration of card/emmc is likely to fail. This patch adds more verbosity
in the case of a failed detection:
| omap-hsmmc 48060000.mmc: registered as 48060000.mmc
| mmc0: detected MMC card version 4.41
| mmc0: Changing MMC bus width failed: -110
| mmc0: Card's startup fails with -110
Signed-off-by: Christoph Fritz <chf.fritz at googlemail.com>
---
drivers/mci/mci-core.c | 11 +++++++----
1 file changed, 7 insertions(+), 4 deletions(-)
diff --git a/drivers/mci/mci-core.c b/drivers/mci/mci-core.c
index b173a17..3da1c26 100644
--- a/drivers/mci/mci-core.c
+++ b/drivers/mci/mci-core.c
@@ -984,7 +984,7 @@ static int mci_startup_sd(struct mci *mci)
mci_setup_cmd(&cmd, SD_CMD_APP_SET_BUS_WIDTH, 2, MMC_RSP_R1);
err = mci_send_cmd(mci, &cmd, NULL);
if (err) {
- dev_dbg(&mci->dev, "Changing SD bus width failed: %d\n", err);
+ dev_warn(&mci->dev, "Changing SD bus width failed: %d\n", err);
/* TODO continue with 1 bit? */
return err;
}
@@ -1041,8 +1041,11 @@ static int mci_startup_mmc(struct mci *mci)
err = mci_switch(mci, EXT_CSD_CMD_SET_NORMAL,
EXT_CSD_BUS_WIDTH,
ext_csd_bits[idx]);
- if (err)
+ if (err) {
+ if (idx == 0)
+ dev_warn(&mci->dev, "Changing MMC bus width failed: %d\n", err);
continue;
+ }
mci_set_bus_width(mci, bus_widths[idx]);
@@ -1051,7 +1054,7 @@ static int mci_startup_mmc(struct mci *mci)
break;
}
- return 0;
+ return err;
}
/**
@@ -1693,7 +1696,7 @@ static int mci_card_probe(struct mci *mci)
rc = mci_startup(mci);
if (rc) {
- dev_dbg(&mci->dev, "Card's startup fails with %d\n", rc);
+ dev_warn(&mci->dev, "Card's startup fails with %d\n", rc);
goto on_error;
}
--
2.1.4
More information about the barebox
mailing list