mmc: sdhci: 8-bit bus width changes
authorPhilip Rakity <prakity@marvell.com>
Fri, 19 Nov 2010 21:48:39 +0000 (16:48 -0500)
committerChris Ball <cjb@laptop.org>
Mon, 22 Nov 2010 20:12:04 +0000 (15:12 -0500)
commit15ec44611904be0dcc97b84c29fbf964e5e2b36f
treed64384c6bf47beee40172419a29b09c2943e964e
parented919b0125b26dcc052e44836f66e7e1f5c49c7e
mmc: sdhci: 8-bit bus width changes

We now:
 * check for a v3 controller before setting 8-bit bus width
 * offer a callback for platform code to switch to 8-bit mode, which
   allows non-v3 controllers to support it
 * rely on mmc->caps |= MMC_CAP_8_BIT_DATA; in platform code to specify
   that the board designers have indeed brought out all the pins for
   8-bit to the slot.

We were previously relying only on whether the *controller* supported
8-bit, which doesn't tell us anything about the pin configuration in
the board design.

This fixes the MMC card regression reported by Maxim Levitsky here:
   http://thread.gmane.org/gmane.linux.kernel.mmc/4336
by no longer assuming that 8-bit works by default.

Signed-off-by: Philip Rakity <prakity@marvell.com>
Tested-by: Giuseppe Cavallaro <peppe.cavallaro@st.com>
Signed-off-by: Chris Ball <cjb@laptop.org>
arch/arm/plat-pxa/include/plat/sdhci.h
drivers/mmc/host/sdhci-pxa.c
drivers/mmc/host/sdhci.c
drivers/mmc/host/sdhci.h