Hi Ulf On Fri, Apr 06, 2018 at 10:41:10AM +0200, Hans de Goede wrote: > Hi Ulf, > > On 05-04-18 22:19, Ulf Hansson wrote: > > It's rather common that SDIO func devices becomes loaded with a new firmware as > > a part of the SDIO func driver being probed. However, in some special scenarios > > the SDIO func device needs a SW reset, as to start running the new firmware. > > > > More importantly, a full power cycle doesn't work, as that would reset also the > > firmware, thus the existing mmc_hw_reset() API can't be used to deal with these > > scenarios. > > > > Therefore this series suggest to add a new API, mmc_sw_reset(), which resets > > and re-initialize the SDIO card. A couple of the patches in the series are > > mostly re-factorings making generic improvements to the related code. > > > > For more background to this series, feel free to digest the discussions from > > the submitted patch: https://patchwork.kernel.org/patch/9857175/ > > > > It should be noted, at this point this series has only be compile tested. Help > > with tests and deployment of using the new API is greatly appreciated. > > Thank you for this series, I've taken a quick look and it looks good, > but the proof is in the pudding. Quentin can you test this on an ARM > board with an ESP8089 sometime the coming week? > Indeed, thank you for this series, it's highly appreciated. It's on my TODO list. If you haven't heard of me by Tuesday next week, please ping me. Thanks, Quentin > Regards, > > Hans > > > > > > Kind regards > > Ulf Hansson > > > > Ulf Hansson (5): > > mmc: core: Re-factor some code for SDIO re-initialization > > mmc: core: Rename ->reset() bus ops to ->hw_reset() > > mmc: core: Export a function mmc_sw_reset() to allow soft reset of > > cards > > mmc: core: Share internal function to set initial signal voltage > > mmc: core: Implement ->sw_reset bus ops for SDIO > > > > drivers/mmc/core/core.c | 49 +++++++++++++++++++++++++++++++++--------- > > drivers/mmc/core/core.h | 4 +++- > > drivers/mmc/core/mmc.c | 4 ++-- > > drivers/mmc/core/sd.c | 4 ++-- > > drivers/mmc/core/sdio.c | 56 +++++++++++++++++++++++++++++------------------- > > include/linux/mmc/core.h | 1 + > > 6 files changed, 81 insertions(+), 37 deletions(-) > >
Attachment:
signature.asc
Description: PGP signature