All of lore.kernel.org
 help / color / mirror / Atom feed
From: Doug Anderson <dianders@chromium.org>
To: Adrian Hunter <adrian.hunter@intel.com>
Cc: Arend Van Spriel <arend.vanspriel@broadcom.com>,
	Ulf Hansson <ulf.hansson@linaro.org>,
	Kalle Valo <kvalo@codeaurora.org>,
	"open list:ARM/Rockchip SoC..."
	<linux-rockchip@lists.infradead.org>,
	Double Lo <double.lo@cypress.com>,
	Brian Norris <briannorris@chromium.org>,
	Madhan Mohan R <madhanmohan.r@cypress.com>,
	Matthias Kaehlcke <mka@chromium.org>,
	Wright Feng <wright.feng@cypress.com>,
	Chi-Hsien Lin <chi-hsien.lin@cypress.com>,
	Jiong Wu <lohengrin1024@gmail.com>,
	Ritesh Harjani <riteshh@codeaurora.org>,
	Linux MMC List <linux-mmc@vger.kernel.org>,
	LKML <linux-kernel@vger.kernel.org>,
	Shawn Lin <shawn.lin@rock-chips.com>,
	Wolfram Sang <wsa+renesas@sang-engineering.com>,
	Avri Altman <avri.altman@wdc.com>, Martin Hicks <mort@bork.org>
Subject: Re: [PATCH 2/3] mmc: core: API for temporarily disabling auto-retuning due to errors
Date: Tue, 28 May 2019 08:42:08 -0700	[thread overview]
Message-ID: <CAD=FV=XV1oudf-xW_s9CQMgF7MryX-UJRrqsUFDQE0DF8Yf80w@mail.gmail.com> (raw)
In-Reply-To: <2d6fa51d-27af-4f90-2bd6-144112ce75ad@intel.com>

Hi,

On Tue, May 28, 2019 at 4:45 AM Adrian Hunter <adrian.hunter@intel.com> wrote:
>
> On 28/05/19 2:21 PM, Arend Van Spriel wrote:
> >
> >
> > On 5/28/2019 12:04 PM, Adrian Hunter wrote:
> >> On 26/05/19 9:42 PM, Arend Van Spriel wrote:
> >>> On 5/18/2019 12:54 AM, Douglas Anderson wrote:
> >>>> Normally when the MMC core sees an "-EILSEQ" error returned by a host
> >>>> controller then it will trigger a retuning of the card.  This is
> >>>> generally a good idea.
> >>>
> >>> Probably a question for Adrian, but how is this retuning scheduled. I recall
> >>> seeing something in mmc_request_done. How about deferring the retuning upon
> >>> a release host or is that too sdio specific.
> >>
> >> Below is what I have been carrying the last 4 years.  But according to
> >> Douglas'
> >> patch, the release would need to be further down.  See 2nd diff below.
> >> Would that work?
> >
> > That makes sense. The loop is needed because the device can be a bit bone
> > headed. So indeed after the loop the device should be awake and able to
> > handle CMD19.

IMO I'd rather not _defer_ the re-tuning.  I believe the correct thing
is to not schedule the re-tuning at all in response to the IO errors.
That's what my patch does.

Specifically the IO errors that come up in this case are not due to
being "out of tune".  They are due to the fact that the other SDIO
card may be in a transitory state and putting garbage on the bus.
Scheduling a retuning for later would be just a waste of time and
needlessly tie up the bus for the retune.

...or am I confused?


> What if tuning is needed to read SBSDIO_FUNC1_SLEEPCSR successfully?

Personally I think this would be pretty unlikely.  If we're at this
point we've already talked to the card quite a bit so we should have a
tuning that's pretty good.  If we're just slightly out of tune then we
should still get through the loop with a few retries and then we can
detect that we're out of tune later, with a more reliable command.

However, if you're worried about this, I can always re-enable the old
behavior if we have already looped a few times.  I suppose I could
increase the loop duration/count slightly too...  Please let me know
one way or the other.


-Doug

  reply	other threads:[~2019-05-28 15:49 UTC|newest]

