From: Veerabhadrarao Badiganti Date: Thu, 28 May 2020 15:13:52 +0000 (+0530) Subject: mmc: sdhci-msm: Clear tuning done flag while hs400 tuning X-Git-Tag: v5.8-rc1~200^2~1 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=9253d71011c349d5f5cc0cebdf68b4a80811b92d;p=thirdparty%2Fkernel%2Flinux.git mmc: sdhci-msm: Clear tuning done flag while hs400 tuning Clear tuning_done flag while executing tuning to ensure vendor specific HS400 settings are applied properly when the controller is re-initialized in HS400 mode. Without this, re-initialization of the qcom SDHC in HS400 mode fails while resuming the driver from runtime-suspend or system-suspend. Fixes: ff06ce417828 ("mmc: sdhci-msm: Add HS400 platform support") Cc: stable@vger.kernel.org Signed-off-by: Veerabhadrarao Badiganti Link: https://lore.kernel.org/r/1590678838-18099-1-git-send-email-vbadigan@codeaurora.org Signed-off-by: Ulf Hansson --- diff --git a/drivers/mmc/host/sdhci-msm.c b/drivers/mmc/host/sdhci-msm.c index 95cd9735e9a37..b277dd7fbdb5d 100644 --- a/drivers/mmc/host/sdhci-msm.c +++ b/drivers/mmc/host/sdhci-msm.c @@ -1173,6 +1173,12 @@ static int sdhci_msm_execute_tuning(struct mmc_host *mmc, u32 opcode) /* Clock-Data-Recovery used to dynamically adjust RX sampling point */ msm_host->use_cdr = true; + /* + * Clear tuning_done flag before tuning to ensure proper + * HS400 settings. + */ + msm_host->tuning_done = 0; + /* * For HS400 tuning in HS200 timing requires: * - select MCLK/2 in VENDOR_SPEC