On 29 January 2013 05:32, Kevin Liu <keyuan.liu@xxxxxxxxx> wrote: >> -----Original Message----- >> From: linux-mmc-owner@xxxxxxxxxxxxxxx [mailto:linux-mmc-owner@xxxxxxxxxxxxxxx] On Behalf Of Johan Rudholm >> Sent: Monday, January 28, 2013 10:08 PM >> To: linux-mmc@xxxxxxxxxxxxxxx; Chris Ball >> Cc: Per Forlin; Ulf Hansson; Fredrik Soderstedt; Kevin Liu; Philip Rakity; Daniel Drake; Aaron; Subhash Jadavani; Sujit Reddy Thumma; Wei WANG; Johan Rudholm >> Subject: [PATCH v6 0/5] mmc: core: Signal voltage switch procedure for UHS mode >> >> This patch series attempts to make the 1.8V signal voltage switch >> required for UHS mode work according to the SD specification. >> >> These patches have been tested with a couple of UHS SD cards, one of >> which sometimes requires up to five power cycles before it accepts the >> signal voltage switch. The patches have also been tested with various >> other SD cards, as well as one SDIO WLAN chip (cw1200) to check >> for regressions. The patches have also been tested with >> CONFIG_MMC_CLKGATE. >> >> As usual, I'd be very grateful if someone could help me test this patch >> with an UHS SDIO card and perhaps also a combo card (which does seem to >> be rare these days?)? >> >> This patch series is based on previous RFC/patch: >> >> [RFC/PATCH v2] mmc: core: Fixup signal voltage switch >> >> and more recently on Kevin Liu's patches: >> >> [PATCH v2 1/3] mmc: core: enhance the code for signal voltage setting >> [PATCH v2 2/3] mmc: core: cycle power the card in voltage switch rather than mmc_sd_get_cid >> >> Changelog: >> v5 -> v6 >> - Rebase >> - Adapt sd.c to use mmc_host_uhs introduced by >> "mmc: sdio: Fix SDIO 3.0 UHS-I initialization sequence" >> v4 -> v5 >> - Reset signal_voltage in struct ios if switch fails >> v3 -> v4 >> - Added "mmc: core: Break out start_signal_voltage_switch", >> which divides up mmc_set_signal_voltage to avoid a recursive >> call from mmc_power_up. This removed the third argument >> (cmd11) of the function >> - Minor bug fixes >> v2 -> v3 >> - Minor bug fixes >> v1 -> v2 >> - Move mmc_power_cycle to the mmc_set_signal_voltage function >> - Check card_busy before switching voltages >> - Return -EPERM if signal voltage switch with cmd11 is >> requested, but no start_signal_voltage_switch is defined. >> - If we're switching back to 3.3 V, just do the switch without >> checking card_busy etc >> v2 -> This patch series >> - Removed the extra argument to the card_busy host_ops function >> - Added mmc_power_cycle >> - Some clarifying comments >> v1 -> v2 >> - Removed reset of signal voltage in mmc_sd_get_cid, since >> "mmc: core: reset signal voltage on power up" >> previous two patches -> v1: >> - Keep calls to mmc_host_clk_hold / mmc_host_clk_release >> - Add retry-loop / power cycle in sdio.c >> - Fall back to 3.3 V if the switch repeatedly fails >> - Add an extra argument to the card_busy host_ops function, >> which can be used to signal polling use of the function >> >> Johan Rudholm (5): >> mmc: sd: Simplify by using mmc_host_uhs >> mmc: core: Add mmc_power_cycle >> mmc: core: Add card_busy to host_ops >> mmc: core: Break out start_signal_voltage_switch >> mmc: core: Fixup signal voltage switch >> >> drivers/mmc/core/core.c | 114 +++++++++++++++++++++++++++++++++++++++------- >> drivers/mmc/core/core.h | 5 +- >> drivers/mmc/core/mmc.c | 8 ++-- >> drivers/mmc/core/sd.c | 27 +++++++---- >> drivers/mmc/core/sdio.c | 23 ++++++++-- >> include/linux/mmc/host.h | 3 ++ >> 6 files changed, 145 insertions(+), 35 deletions(-) >> >> > > Tested-by: Kevin Liu <kliu5@xxxxxxxxxxx> > > Tested with both high speed and UHS sd cards. > Tested with emmc chip. > Tested with sdio card (non UHS). > > Tested all the patchset together with below patch (update sdhci.c > accordingly) on sdhci-pxav3 platforms. > > From fc6069b79203f64e7efa8dd0bb295bebcd22f710 Mon Sep 17 00:00:00 2001 > From: Kevin Liu <kliu5@xxxxxxxxxxx> > Date: Fri, 14 Dec 2012 16:44:10 +0800 > Subject: [PATCH v3 3/3] mmc: sdhci: update signal voltage switch code > > The protocal related code is moved to core stack. So update the host > driver accordingly. I think one patch in this set have not got my ack yet, so to be clear, for the hole series: Acked-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx> Chris, unless you see some issues with this patch set, could this be merged for 3.9? I have some mmci patches that I would like to upstream that relies on these fixes, and since those goes though Russell's tree I will always one kernel version behind. Kind regards Ulf Hansson -- 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