From: Shawn Lin Date: Mon, 9 Jan 2017 08:56:19 +0000 (+0800) Subject: mmc: sdio: Factor out retry init card helper function X-Git-Tag: v4.13~1298^2~102 X-Git-Url: https://git.proxmox.com/?a=commitdiff_plain;h=0eb51a58ad823b2081c69ec1cf165833dd11c450;p=mirror_ubuntu-bionic-kernel.git mmc: sdio: Factor out retry init card helper function Add new helper function, mmc_sdio_resend_if_cond, to be reused when trying to retry the init sequence. Signed-off-by: Shawn Lin Signed-off-by: Ulf Hansson --- diff --git a/drivers/mmc/core/sdio.c b/drivers/mmc/core/sdio.c index ecbc52981ba5..f417adc9feb1 100644 --- a/drivers/mmc/core/sdio.c +++ b/drivers/mmc/core/sdio.c @@ -541,6 +541,15 @@ out: return err; } +static void mmc_sdio_resend_if_cond(struct mmc_host *host, + struct mmc_card *card) +{ + sdio_reset(host); + mmc_go_idle(host); + mmc_send_if_cond(host, host->ocr_avail); + mmc_remove_card(card); +} + /* * Handle the detection and initialisation of a card. * @@ -630,10 +639,7 @@ try_again: err = mmc_set_signal_voltage(host, MMC_SIGNAL_VOLTAGE_180, ocr_card); if (err == -EAGAIN) { - sdio_reset(host); - mmc_go_idle(host); - mmc_send_if_cond(host, host->ocr_avail); - mmc_remove_card(card); + mmc_sdio_resend_if_cond(host, card); retries--; goto try_again; } else if (err) {