On 25 April 2014 14:38, Markus Pargmann <mpa@xxxxxxxxxxxxxx> wrote: > Hi, > > On Wed, Apr 23, 2014 at 08:07:57PM +0100, Russell King wrote: >> Patch suggested by Dong Aisheng <dongas86@xxxxxxxxx>, this avoids >> additional clock start/stop cycles during the transition to 1.8V >> signalling mode. >> >> Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx> > > I tested the series on imx6s with a RIoT board. With this patch applied > the RIoT board emmc does not work. Here is the output of the board: Hi Markus, Thanks for helping out testing! Does that mean patch 1->20 works fine for you? May I add your tested-by tag? Kind regards Ulf Hansson > > # dmesg | grep mmc2 > mmc2: no vqmmc regulator found > mmc2: no vmmc regulator found > mmc2: SDHCI controller on 219c000.usdhc [219c000.usdhc] using ADMA > mmc2: BKOPS_EN bit is not set > mmc2: Timeout waiting for hardware interrupt. > mmc2: Timeout waiting for hardware interrupt. > mmc2: Timeout waiting for hardware interrupt. > mmc2: Timeout waiting for hardware interrupt. > mmc2: error -110 whilst initialising MMC card > mmc2: BKOPS_EN bit is not set > mmc2: Timeout waiting for hardware interrupt. > mmc2: Timeout waiting for hardware interrupt. > mmc2: Timeout waiting for hardware interrupt. > mmc2: Timeout waiting for hardware interrupt. > mmc2: error -110 whilst initialising MMC card > mmc2: BKOPS_EN bit is not set > > Any ideas? > > Regards, > > Markus > >> --- >> drivers/mmc/host/sdhci.c | 12 ------------ >> 1 file changed, 12 deletions(-) >> >> diff --git a/drivers/mmc/host/sdhci.c b/drivers/mmc/host/sdhci.c >> index 748333ba6e96..0bcef2d42da4 100644 >> --- a/drivers/mmc/host/sdhci.c >> +++ b/drivers/mmc/host/sdhci.c >> @@ -1507,12 +1507,6 @@ static void sdhci_do_set_ios(struct sdhci_host *host, struct mmc_ios *ios) >> host->ops->set_clock(host, host->clock); >> } >> >> - >> - /* Reset SD Clock Enable */ >> - clk = sdhci_readw(host, SDHCI_CLOCK_CONTROL); >> - clk &= ~SDHCI_CLOCK_CARD_EN; >> - sdhci_writew(host, clk, SDHCI_CLOCK_CONTROL); >> - >> if (host->ops->set_uhs_signaling) >> host->ops->set_uhs_signaling(host, ios->timing); >> else { >> @@ -1546,9 +1540,6 @@ static void sdhci_do_set_ios(struct sdhci_host *host, struct mmc_ios *ios) >> ios->drv_type = (preset & SDHCI_PRESET_DRV_MASK) >> >> SDHCI_PRESET_DRV_SHIFT; >> } >> - >> - /* Re-enable SD Clock */ >> - host->ops->set_clock(host, host->clock); >> } else >> sdhci_writeb(host, ctrl, SDHCI_HOST_CONTROL); >> >> @@ -1757,9 +1748,6 @@ static int sdhci_do_start_signal_voltage_switch(struct sdhci_host *host, >> ctrl |= SDHCI_CTRL_VDD_180; >> sdhci_writew(host, ctrl, SDHCI_HOST_CONTROL2); >> >> - /* Wait for 5ms */ >> - usleep_range(5000, 5500); >> - >> /* 1.8V regulator output should be stable within 5 ms */ >> ctrl = sdhci_readw(host, SDHCI_HOST_CONTROL2); >> if (ctrl & SDHCI_CTRL_VDD_180) >> -- >> 1.8.3.1 >> >> >> _______________________________________________ >> linux-arm-kernel mailing list >> linux-arm-kernel@xxxxxxxxxxxxxxxxxxx >> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel >> > > -- > Pengutronix e.K. | | > Industrial Linux Solutions | http://www.pengutronix.de/ | > Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | > Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 | -- To unsubscribe from this list: send the line "unsubscribe linux-mmc" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html