[PATCH] mmc: dw_mmc: fix falling from idmac to PIO mode when dw_mci_reset occurs

Evgeniy Didin Evgeniy.Didin at synopsys.com
Thu Mar 15 10:24:09 PDT 2018


On Thu, 2018-03-15 at 14:39 +0100, Ulf Hansson wrote:
> On 15 March 2018 at 14:18, Evgeniy Didin <Evgeniy.Didin at synopsys.com> wrote:
> > Hello Ulf,
> > 
> > On Thu, 2018-03-15 at 10:57 +0100, Ulf Hansson wrote:
> > > On 14 March 2018 at 20:30, Evgeniy Didin <Evgeniy.Didin at synopsys.com> wrote:
> > > > It was found that in IDMAC mode after soft-reset driver switches
> > > > to PIO mode.
> > > > 
> > > > That's what happens in case of DTO timeout overflow calculation failure:
> > > > 1. soft-reset is called
> > > > 2. driver restarts dma
> > > > 3. descriptors states are checked, one of descriptor is owned by the IDMAC.
> > > > 4. driver can't use DMA and then switches to PIO mode.
> > > > 
> > > > Failure was already fixed in:
> > > > https://urldefense.proofpoint.com/v2/url?u=https-3A__www.spinics.net_lists_linux-2Dmmc_msg48125.html&d=DwIBaQ&c=DPL6_X_6JkXFx7AXWqB0tg&r=vQk-RIbjwN0zvlwiMSpq3LYUTNf7Gqc4ujh
> > > > osYI
> > > > TtAw&m=6rPWpKUYQD3kY-2OEikJUWyEJvwKJljWHFC8rd2TCak&s=JjX0Dx8-eSyW2cATMsnG1eAzrKgoDkS1bcS5XYrVtlE&e=.
> > > 
> > > Evgeniy,
> > > 
> > > It seems like I should squash this fix into the above commit? Makes sense?
> > 
> > IMHO it is not a good idea, because this fix is orthogonal to the above commit.
> > Debugging drto overflow issue we found this strange behavior.
> 
> Okay! Thanks for clarifying.
> 
> > This might be general issue of soft-reset. So I think this should be separate patch.
> > Also if these patches are independent, it will be easier to backport them.
> 
> Should I add a stable tag then?

Sure. The issue can happen since v3.17, because starting with this version function dw_mci_reset was implemented.
Commit 3a33a94ce270 ("mmc: dw_mmc: change to use recommended reset procedure").

Best regards,
Evgeniy Didin


More information about the linux-snps-arc mailing list