Hi Geert, thanks for the report! > Interestingly, this patch has been part of renesas-drivers since the > 2019-10-15-v5.4-rc3 release, without real issues. Huh, interesting. With which branch does this appear then? linux-next? > Today, it was fairly reproducible, so I managed to bisect it to commit > 7a7dab237027939c ("mmc: tmio: remove workaround for NON_REMOVABLE") in > mmc/next. Reverting this commit fixes the issue. Hmm, probably we should do the revert despite our discusstion here. And then resend the original patch after we figured the cause of this hang. > The issue can also be fixed by: > 1. enabling the hs400_4taps and/or hs400_disabled quirks in > sdhi_quirks_match[], OR > 2. forcing use_4tap = true in renesas_sdhi_check_scc_error(). > > Salvator-X(S) with R-Car H3 ES1.0 & ES2.0, or M3-W ES1.0, the issue > does not show up (probably because of sdhi_quirks_match[]). > > Do you have a clue? Not very clear. M3-N is not a 4tap-device, so this can't be a fix. However, both disabling HS400 as well as using 4tap will prevent the SCC error checking in renesas_sdhi_check_scc_error(). I'd assume the SCC hangs. I am working on an issue where the SCC hangs, but this has to do with always providing the SCC clock (SDnH). I don't really see the connection of that to RuntimePM yet, though :/ Can you test this simple workaround patch instead of the revert just so we get an idea if these issues are related? Thanks, Wolfram From: Wolfram Sang <wsa+renesas@xxxxxxxxxxxxxxxxxxxx> Date: Thu, 27 Jun 2019 11:05:06 +0200 Subject: [PATCH] WIP: clk: renesas: rcar-gen3: enable SDnH clk for HS modes When switching to HS400, we shortly need to switch back to plain HS mode, but we still need the SDnH clock, so the SCC of SDHI can work. So, make sure SDnH is still active, then. FIXME: needs verification from the BSP/HW team! Not-yet-Signed-off-by: Wolfram Sang <wsa+renesas@xxxxxxxxxxxxxxxxxxxx> --- drivers/clk/renesas/rcar-gen3-cpg.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/clk/renesas/rcar-gen3-cpg.c b/drivers/clk/renesas/rcar-gen3-cpg.c index d25c8ba00a65..043ab6ed9d55 100644 --- a/drivers/clk/renesas/rcar-gen3-cpg.c +++ b/drivers/clk/renesas/rcar-gen3-cpg.c @@ -263,7 +263,7 @@ static const struct sd_div_table cpg_sd_div_table[] = { /* CPG_SD_DIV_TABLE_DATA(stp_hck, stp_ck, sd_srcfc, sd_fc, sd_div) */ CPG_SD_DIV_TABLE_DATA(0, 0, 0, 1, 4), CPG_SD_DIV_TABLE_DATA(0, 0, 1, 1, 8), - CPG_SD_DIV_TABLE_DATA(1, 0, 2, 1, 16), + CPG_SD_DIV_TABLE_DATA(0, 0, 2, 1, 16), CPG_SD_DIV_TABLE_DATA(1, 0, 3, 1, 32), CPG_SD_DIV_TABLE_DATA(1, 0, 4, 1, 64), CPG_SD_DIV_TABLE_DATA(0, 0, 0, 0, 2),
Attachment:
signature.asc
Description: PGP signature