Re: [PATCH v5] mmc: host: sdhci: Fix the incorrect soft reset operation when runtime resuming

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

 



On Thu, 25 Jul 2019 at 21:15, Ulf Hansson <ulf.hansson@xxxxxxxxxx> wrote:
>
> - Trimmed cc list
>
> On Thu, 25 Jul 2019 at 05:14, Baolin Wang <baolin.wang@xxxxxxxxxx> wrote:
> >
> > The SD host controller specification defines 3 types software reset:
> > software reset for data line, software reset for command line and
> > software reset for all. Software reset for all means this reset affects
> > the entire Host controller except for the card detection circuit.
> >
> > In sdhci_runtime_resume_host() function, now we will always do software
> > reset for all, which will cause Spreadtrum host controller work abnormally
> > after resuming. For Spreadtrum platform that will not power down the SD/eMMC
> > card during runtime suspend, we should just do software reset for data
> > and command instead doing reset for all.
> >
> > To fix this issue, this patch introduces a new parameter of
> > sdhci_runtime_resume_host() to let it decide if a 'reset for all' shall
> > be done or not. Meanwhile changes other host drivers to issue a software
> > reset for all to keep the original logic.
> >
> > Signed-off-by: Baolin Wang <baolin.wang@xxxxxxxxxx>
>
> Applied for next, with a little change (renaming the "soft"
> in-parameter to soft_reset), thanks!

Thanks Ulf :)

>
> Adrian, if there is anything you want to change, please tell.
>
> BTW, perhaps this should be applied for fixes and tagged for stable?
> Baolin, if so, can point me the commit (or stable tag) the patch
> fixes?

Yes, since we fixed the PM runtime issue, which will reveal this
issue. And I think it still fixes:
Fixes: fb8bd90f83c4 ("mmc: sdhci-sprd: Add Spreadtrum's initial host
controller")

Thanks.

-- 
Baolin Wang
Best Regards



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

  Powered by Linux