Skip to content

mmc: tmio: fix reset operation

Niklas Söderlund linux-renesas-soc 2 versions – In review

Get series with b4
b4 am [email protected]

Versions newest first · linked by author and title

  1. v3 Latest3 patches 15 repliesIn review
  2. v23 patches 4 repliesSuperseded

Patches in v3 No applies recorded yet

#Subject and filesSizeRepliesApplied
1/3mmc: tmio: enable module clock before resetting when resumingdrivers/mmc/host/tmio_mmc_core.c+1 -13 replies
2/3mmc: tmio: fix reset operationdrivers/mmc/host/tmio_mmc_core.c+15 -113 replies
3/3mmc: renesas_sdhi: add initial setting of interrupt mask registerdrivers/mmc/host/renesas_sdhi_core.c drivers/mmc/host/tmio_mmc.h+5 -02 replies

Reviews trailers per patch

All 3 patches have a Reviewed-by or Acked-by.

PatchWolfram SangMasahiro YamadaSimon Horman
SeriesT-b
1/3R-b R-b R-b
2/3R-b
3/3R-b R-b

Trailers given in replies are filled; those carried in the patches from earlier versions are outlined with dashes. Scroll the table sideways for all 3 reviewers.

Read the v3 thread

Cover letter [PATCH v3 0/3] mmc: tmio: fix reset operation

From: Niklas Söderlund <[email protected]>

Hi,

While looking at the Renesas BSP kernel I found patches which improves the state of the hardware at probe and after runtime resume.

Patch 1/3 make sure the module clock is enabled after resuming before register are accessed. Patch 2/3 is the real change in this series and brings in reset of the vendor specific callback when resetting (SCC in the Renesas case). While 3/3 simply make sure that the IRQ mask for Renesas boards (Gen2 and later) are in a good shape after probe (and reset).

In addition to addressing the state after resuming it helped unbreak a SD card I have which are very problematic on Koelsch. Without this series inserting the card results in:

sh_mobile_sdhi ee100000.sd: timeout waiting for hardware interrupt (CMD19) sh_mobile_sdhi ee100000.sd: timeout waiting for hardware interrupt (CMD19) sh_mobile_sdhi ee100000.sd: timeout waiting for hardware interrupt (CMD19) sh_mobile_sdhi ee100000.sd: timeout waiting for hardware interrupt (CMD19) sh_mobile_sdhi ee100000.sd: timeout waiting for hardware interrupt (CMD19) sh_mobile_sdhi ee100000.sd: timeout waiting for hardware interrupt (CMD19) sh_mobile_sdhi ee100000.sd: timeout waiting for hardware interrupt (CMD19) sh_mobile_sdhi ee100000.sd: timeout waiting for hardware interrupt (CMD19) sh_mobile_sdhi ee100000.sd: timeout waiting for hardware interrupt (CMD19) sh_mobile_sdhi ee100000.sd: timeout waiting for hardware interrupt (CMD19) sh_mobile_sdhi ee100000.sd: Tuning procedure failed
mmc0: tuning execution failed: -5
mmc0: error -5 whilst initialising SD card
sh_mobile_sdhi ee100000.sd: timeout waiting for hardware interrupt (CMD19)

While with this series applied (patch 2/3):

sh_mobile_sdhi ee100000.sd: timeout waiting for hardware interrupt (CMD19)
mmc0: new ultra high speed SDR50 SDHC card at address aaaa
mmcblk0: mmc0:aaaa SU04G 3.69 GiB
mmcblk0: p1 p2

Patch 1/3 was previously part of 2/3 but as it deals with a unrelated issue it's here broken out to a separate patch. Patch 3/3 have once been posted outside this series bit after comments from Wolfram it's brought back as it now deepens on 2/3.

Most changes in this series are based on similar work from Masaharu Hayakawa but for this version all changes now differ quiet a lot from his work. All mails sent to him bounce with a "Undelivered Mail Returned to Sender" error. I therefor felt the need to claim authorship as I don't want to post blame of my (potential) mistakes on some else.

Niklas Söderlund (3):
mmc: tmio: enable module clock before resetting when resuming
mmc: tmio: fix reset operation
mmc: renesas_sdhi: add initial setting of interrupt mask register

 drivers/mmc/host/renesas_sdhi_core.c |  4 ++++
 drivers/mmc/host/tmio_mmc.h          |  1 +
 drivers/mmc/host/tmio_mmc_core.c     | 26 +++++++++++++++-----------
 3 files changed, 20 insertions(+), 11 deletions(-)
Signature · 1 line
2.19.1