omap: Keep nwires for omap1 and 2420 MMC controller
authorTony Lindgren <tony@atomide.com>
Mon, 4 Oct 2010 23:58:01 +0000 (16:58 -0700)
committerTony Lindgren <tony@atomide.com>
Mon, 4 Oct 2010 23:58:01 +0000 (16:58 -0700)
A patch from Sukumar Ghorai <s-ghorai@ti.com> changed the
nwires to use caps instead. However, nwires is still
needed for the earlier controller.

Signed-off-by: Tony Lindgren <tony@atomide.com>
Acked-by: Sukumar Ghorai <s-ghorai@ti.com>
Signed-off-by: Ming Lei <tom.leiming@gmail.com>
arch/arm/mach-omap2/board-n8x0.c
arch/arm/plat-omap/include/plat/mmc.h
drivers/mmc/host/omap.c

index 7a93bd5..8fd2269 100644 (file)
@@ -488,7 +488,7 @@ static struct omap_mmc_platform_data mmc1_data = {
        .max_freq                       = 24000000,
        .dma_mask                       = 0xffffffff,
        .slots[0] = {
-               .caps                   = MMC_CAP_4_BIT_DATA,
+               .wires                  = 4,
                .set_power              = n8x0_mmc_set_power,
                .set_bus_mode           = n8x0_mmc_set_bus_mode,
                .get_cover_state        = n8x0_mmc_get_cover_state,
index 4f819fc..c5f35f8 100644 (file)
@@ -73,9 +73,12 @@ struct omap_mmc_platform_data {
 
        struct omap_mmc_slot_data {
 
-               /* 4/8 wires and any additional host capabilities
-                * need to OR'd all capabilities (ref. linux/mmc/host.h) */
-               u32 caps;
+               /*
+                * 4/8 wires and any additional host capabilities
+                * need to OR'd all capabilities (ref. linux/mmc/host.h)
+                */
+               u8  wires;      /* Used for the MMC driver on omap1 and 2420 */
+               u32 caps;       /* Used for the MMC driver on 2430 and later */
 
                /*
                 * nomux means "standard" muxing is wrong on this board, and
index a9d62cf..d98ddcf 100644 (file)
@@ -1317,7 +1317,7 @@ static int __init mmc_omap_new_slot(struct mmc_omap_host *host, int id)
        host->slots[id] = slot;
 
        mmc->caps = 0;
-       if (host->pdata->slots[id].caps & MMC_CAP_8_BIT_DATA)
+       if (host->pdata->slots[id].wires >= 4)
                mmc->caps |= MMC_CAP_4_BIT_DATA;
 
        mmc->ops = &mmc_omap_ops;