diff mbox

[5/6] sdhci-of: Set the timeout to the max value

Message ID 1253696892-15262-5-git-send-email-B22826@freescale.com (mailing list archive)
State Not Applicable
Delegated to: Kumar Gala
Headers show

Commit Message

Gao Guanhua Sept. 23, 2009, 9:08 a.m. UTC
When access the card, the following error is reported:

  mmc0: Got data interrupt 0x00000020 even though no data operation was in progress.
  mmc0: Got data interrupt 0x00000020 even though no data operation was in progress.

so we skip the calculation of timeout and use the max value.
---
 arch/powerpc/boot/dts/p2020ds.dts |    1 +
 drivers/mmc/host/sdhci-of.c       |    3 +++
 2 files changed, 4 insertions(+), 0 deletions(-)
diff mbox

Patch

diff --git a/arch/powerpc/boot/dts/p2020ds.dts b/arch/powerpc/boot/dts/p2020ds.dts
index 8b1056d..29989fb 100644
--- a/arch/powerpc/boot/dts/p2020ds.dts
+++ b/arch/powerpc/boot/dts/p2020ds.dts
@@ -461,6 +461,7 @@ 
 			interrupt-parent = <&mpic>;
 			fsl,sdhci-dma-broken;
 			fsl,sdhci-ahb2mag-irq-bypass;
+			fsl,sdhci-adjust-timeout;
 			clock-frequency = <0>;
 		};
 
diff --git a/drivers/mmc/host/sdhci-of.c b/drivers/mmc/host/sdhci-of.c
index 0bc75b3..0ff95d8 100644
--- a/drivers/mmc/host/sdhci-of.c
+++ b/drivers/mmc/host/sdhci-of.c
@@ -276,6 +276,9 @@  static int __devinit sdhci_of_probe(struct of_device *ofdev,
 	if (of_get_property(np, "fsl,sdhci-ahb2mag-irq-bypass", NULL))
 		host->quirks |= SDHCI_QUIRK_SET_AHB2MAG_IRQ_BYPASS;
 
+	if (of_get_property(np, "fsl,sdhci-adjust-timeout", NULL))
+		host->quirks |= SDHCI_QUIRK_BROKEN_TIMEOUT_VAL;
+
 	clk = of_get_property(np, "clock-frequency", &size);
 	if (clk && size == sizeof(*clk) && *clk)
 		of_host->clock = *clk;