diff mbox

[v3,2/4] mmc: tmio: Fix SCC error detection

Message ID 20180717145216.16840-3-niklas.soderlund+renesas@ragnatech.se (mailing list archive)
State New, archived
Headers show

Commit Message

Niklas Söderlund July 17, 2018, 2:52 p.m. UTC
From: Masaharu Hayakawa <masaharu.hayakawa.ry@renesas.com>

SDR104 and HS200 need to check for SCC error. If SCC error is detected,
retuning is necessary.

Signed-off-by: Masaharu Hayakawa <masaharu.hayakawa.ry@renesas.com>
[Niklas: update commit message]
Signed-off-by: Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se>
Reviewed-by: Simon Horman <horms+renesas@verge.net.au>
Reviewed-by: Wolfram Sang <wsa+renesas@sang-engineering.com>
Tested-by: Wolfram Sang <wsa+renesas@sang-engineering.com>
---
 drivers/mmc/host/tmio_mmc_core.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

Comments

Wolfram Sang July 24, 2018, 10:44 a.m. UTC | #1
On Tue, Jul 17, 2018 at 04:52:14PM +0200, Niklas Söderlund wrote:
> From: Masaharu Hayakawa <masaharu.hayakawa.ry@renesas.com>
> 
> SDR104 and HS200 need to check for SCC error. If SCC error is detected,
> retuning is necessary.
> 
> Signed-off-by: Masaharu Hayakawa <masaharu.hayakawa.ry@renesas.com>
> [Niklas: update commit message]
> Signed-off-by: Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se>
> Reviewed-by: Simon Horman <horms+renesas@verge.net.au>
> Reviewed-by: Wolfram Sang <wsa+renesas@sang-engineering.com>
> Tested-by: Wolfram Sang <wsa+renesas@sang-engineering.com>

This patch breaks HS400 on my M3-N again :(
Simon Horman July 24, 2018, 11:03 a.m. UTC | #2
On Tue, Jul 24, 2018 at 12:44:59PM +0200, Wolfram Sang wrote:
> On Tue, Jul 17, 2018 at 04:52:14PM +0200, Niklas Söderlund wrote:
> > From: Masaharu Hayakawa <masaharu.hayakawa.ry@renesas.com>
> > 
> > SDR104 and HS200 need to check for SCC error. If SCC error is detected,
> > retuning is necessary.
> > 
> > Signed-off-by: Masaharu Hayakawa <masaharu.hayakawa.ry@renesas.com>
> > [Niklas: update commit message]
> > Signed-off-by: Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se>
> > Reviewed-by: Simon Horman <horms+renesas@verge.net.au>
> > Reviewed-by: Wolfram Sang <wsa+renesas@sang-engineering.com>
> > Tested-by: Wolfram Sang <wsa+renesas@sang-engineering.com>
> 
> This patch breaks HS400 on my M3-N again :(
> 

I think that may be because renesas_sdhi_check_scc_error needs
to be taught about 8-tap HS400.
--
To unsubscribe from this list: send the line "unsubscribe linux-mmc" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Wolfram Sang July 24, 2018, 11:17 a.m. UTC | #3
> > This patch breaks HS400 on my M3-N again :(
> > 
> 
> I think that may be because renesas_sdhi_check_scc_error needs
> to be taught about 8-tap HS400.

Right, so patch 2 kind of depends on patch 4?

Niklas, how is your status on reworking patch 4?
Simon Horman July 24, 2018, 12:17 p.m. UTC | #4
On Tue, Jul 24, 2018 at 01:17:10PM +0200, Wolfram Sang wrote:
> 
> > > This patch breaks HS400 on my M3-N again :(
> > > 
> > 
> > I think that may be because renesas_sdhi_check_scc_error needs
> > to be taught about 8-tap HS400.
> 
> Right, so patch 2 kind of depends on patch 4?

Yes, I think so. Sorry for missing that in my earlier review.

> Niklas, how is your status on reworking patch 4?


--
To unsubscribe from this list: send the line "unsubscribe linux-mmc" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

diff --git a/drivers/mmc/host/tmio_mmc_core.c b/drivers/mmc/host/tmio_mmc_core.c
index 72ac806e0c762d83..81883bc08524e441 100644
--- a/drivers/mmc/host/tmio_mmc_core.c
+++ b/drivers/mmc/host/tmio_mmc_core.c
@@ -920,8 +920,8 @@  static void tmio_mmc_finish_request(struct tmio_mmc_host *host)
 	if (mrq->cmd->error || (mrq->data && mrq->data->error))
 		tmio_mmc_abort_dma(host);
 
-	if (host->check_scc_error)
-		host->check_scc_error(host);
+	if (host->check_scc_error && host->check_scc_error(host))
+		mrq->cmd->error = -EILSEQ;
 
 	/* If SET_BLOCK_COUNT, continue with main command */
 	if (host->mrq && !mrq->cmd->error) {