mmc: sdhci-of-at91: fix quirk2 overwrite
authorEugen Hristev <eugen.hristev@microchip.com>
Thu, 14 Nov 2019 12:59:26 +0000 (12:59 +0000)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 20 Nov 2019 16:59:33 +0000 (17:59 +0100)
commit fed23c5829ecab4ddc712d7b0046e59610ca3ba4 upstream.

The quirks2 are parsed and set (e.g. from DT) before the quirk for broken
HS200 is set in the driver.
The driver needs to enable just this flag, not rewrite the whole quirk set.

Fixes: 7871aa60ae00 ("mmc: sdhci-of-at91: add quirk for broken HS200")
Signed-off-by: Eugen Hristev <eugen.hristev@microchip.com>
Acked-by: Adrian Hunter <adrian.hunter@intel.com>
Cc: stable@vger.kernel.org
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/mmc/host/sdhci-of-at91.c

index 74af8cc4ef36dbfbfb6dc0c66ffd90a5f6539f46..564e7be21e068c6d01db48e72f286936f84e87fb 100644 (file)
@@ -365,7 +365,7 @@ static int sdhci_at91_probe(struct platform_device *pdev)
        pm_runtime_use_autosuspend(&pdev->dev);
 
        /* HS200 is broken at this moment */
-       host->quirks2 = SDHCI_QUIRK2_BROKEN_HS200;
+       host->quirks2 |= SDHCI_QUIRK2_BROKEN_HS200;
 
        ret = sdhci_add_host(host);
        if (ret)