On 8 January 2013 11:23, Johan Rudholm <jrudholm@xxxxxxxxx> wrote: > Hi Kevin and Ulf, > > 2013/1/8 Ulf Hansson <ulf.hansson@xxxxxxxxxx>: >> On 8 January 2013 01:56, Kevin Liu <keyuan.liu@xxxxxxxxx> wrote: >>> 2013/1/8 Ulf Hansson <ulf.hansson@xxxxxxxxxx>: >>>> On 7 January 2013 16:10, Johan Rudholm <johan.rudholm@xxxxxxxxxxxxxx> wrote: >>>>> Allow callers to access the start_signal_voltage_switch host_ops >>>>> member without going through any cmd11 logic. This is mostly a >>>>> preparation for the following signal voltage switch patch. >>>>> >>>>> Signed-off-by: Johan Rudholm <johan.rudholm@xxxxxxxxxxxxxx> >>>>> --- >>>>> drivers/mmc/core/core.c | 31 +++++++++++++++++++------------ >>>>> drivers/mmc/core/core.h | 4 ++-- >>>>> drivers/mmc/core/mmc.c | 8 ++++---- >>>>> drivers/mmc/core/sd.c | 2 +- >>>>> drivers/mmc/core/sdio.c | 3 +-- >>>>> 5 files changed, 27 insertions(+), 21 deletions(-) >>>>> >>>>> diff --git a/drivers/mmc/core/core.c b/drivers/mmc/core/core.c >>>>> index 285f064..90f8e11 100644 >>>>> --- a/drivers/mmc/core/core.c >>>>> +++ b/drivers/mmc/core/core.c >>>>> @@ -1219,7 +1219,22 @@ u32 mmc_select_voltage(struct mmc_host *host, u32 ocr) >>>>> return ocr; >>>>> } >>>>> >>>>> -int mmc_set_signal_voltage(struct mmc_host *host, int signal_voltage, bool cmd11) >>>>> +int __mmc_set_signal_voltage(struct mmc_host *host, int signal_voltage) >>>>> +{ >>>>> + int err = 0; >>>>> + >>>>> + host->ios.signal_voltage = signal_voltage; >>>>> + if (host->ops->start_signal_voltage_switch) { >>>>> + mmc_host_clk_hold(host); >>>>> + err = host->ops->start_signal_voltage_switch(host, &host->ios); >>>> >>>> Would it not make sense to restore the host->ios.signal_voltage value >>>> if this goes wrong? >>>> >>> >>> Why need to transfer ios to the voltage switch function which only >>> need the voltage value. >>> Why not just transfer the voltage value to the voltage switch >>> function? If return ok then set host->ios.signal_voltage = >>> signal_voltage otherwise do nothing. >>> I did this in my previous patch. >> >> I like the idea! >> >> Although, if the "host->ops->start_signal_voltage_switch" function >> pointer is missing, we should fall back to set the new voltage value >> anyway I think. > > How about we keep the definition of start_signal_voltage_switch for > now and maybe send it as a separate patch later? This change is not > really functionally related to this patch series. Make sense to me. Please go ahead! > > I agree that reseting the value of ios.signal_voltage to the original > value on failure is good, as Kevin initially suggested. I'll take care > of this in the next version! > > Kind regards, Johan 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