Re: [PATCH v7 0/3] mmc: core: hw_reset changes

Ulf Hansson
2015-01-13T08:19:16Z

On 12 January 2015 at 16:11, Ulf Hansson <ulf.hansson@linaro.org> wrote:
> On 12 January 2015 at 15:38, Johan Rudholm <johan.rudholm@axis.com> wrote:
>> Make the mmc_hw_reset routine more generic, by putting the (e)MMC-
>> specific stuff in the new bus_ops->reset in mmc.c. Add a
>> bus_ops->reset for SD cards, allowing them to be restarted when
>> errors occur.
>>
>> For MMC cards, always check if the reset was sucessful. This allows
>> us to remove the mmc_hw_reset_check() interface.
>>
>> As I don't have an eMMC device myself, much less one with a reset line,
>> I'd be very happy if someone could help me test the code with an eMMC?
>>
>> v7:
>> - Rename bus_ops->hw_reset to reset
>> - Move the send_status check to mmc.c
>> - Put the changes concerning mmc_hw_reset_check in a separate patch
>>
>> v6:
>> - Always perform the mmc_send_status reset check, which allows us to
>> have only one interface to the card reset functions
>> - Because of this, add the bus_ops->hw_reset to sd.c instead of
>> falling back to a power_cycle
>>
>> v5:
>> - Move the mmc_test-specific code to mmc_test.c
>> - Fall back to a power_cycle if the bus_ops->hw_reset is missing
>> - Because of this, skip the bus_ops->hw_reset in sd.c
>>
>> v4:
>> - Rebase onto next
>>
>> v3:
>> - Keep mmc_can_reset
>> - Always set bus_mode = MMC_BUSMODE_PUSHPULL in mmc_set_initial_state()
>>
>> v2:
>> - Call the new bus_ops member hw_reset instead of power_reset
>> - Create mmc_set_initial_state and call it from mmc_mmc_hw_reset
>> instead of mmc_power_up
>> - Keep "mmc_hw_reset" naming
>>
>> Johan Rudholm (3):
>> mmc: core: always check status after reset
>> mmc: core: refactor the hw_reset routines
>> mmc: sd: add reset bus_ops callback
>>
>> drivers/mmc/card/mmc_test.c | 18 +++++--------
>> drivers/mmc/core/core.c | 59 +++++++-----------------------------------
>> drivers/mmc/core/core.h | 1 +
>> drivers/mmc/core/mmc.c | 41 +++++++++++++++++++++++++++++
>> drivers/mmc/core/sd.c | 7 +++++
>> include/linux/mmc/core.h | 1 -
>> 6 files changed, 66 insertions(+), 61 deletions(-)
>>
>> --
>> 1.7.2.5
>>
>
> Thanks! Applied for next.

Patch 1 caused compiler error and thus breaking bisectability. I
decided to fix it up myself this time, but future wise please make
sure each patch builds separately.

Kind regards
Uffe