This patch applies the CQHCI_QUIRK_CLEAR_STALE_TC to MMC controller on Jasper Lake platform. When run in CQ mode, the controller on Jasper Lake sets a stale task completion event after CQE recovery is done. Signed-off-by: Kornel Dulęba <korneld@xxxxxxxxxxxx> --- drivers/mmc/host/sdhci-pci-core.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/drivers/mmc/host/sdhci-pci-core.c b/drivers/mmc/host/sdhci-pci-core.c index 7c14feb5db77..a7e637f5cb4f 100644 --- a/drivers/mmc/host/sdhci-pci-core.c +++ b/drivers/mmc/host/sdhci-pci-core.c @@ -960,6 +960,12 @@ static int glk_emmc_add_host(struct sdhci_pci_slot *slot) cq_host->mmio = host->ioaddr + 0x200; cq_host->quirks |= CQHCI_QUIRK_SHORT_TXFR_DESC_SZ; + /* + * The controller on Jasper Lake signals a stale task completion + * event after CQE recovery. + */ + if (slot->chip->pdev->device == PCI_DEVICE_ID_INTEL_JSL_EMMC) + cq_host->quirks |= CQHCI_QUIRK_CLEAR_STALE_TC; cq_host->ops = &glk_cqhci_ops; dma64 = host->flags & SDHCI_USE_64_BIT_DMA; -- 2.42.0.820.g83a721a137-goog