Add SDHI quirks for R-Car H3 and RZ/G2H SoC.

Signed-off-by: Biju Das <biju.das...@bp.renesas.com>
Reviewed-by: Lad Prabhakar <prabhakar.mahadev-lad...@bp.renesas.com>
Reviewed-by: Jaehoon chung <jh80.ch...@samsung.com>
---
v8:
  * Added Jaehoon chung's Rb tag.
v7:
  * No Change.
v6:
  * New patch. quirks using soc_device_match.
---
 drivers/mmc/renesas-sdhi.c | 33 ++++++++++++++++++++++++++++++++-
 1 file changed, 32 insertions(+), 1 deletion(-)

diff --git a/drivers/mmc/renesas-sdhi.c b/drivers/mmc/renesas-sdhi.c
index 055fdbbc99..6b3cb02a3e 100644
--- a/drivers/mmc/renesas-sdhi.c
+++ b/drivers/mmc/renesas-sdhi.c
@@ -879,6 +879,16 @@ static const struct renesas_sdhi_quirks 
sdhi_quirks_4tap_nohs400 = {
        .hs400_4taps = true,
 };
 
+static const struct renesas_sdhi_quirks sdhi_quirks_4tap = {
+       .hs400_4taps = true,
+       .hs400_bad_taps = BIT(2) | BIT(3) | BIT(6) | BIT(7),
+};
+
+static const struct renesas_sdhi_quirks sdhi_quirks_r8a7795_es30 = {
+       .hs400_bad_taps = BIT(2) | BIT(3) | BIT(6) | BIT(7),
+       .hs400_calib_table = r8a7795_calib_table,
+};
+
 static const struct renesas_sdhi_quirks sdhi_quirks_r8a7796_es12 = {
        .hs400_4taps = true,
        .hs400_bad_taps = BIT(2) | BIT(3) | BIT(6) | BIT(7),
@@ -920,6 +930,26 @@ static const struct soc_attr sdhi_quirks_match[]  = {
        { .soc_id = "r8a774b1",
          .data = &sdhi_quirks_r8a77965
        },
+       { .soc_id = "r8a774e1",
+         .revision = "ES3.0",
+         .data = &sdhi_quirks_r8a7795_es30
+       },
+       { .soc_id = "r8a7795",
+         .revision = "ES1.0",
+         .data = &sdhi_quirks_4tap_nohs400_b17_dtrend
+       },
+       { .soc_id = "r8a7795",
+         .revision = "ES1.1",
+         .data = &sdhi_quirks_4tap_nohs400_b17_dtrend
+       },
+       { .soc_id = "r8a7795",
+         .revision = "ES2.0",
+         .data = &sdhi_quirks_4tap
+       },
+       { .soc_id = "r8a7795",
+         .revision = "ES3.0",
+         .data = &sdhi_quirks_r8a7795_es30
+       },
        { .soc_id = "r8a7796",
          .revision = "ES1.0",
          .data = &sdhi_quirks_4tap_nohs400_b17_dtrend
@@ -971,7 +1001,8 @@ static void renesas_sdhi_add_quirks(struct tmio_sd_plat 
*plat,
                if (quirks == &sdhi_quirks_r8a7796_es12 ||
                    quirks == &sdhi_quirks_r8a77965)
                        priv->adjust_hs400_offset = 3;
-               else if (quirks == &sdhi_quirks_r8a7796_es13)
+               else if (quirks == &sdhi_quirks_r8a7796_es13 ||
+                        quirks == &sdhi_quirks_r8a7795_es30)
                        priv->adjust_hs400_offset = 0;
        }
 }
-- 
2.17.1

Reply via email to