Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

mmc: sdhci-acpi: Add SDHCI_QUIRK2_BROKEN_64_BIT_DMA for AMDI0040

The AMD eMMC 5.0 controller does not support 64 bit DMA.

Fixes: 34597a3f60b1 ("mmc: sdhci-acpi: Add support for ACPI HID of AMD Controller with HS400")
Signed-off-by: Raul E Rangel <rrangel@chromium.org>
Link: https://marc.info/?l=linux-mmc&m=158879884514552&w=2
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Acked-by: Adrian Hunter <adrian.hunter@intel.com>
Link: https://lore.kernel.org/r/20200508165344.1.Id5bb8b1ae7ea576f26f9d91c761df7ccffbf58c5@changeid
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>

authored by

Raul E Rangel and committed by
Ulf Hansson
45a3fe3b c077dc5e

+6 -4
+6 -4
drivers/mmc/host/sdhci-acpi.c
··· 605 605 } 606 606 607 607 static const struct sdhci_acpi_slot sdhci_acpi_slot_amd_emmc = { 608 - .chip = &sdhci_acpi_chip_amd, 609 - .caps = MMC_CAP_8_BIT_DATA | MMC_CAP_NONREMOVABLE, 610 - .quirks = SDHCI_QUIRK_32BIT_DMA_ADDR | SDHCI_QUIRK_32BIT_DMA_SIZE | 611 - SDHCI_QUIRK_32BIT_ADMA_SIZE, 608 + .chip = &sdhci_acpi_chip_amd, 609 + .caps = MMC_CAP_8_BIT_DATA | MMC_CAP_NONREMOVABLE, 610 + .quirks = SDHCI_QUIRK_32BIT_DMA_ADDR | 611 + SDHCI_QUIRK_32BIT_DMA_SIZE | 612 + SDHCI_QUIRK_32BIT_ADMA_SIZE, 613 + .quirks2 = SDHCI_QUIRK2_BROKEN_64_BIT_DMA, 612 614 .probe_slot = sdhci_acpi_emmc_amd_probe_slot, 613 615 }; 614 616