summaryrefslogtreecommitdiffstats
path: root/drivers/mmc/host/sdhci-of-core.c
diff options
context:
space:
mode:
authorJerry Huang2010-08-11 03:01:59 +0200
committerLinus Torvalds2010-08-11 17:59:05 +0200
commitc4512f79dcb236c8dc2afae176a0dc520096f0bc (patch)
tree4aced8cb26bae4256e538c6a35679d31c60d7dc2 /drivers/mmc/host/sdhci-of-core.c
parentsdhci: add regulator support (diff)
downloadkernel-qcow2-linux-c4512f79dcb236c8dc2afae176a0dc520096f0bc.tar.gz
kernel-qcow2-linux-c4512f79dcb236c8dc2afae176a0dc520096f0bc.tar.xz
kernel-qcow2-linux-c4512f79dcb236c8dc2afae176a0dc520096f0bc.zip
sdhci: add auto CMD12 support for eSDHC driver
Add auto CMD12 command support for eSDHC driver. This is needed by P4080 and P1022 for block read/write. Manual asynchronous CMD12 abort operation causes protocol violations on these silicons. Signed-off-by: Jerry Huang <Chang-Ming.Huang@freescale.com> Signed-off-by: Roy Zang <tie-fei.zang@freescale.com> Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org> Cc: Kumar Gala <galak@gate.crashing.org> Cc: Grant Likely <grant.likely@secretlab.ca> Cc: <linux-mmc@vger.kernel.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'drivers/mmc/host/sdhci-of-core.c')
-rw-r--r--drivers/mmc/host/sdhci-of-core.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/mmc/host/sdhci-of-core.c b/drivers/mmc/host/sdhci-of-core.c
index a2e9820cd42f..dd1bdd168e66 100644
--- a/drivers/mmc/host/sdhci-of-core.c
+++ b/drivers/mmc/host/sdhci-of-core.c
@@ -154,6 +154,10 @@ static int __devinit sdhci_of_probe(struct of_device *ofdev,
host->ops = &sdhci_of_data->ops;
}
+ if (of_get_property(np, "sdhci,auto-cmd12", NULL))
+ host->quirks |= SDHCI_QUIRK_MULTIBLOCK_READ_ACMD12;
+
+
if (of_get_property(np, "sdhci,1-bit-only", NULL))
host->quirks |= SDHCI_QUIRK_FORCE_1_BIT_DATA;