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>
Mon, 25 Nov 2019 08:51:58 +0000 (09:51 +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 2ff6140ea0b752ae2348e019fa0c4db200f9d5f5..7f7af312e7ad34663fd403817da8f84304921595 100644 (file)
@@ -318,7 +318,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)