Re: [PATCH 0/5] mmc: sdio: Enable SW reset of SDIO cards

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Hans,

On Sat, Apr 14, 2018 at 04:41:24PM +0200, Hans de Goede wrote:
> Hi,
> 
> On 14-04-18 13:25, Quentin Schulz wrote:
> > Hi Ulf and Hans,
> > 
> > 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?
> > > 
> > 
> > I applied your patches on top of next-20180406.
> > 
> > I may need some help to get the ESP8089 driver to work. Note that I'm
> > very new to MMC and SDIO, just so you know (and so you can adapt your
> > answer).
> > 
> > It's filling my kernel log buffer with a lot of these[1]. I've basically
> > replaced Hans's mmc_force_detect_change() by your mmc_sw_reset() in
> > esp_sdio_probe() of the ESP8089 driver and that's it. Here is my old
> > patch series for ESP8089[2].
> 
> Previously, after my mmc_force_detect_change() the driver would
> see a disconnect/remove and then a new connect/probe, this will
> no longer happen, now after the mmc_sw_reset() you should let
> probe continue at there point where previously the second probe
> call would start.

It's what I understood of it so I moved pieces specific to the second
probe and put it after mmc_sw_reset(). I forgot to mention this
modification in my previous mail.

Anyway, the trace happens before reaching the second part of the probe
is what I understood from the log attached in the previous mail.
It looks like it's happening in mmc_sw_reset(). Am I wrongly assuming?

> > I can't say if it's an error in your patch series or me using it the
> > wrong way.
> 
> Well if you just replaced my mmc_force_detect_change() with
> mmc_sw_reset() that is not enough, see above. After that it might
> very well be that mc_sw_reset() needs some work too...

Best regards,
Quentin

Attachment: signature.asc
Description: PGP signature


[Index of Archives]     [Linux USB Devel]     [Linux Media]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux