summaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorPierre Ossman <drzeus@drzeus.cx>2006-06-30 11:22:30 +0200
committerRussell King <rmk+kernel@arm.linux.org.uk>2006-07-02 17:54:54 +0200
commitd96649ed5ace812ffc8d86252d7c663326ca47f8 (patch)
tree12e56f8c72310ecfa68ed7c807f30328534d644d /drivers
parent[MMC] sdhci: check controller version (diff)
downloadlinux-d96649ed5ace812ffc8d86252d7c663326ca47f8.tar.xz
linux-d96649ed5ace812ffc8d86252d7c663326ca47f8.zip
[MMC] sdhci: reset sdhci controller early
The specification states that the capabilities register might need a reset to get correct values after boot up. Signed-off-by: Pierre Ossman <drzeus@drzeus.cx> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/mmc/sdhci.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/mmc/sdhci.c b/drivers/mmc/sdhci.c
index e37c8149249f..06dec744d53e 100644
--- a/drivers/mmc/sdhci.c
+++ b/drivers/mmc/sdhci.c
@@ -1132,6 +1132,8 @@ static int __devinit sdhci_probe_slot(struct pci_dev *pdev, int slot)
goto release;
}
+ sdhci_reset(host, SDHCI_RESET_ALL);
+
version = readw(host->ioaddr + SDHCI_HOST_VERSION);
version = (version & SDHCI_SPEC_VER_MASK) >> SDHCI_SPEC_VER_SHIFT;
if (version != 0) {