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 02/39] mmc: renesas_sdhi: populate SCC pointer at the proper place
Date: Wed, 30 Mar 2022 19:54:17 +0100	[thread overview]
Message-ID: <20220330185454.10887-3-prabhakar.mahadev-lad.rj@bp.renesas.com> (raw)
In-Reply-To: <20220330185454.10887-1-prabhakar.mahadev-lad.rj@bp.renesas.com>

From: Wolfram Sang <wsa+renesas@sang-engineering.com>

commit d14ac691bb6f6ebaa7eeec21ca04dd47300ff5b6 upstream.

The SCC pointer is currently filled whenever the SoC is Gen2+. This is
wrong because there is a Gen2-variant without SCC (SDHI_VER_GEN2_SDR50).
We have been lucky because the writes to unintended registers have not
caused problems so far. But further refactoring work exposed the
problem. So, move the pointer initialization to the place where we know
that the SDHI instance supports tuning. And also populate the 'reset'
pointer unconditionally to make sure the interrupt enable register is
always properly set for Gen2+.

Signed-off-by: Wolfram Sang <wsa+renesas@sang-engineering.com>
Reviewed-by: Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se>
Reviewed-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Tested-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Link: https://lore.kernel.org/r/20201110142058.36393-4-wsa+renesas@sang-engineering.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/renesas_sdhi_core.c | 7 ++-----
 1 file changed, 2 insertions(+), 5 deletions(-)

diff --git a/drivers/mmc/host/renesas_sdhi_core.c b/drivers/mmc/host/renesas_sdhi_core.c
index 9dc9824e1f76..fc210c314e6c 100644
--- a/drivers/mmc/host/renesas_sdhi_core.c
+++ b/drivers/mmc/host/renesas_sdhi_core.c
@@ -1012,11 +1012,7 @@ int renesas_sdhi_probe(struct platform_device *pdev,
 		host->ops.start_signal_voltage_switch =
 			renesas_sdhi_start_signal_voltage_switch;
 		host->sdcard_irq_setbit_mask = TMIO_STAT_ALWAYS_SET_27;
-
-		if (of_data && of_data->scc_offset) {
-			priv->scc_ctl = host->ctl + of_data->scc_offset;
-			host->reset = renesas_sdhi_reset;
-		}
+		host->reset = renesas_sdhi_reset;
 	}
 
 	/* Orginally registers were 16 bit apart, could be 32 or 64 nowadays */
@@ -1096,6 +1092,7 @@ int renesas_sdhi_probe(struct platform_device *pdev,
 		if (!hit)
 			dev_warn(&host->pdev->dev, "Unknown clock rate for tuning\n");
 
+		priv->scc_ctl = host->ctl + of_data->scc_offset;
 		host->check_retune = renesas_sdhi_check_scc_error;
 		host->ops.execute_tuning = renesas_sdhi_execute_tuning;
 		host->ops.prepare_hs400_tuning = renesas_sdhi_prepare_hs400_tuning;
-- 
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 ` Lad Prabhakar [this message]
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 ` [PATCH 5.10.y-cip 14/39] mmc: tmio: Add data timeout error detection Lad Prabhakar
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-3-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).