Re: [patch 3/5] MMC OMAP driver

From: Russell King
Date: Wed Feb 01 2006 - 05:19:33 EST


On Tue, Jan 31, 2006 at 09:37:11AM -0400, Anderson Briglia wrote:
> Here are some misc fixes we've had in the OMAP tree. Might be worth
> testing them on other platforms too.

I've already provided feedback on this a year or so ago - and it
annoys me that absolutely _nothing_ has happened as a result.

The quoted part of this patch is WRONG and will _NEVER_ be merged.
You must NOT enable the clock until the power is stable. Maybe
this is a cause of the problems that you're seeing with various
cards, since you're not allowing them to reset correctly?

Fix this first, then re-test to see if every other fix you have
is actually necessary.

Sorry, but not following the power up protocol invalidates all other
testing wrt card initialisation behaviour.

> Index: linux-2.6.15-mmc_omap/drivers/mmc/mmc.c
> ===================================================================
> --- linux-2.6.15-mmc_omap.orig/drivers/mmc/mmc.c 2006-01-30 10:24:50.000000000 -0400
> +++ linux-2.6.15-mmc_omap/drivers/mmc/mmc.c 2006-01-30 10:25:19.000000000 -0400
> @@ -704,6 +704,7 @@ static void mmc_power_up(struct mmc_host
> int bit = fls(host->ocr_avail) - 1;
>
> host->ios.vdd = bit;
> + host->ios.clock = host->f_min;
> host->ios.bus_mode = MMC_BUSMODE_OPENDRAIN;
> host->ios.chip_select = MMC_CS_DONTCARE;
> host->ios.power_mode = MMC_POWER_UP;
> @@ -712,7 +713,6 @@ static void mmc_power_up(struct mmc_host
>
> mmc_delay(1);
>
> - host->ios.clock = host->f_min;
> host->ios.power_mode = MMC_POWER_ON;
> host->ops->set_ios(host, &host->ios);
>

--
Russell King
Linux kernel 2.6 ARM Linux - http://www.arm.linux.org.uk/
maintainer of: 2.6 Serial core
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/