summaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorAhmad Fatoum <a.fatoum@pengutronix.de>2020-06-23 12:08:46 +0200
committerSascha Hauer <s.hauer@pengutronix.de>2020-06-23 12:16:10 +0200
commit611a2629b9f9176f46e98d3eb40b19dbbc3f3005 (patch)
treec231c575b479837bba7c0e3fe64c1d169fc7332d /drivers
parent302c7425e7decca5e501409aa77fa71bbc1d7ed2 (diff)
downloadbarebox-611a2629b9f9176f46e98d3eb40b19dbbc3f3005.tar.gz
barebox-611a2629b9f9176f46e98d3eb40b19dbbc3f3005.tar.xz
mci: sdhci: atmel: avoid buggy SDHCI_RESET_ALL
On the sama5d27, currently only the MCI used for boot is operational. The other one errors out when failing to reset the card. Changing the RESET_ALL to RESET_CMD | RESET_DATA fixes this. This might be due to the SoC's "11.1 Software 'Reset For all' command may not execute properly" erratum[1]: > The software 'Reset For All' command may not execute properly, and, as > a result, some registers of the host controller may not reset properly. > The setting of the different registers must be checked beforere > initializing the SD card. [1]: DS80000827A Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/mci/atmel-sdhci.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/mci/atmel-sdhci.c b/drivers/mci/atmel-sdhci.c
index 70d3cd4091..59cd002aae 100644
--- a/drivers/mci/atmel-sdhci.c
+++ b/drivers/mci/atmel-sdhci.c
@@ -48,7 +48,7 @@ static int at91_sdhci_mci_init(struct mci_host *mci, struct device_d *dev)
priv->host.dev = dev;
- ret = sdhci_reset(sdhci, SDHCI_RESET_ALL);
+ ret = sdhci_reset(sdhci, SDHCI_RESET_CMD | SDHCI_RESET_DATA);
if (ret)
return ret;