Skip to content

Commit 6d0b1c0

Browse files
jmentistorulf
authored andcommitted
mmc: sdhci_am654: Workaround for Errata i2312
Errata i2312 [0] for K3 silicon mentions the maximum obtainable timeout through MMC host controller is 700ms. And for commands taking longer than 700ms, hardware timeout should be disabled and software timeout should be used. The workaround for Errata i2312 can be achieved by adding SDHCI_QUIRK2_DISABLE_HW_TIMEOUT quirk in sdhci_am654. [0] https://www.ti.com/lit/pdf/sprz487 Signed-off-by: Judith Mendez <[email protected]> Acked-by: Adrian Hunter <[email protected]> Fixes: 41fd4ca ("mmc: sdhci_am654: Add Initial Support for AM654 SDHCI driver") Cc: [email protected] Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Ulf Hansson <[email protected]>
1 parent 50c78f3 commit 6d0b1c0

File tree

1 file changed

+6
-3
lines changed

1 file changed

+6
-3
lines changed

drivers/mmc/host/sdhci_am654.c

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -613,7 +613,8 @@ static const struct sdhci_ops sdhci_am654_ops = {
613613
static const struct sdhci_pltfm_data sdhci_am654_pdata = {
614614
.ops = &sdhci_am654_ops,
615615
.quirks = SDHCI_QUIRK_MULTIBLOCK_READ_ACMD12,
616-
.quirks2 = SDHCI_QUIRK2_PRESET_VALUE_BROKEN,
616+
.quirks2 = SDHCI_QUIRK2_PRESET_VALUE_BROKEN |
617+
SDHCI_QUIRK2_DISABLE_HW_TIMEOUT,
617618
};
618619

619620
static const struct sdhci_am654_driver_data sdhci_am654_sr1_drvdata = {
@@ -643,7 +644,8 @@ static const struct sdhci_ops sdhci_j721e_8bit_ops = {
643644
static const struct sdhci_pltfm_data sdhci_j721e_8bit_pdata = {
644645
.ops = &sdhci_j721e_8bit_ops,
645646
.quirks = SDHCI_QUIRK_MULTIBLOCK_READ_ACMD12,
646-
.quirks2 = SDHCI_QUIRK2_PRESET_VALUE_BROKEN,
647+
.quirks2 = SDHCI_QUIRK2_PRESET_VALUE_BROKEN |
648+
SDHCI_QUIRK2_DISABLE_HW_TIMEOUT,
647649
};
648650

649651
static const struct sdhci_am654_driver_data sdhci_j721e_8bit_drvdata = {
@@ -667,7 +669,8 @@ static const struct sdhci_ops sdhci_j721e_4bit_ops = {
667669
static const struct sdhci_pltfm_data sdhci_j721e_4bit_pdata = {
668670
.ops = &sdhci_j721e_4bit_ops,
669671
.quirks = SDHCI_QUIRK_MULTIBLOCK_READ_ACMD12,
670-
.quirks2 = SDHCI_QUIRK2_PRESET_VALUE_BROKEN,
672+
.quirks2 = SDHCI_QUIRK2_PRESET_VALUE_BROKEN |
673+
SDHCI_QUIRK2_DISABLE_HW_TIMEOUT,
671674
};
672675

673676
static const struct sdhci_am654_driver_data sdhci_j721e_4bit_drvdata = {

0 commit comments

Comments
 (0)