cip-dev.lists.cip-project.org archive mirror
 help / color / mirror / Atom feed
From: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
To: cip-dev@lists.cip-project.org,
	Nobuhiro Iwamatsu <nobuhiro1.iwamatsu@toshiba.co.jp>,
	Pavel Machek <pavel@denx.de>
Cc: Biju Das <biju.das.jz@bp.renesas.com>
Subject: [PATCH 5.10.y-cip 14/39] mmc: tmio: Add data timeout error detection
Date: Wed, 30 Mar 2022 19:54:29 +0100	[thread overview]
Message-ID: <20220330185454.10887-15-prabhakar.mahadev-lad.rj@bp.renesas.com> (raw)
In-Reply-To: <20220330185454.10887-1-prabhakar.mahadev-lad.rj@bp.renesas.com>

From: Masaharu Hayakawa <masaharu.hayakawa.ry@renesas.com>

commit 35cdcd1268f654f55e2308767349c44bd25d8009 upstream.

Currently, busy timeout is not checked for data transfer command. But,
if the temperature condition changes, the data cannot be acquired
correctly and timeout may occur. Also, we could reproduce an issue by
using mmc_test driver (e.g. "Correct xfer_size at write (start
failure)"). Therefore, this adds timeout error check.

Signed-off-by: Masaharu Hayakawa <masaharu.hayakawa.ry@renesas.com>
[saito: rework commit message.]
Signed-off-by: Takeshi Saito <takeshi.saito.xv@renesas.com>
[shimoda: rebase, add commit description]
Signed-off-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Reviewed-by: Wolfram Sang <wsa+renesas@sang-engineering.com>
Tested-by: Wolfram Sang <wsa+renesas@sang-engineering.com>
Link: https://lore.kernel.org/r/1608708622-29668-2-git-send-email-yoshihiro.shimoda.uh@renesas.com
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
Signed-off-by: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
---
 drivers/mmc/host/tmio_mmc_core.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/drivers/mmc/host/tmio_mmc_core.c b/drivers/mmc/host/tmio_mmc_core.c
index 85dc5b9f4e60..e694d98faed1 100644
--- a/drivers/mmc/host/tmio_mmc_core.c
+++ b/drivers/mmc/host/tmio_mmc_core.c
@@ -477,8 +477,10 @@ static void tmio_mmc_data_irq(struct tmio_mmc_host *host, unsigned int stat)
 	if (!data)
 		goto out;
 
