summaryrefslogtreecommitdiff
path: root/drivers
diff options
context:
space:
mode:
authorSascha Hauer <s.hauer@pengutronix.de>2023-03-28 11:51:13 +0200
committerSascha Hauer <s.hauer@pengutronix.de>2023-04-05 11:54:37 +0200
commit4331fe82a01336b863cd113573f97a839943f60a (patch)
tree8477a5e02fe32df733cd44cf00f7b8fa4df472a9 /drivers
parente1b79d84bea0539a38fe1d7697dd0070659abb25 (diff)
downloadbarebox-4331fe82a01336b863cd113573f97a839943f60a.tar.gz
mci: arasan: use sdhci_reset()
We have sdhci_reset(), use it instead of open coded variant in the driver. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/mci/arasan-sdhci.c15
1 files changed, 6 insertions, 9 deletions
diff --git a/drivers/mci/arasan-sdhci.c b/drivers/mci/arasan-sdhci.c
index 650de22b69..0b839ee7dc 100644
--- a/drivers/mci/arasan-sdhci.c
+++ b/drivers/mci/arasan-sdhci.c
@@ -73,14 +73,11 @@ static int arasan_sdhci_card_write_protected(struct mci_host *mci)
static int arasan_sdhci_reset(struct arasan_sdhci_host *host, u8 mask)
{
- sdhci_write8(&host->sdhci, SDHCI_SOFTWARE_RESET, mask);
+ int ret;
- /* wait for reset completion */
- if (wait_on_timeout(100 * MSECOND,
- !(sdhci_read8(&host->sdhci, SDHCI_SOFTWARE_RESET) & mask))) {
- dev_err(host->mci.hw_dev, "SDHCI reset timeout\n");
- return -ETIMEDOUT;
- }
+ ret = sdhci_reset(&host->sdhci, mask);
+ if (ret)
+ return ret;
if (host->quirks & SDHCI_ARASAN_QUIRK_FORCE_CDTEST) {
u8 ctrl;
@@ -199,8 +196,8 @@ static int arasan_sdhci_send_cmd(struct mci_host *mci, struct mci_cmd *cmd,
error:
if (ret) {
print_error(host, cmd->cmdidx, ret);
- arasan_sdhci_reset(host, BIT(1)); // SDHCI_RESET_CMD
- arasan_sdhci_reset(host, BIT(2)); // SDHCI_RESET_DATA
+ arasan_sdhci_reset(host, SDHCI_RESET_CMD);
+ arasan_sdhci_reset(host, SDHCI_RESET_DATA);
}
sdhci_write32(&host->sdhci, SDHCI_INT_STATUS, ~0);