Thread overview: 43+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-05-17 22:54 [PATCH 0/3] brcmfmac: sdio: Deal better w/ transmission errors waking from sleep Douglas Anderson
2019-05-17 22:54 ` Douglas Anderson
2019-05-17 22:54 ` [PATCH 1/3] brcmfmac: re-enable command decode in sdio_aos for BRCM 4354 Douglas Anderson
2019-05-20  8:09   ` Arend Van Spriel
2019-05-20 18:20     ` Doug Anderson
2019-05-20 18:20       ` Doug Anderson
     [not found]   ` <20190517225420.176893-2-dianders-F7+t8E8rja9g9hUCZPvPmw@public.gmane.org>
2019-05-28 12:18     ` Kalle Valo
2019-05-28 15:51       ` Doug Anderson
2019-05-28 15:51         ` Doug Anderson
2019-05-28 16:09         ` Arend Van Spriel
2019-05-28 16:09           ` Arend Van Spriel
2019-05-28 16:11           ` Arend Van Spriel
2019-05-28 16:11             ` Arend Van Spriel
2019-06-04  3:20             ` Wright Feng
2019-06-04  3:20               ` Wright Feng
2019-06-04 16:01               ` Doug Anderson
2019-06-04 16:01                 ` Doug Anderson
2019-06-04 16:48                 ` Arend Van Spriel
2019-06-04 16:48                   ` Arend Van Spriel
2019-05-29 14:51         ` Kalle Valo
2019-05-29 14:51           ` Kalle Valo
2019-05-28 12:18   ` Kalle Valo
2019-05-28 12:18     ` Kalle Valo
2019-05-17 22:54 ` [PATCH 2/3] mmc: core: API for temporarily disabling auto-retuning due to errors Douglas Anderson
2019-05-17 22:54   ` Douglas Anderson
2019-05-19  9:06   ` Wolfram Sang
2019-05-19  9:06     ` Wolfram Sang
2019-05-20  8:46     ` Arend Van Spriel
2019-05-20  8:52       ` Wolfram Sang
2019-05-20  8:52         ` Wolfram Sang
2019-05-26 18:42   ` Arend Van Spriel
2019-05-26 18:42     ` Arend Van Spriel
2019-05-28 10:04     ` Adrian Hunter
2019-05-28 11:21       ` Arend Van Spriel
2019-05-28 11:45         ` Adrian Hunter
2019-05-28 15:42           ` Doug Anderson [this message]
2019-05-17 22:54 ` [PATCH 3/3] brcmfmac: sdio: Disable auto-tuning around commands expected to fail Douglas Anderson
2019-05-18 15:09 ` [PATCH 0/3] brcmfmac: sdio: Deal better w/ transmission errors waking from sleep Avri Altman
2019-05-18 15:09   ` Avri Altman
2019-05-21  0:23   ` Brian Norris
2019-05-21  0:23     ` Brian Norris
2019-05-20  8:55 ` Arend Van Spriel
2019-05-20  8:55   ` Arend Van Spriel

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CAD=FV=XV1oudf-xW_s9CQMgF7MryX-UJRrqsUFDQE0DF8Yf80w@mail.gmail.com' \
    --to=dianders@chromium.org \
    --cc=adrian.hunter@intel.com \
    --cc=arend.vanspriel@broadcom.com \
    --cc=avri.altman@wdc.com \
    --cc=briannorris@chromium.org \
    --cc=chi-hsien.lin@cypress.com \
    --cc=double.lo@cypress.com \
    --cc=kvalo@codeaurora.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mmc@vger.kernel.org \
    --cc=linux-rockchip@lists.infradead.org \
    --cc=lohengrin1024@gmail.com \
    --cc=madhanmohan.r@cypress.com \
    --cc=mka@chromium.org \
    --cc=mort@bork.org \
    --cc=riteshh@codeaurora.org \
    --cc=shawn.lin@rock-chips.com \
    --cc=ulf.hansson@linaro.org \
    --cc=wright.feng@cypress.com \
    --cc=wsa+renesas@sang-engineering.com \
    --subject='Re: [PATCH 2/3] mmc: core: API for temporarily disabling auto-retuning due to errors' \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.