-	if (stat & TMIO_STAT_CRCFAIL || stat & TMIO_STAT_STOPBIT_ERR ||
-	    stat & TMIO_STAT_TXUNDERRUN)
+	if (stat & TMIO_STAT_DATATIMEOUT)
+		data->error = -ETIMEDOUT;
+	else if (stat & TMIO_STAT_CRCFAIL || stat & TMIO_STAT_STOPBIT_ERR ||
+		 stat & TMIO_STAT_TXUNDERRUN)
 		data->error = -EILSEQ;
 	if (host->dma_on && (data->flags & MMC_DATA_WRITE)) {
 		u32 status = sd_ctrl_read16_and_16_as_32(host, CTL_STATUS);
-- 
2.17.1



  parent reply	other threads:[~2022-03-30 18:55 UTC|newest]

Thread overview: 58+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-03-30 18:54 [PATCH 5.10.y-cip 00/39] Add SD/eMMC support for Renesas RZ/G2L SoC Lad Prabhakar
2022-03-30 18:54 ` [PATCH 5.10.y-cip 01/39] mmc: renesas_sdhi: probe into TMIO after SCC parameters have been setup Lad Prabhakar
2022-03-30 18:54 ` [PATCH 5.10.y-cip 02/39] mmc: renesas_sdhi: populate SCC pointer at the proper place Lad Prabhakar
2022-03-30 18:54 ` [PATCH 5.10.y-cip 03/39] mmc: renesas_sdhi: simplify reset routine a little Lad Prabhakar
2022-03-30 18:54 ` [PATCH 5.10.y-cip 04/39] mmc: renesas_sdhi: clear TAPEN when resetting, too Lad Prabhakar
2022-03-31 10:13   ` Pavel Machek
2022-04-01 19:18     ` Prabhakar Mahadev Lad
2022-03-30 18:54 ` [PATCH 5.10.y-cip 05/39] mmc: renesas_sdhi: merge the SCC reset functions Lad Prabhakar
2022-03-30 18:54 ` [PATCH 5.10.y-cip 06/39] mmc: renesas_sdhi: remove superfluous SCLKEN Lad Prabhakar
2022-03-30 18:54 ` [PATCH 5.10.y-cip 07/39] mmc: renesas_sdhi: improve HOST_MODE usage Lad Prabhakar
2022-03-30 18:54 ` [PATCH 5.10.y-cip 08/39] mmc: renesas_sdhi: don't hardcode SDIF values Lad Prabhakar
2022-03-30 18:54 ` [PATCH 5.10.y-cip 09/39] mmc: renesas_sdhi: sort includes Lad Prabhakar
2022-03-31 10:14   ` Pavel Machek
2022-04-01 19:19     ` Prabhakar Mahadev Lad
2022-03-30 18:54 ` [PATCH 5.10.y-cip 10/39] mmc: tmio: set max_busy_timeout Lad Prabhakar
2022-03-30 18:54 ` [PATCH 5.10.y-cip 11/39] mmc: tmio: add hook for custom busy_wait calculation Lad Prabhakar
2022-03-30 18:54 ` [PATCH 5.10.y-cip 12/39] mmc: renesas_sdhi: populate hook for longer busy_wait Lad Prabhakar
2022-03-30 18:54 ` [PATCH 5.10.y-cip 13/39] mmc: renesas_internal_dmac: add pre_req and post_req support Lad Prabhakar
2022-03-31 10:16   ` Pavel Machek
2022-04-01 19:20     ` Prabhakar Mahadev Lad
2022-03-30 18:54 ` Lad Prabhakar [this message]
2022-03-30 18:54 ` [PATCH 5.10.y-cip 15/39] mmc: renesas_sdhi: Add a condition of cmd/data timeout for retune Lad Prabhakar
2022-03-31 10:18   ` Pavel Machek
2022-04-01 19:27     ` Prabhakar Mahadev Lad
2022-03-30 18:54 ` [PATCH 5.10.y-cip 16/39] mmc: tmio: support custom irq masks Lad Prabhakar
2022-03-30 18:54 ` [PATCH 5.10.y-cip 17/39] mmc: renesas_sdhi: use custom mask for TMIO_MASK_ALL Lad Prabhakar
2022-03-30 18:54 ` [PATCH 5.10.y-cip 18/39] mmc: tmio: abort DMA before reset Lad Prabhakar
2022-03-30 18:54 ` [PATCH 5.10.y-cip 19/39] mmc: tmio: restore bus width when resetting Lad Prabhakar
2022-03-30 18:54 ` [PATCH 5.10.y-cip 20/39] mmc: renesas_sdhi: break SCC reset into own function Lad Prabhakar
2022-03-30 18:54 ` [PATCH 5.10.y-cip 21/39] mmc: renesas_sdhi: do hard reset if possible Lad Prabhakar
2022-03-31 10:20   ` Pavel Machek
2022-04-01 19:29     ` Prabhakar Mahadev Lad
2022-03-30 18:54 ` [PATCH 5.10.y-cip 22/39] mmc: tmio: always flag retune when resetting and a card is present Lad Prabhakar
2022-03-30 18:54 ` [PATCH 5.10.y-cip 23/39] mmc: tmio: always restore irq register Lad Prabhakar
2022-03-30 18:54 ` [PATCH 5.10.y-cip 24/39] mmc: tmio: reenable card irqs after the reset callback Lad Prabhakar
2022-03-30 18:54 ` [PATCH 5.10.y-cip 25/39] mmc: tmio: reinit card irqs in reset routine Lad Prabhakar
2022-03-30 18:54 ` [PATCH 5.10.y-cip 26/39] clk: renesas: rzg2l: Add SDHI clk mux support Lad Prabhakar
2022-03-30 18:54 ` [PATCH 5.10.y-cip 27/39] clk: renesas: rzg2l: Add missing kerneldoc for resets Lad Prabhakar
2022-03-30 18:54 ` [PATCH 5.10.y-cip 28/39] clk: renesas: rzg2l: Check return value of pm_genpd_init() Lad Prabhakar
2022-03-30 18:54 ` [PATCH 5.10.y-cip 29/39] clk: renesas: rzg2l: propagate return value of_genpd_add_provider_simple() Lad Prabhakar
2022-03-30 18:54 ` [PATCH 5.10.y-cip 30/39] clk: renesas: r9a07g044: Add SDHI clock and reset entries Lad Prabhakar
2022-03-30 18:54 ` [PATCH 5.10.y-cip 31/39] dt-bindings: Fix errors in 'if' schemas Lad Prabhakar
2022-03-30 18:54 ` [PATCH 5.10.y-cip 32/39] dt-bindings: Drop redundant minItems/maxItems Lad Prabhakar
2022-03-31 10:22   ` Pavel Machek
2022-04-01 19:32     ` Prabhakar Mahadev Lad
2022-03-30 18:54 ` [PATCH 5.10.y-cip 33/39] dt-bindings: mmc: renesas,sdhi: Fix dtbs-check warning Lad Prabhakar
2022-03-30 18:54 ` [PATCH 5.10.y-cip 34/39] dt-bindings: mmc: renesas,sdhi: Document RZ/G2L bindings Lad Prabhakar
2022-03-30 18:54 ` [PATCH 5.10.y-cip 35/39] dt-bindings: mmc: renesas,sdhi: Add optional SDnH clock Lad Prabhakar
2022-03-30 18:54 ` [PATCH 5.10.y-cip 36/39] dt-bindings: mmc: renesas,sdhi: Rename RZ/G2L clocks Lad Prabhakar
2022-03-30 18:54 ` [PATCH 5.10.y-cip 37/39] arm64: dts: renesas: r9a07g044: Add SDHI nodes Lad Prabhakar
2022-03-30 18:54 ` [PATCH 5.10.y-cip 38/39] arm64: dts: renesas: rzg2l-smarc-som: Enable eMMC on SMARC platform Lad Prabhakar
2022-03-30 18:54 ` [PATCH 5.10.y-cip 39/39] arm64: dts: renesas: rzg2l-smarc: Enable microSD " Lad Prabhakar
2022-03-31  8:58 ` [PATCH 5.10.y-cip 00/39] Add SD/eMMC support for Renesas RZ/G2L SoC Pavel Machek
2022-03-31  9:28 ` Pavel Machek
2022-03-31 11:29   ` Prabhakar Mahadev Lad
2022-03-31 12:49     ` Pavel Machek
2022-03-31 23:35       ` nobuhiro1.iwamatsu
2022-04-01 19:35   ` Prabhakar Mahadev Lad

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=20220330185454.10887-15-prabhakar.mahadev-lad.rj@bp.renesas.com \
    --to=prabhakar.mahadev-lad.rj@bp.renesas.com \
    --cc=biju.das.jz@bp.renesas.com \
    --cc=cip-dev@lists.cip-project.org \
    --cc=nobuhiro1.iwamatsu@toshiba.co.jp \
    --cc=pavel@denx.de \
    /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
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).