Re: mmc: dwmmc: exynos: Warn if HS400 is being used on non-Exynos5420 chipset

From: Alim Akhtar
Date: Fri Jul 15 2016 - 00:16:32 EST


Hi Krzysztof,

On 07/14/2016 06:52 PM, Krzysztof Kozlowski wrote:
Chipsets before Exynos5420 did not support HS400 so if MMC core tries to
configure HS400 timing, this might or might not work. Warn in such
cases because this is DTB misconfiguration.

Signed-off-by: Krzysztof Kozlowski <k.kozlowski@xxxxxxxxxxx>
---

Reviewed-by: Alim Akhtar <alim.akhtar@xxxxxxxxxxx>

drivers/mmc/host/dw_mmc-exynos.c | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/drivers/mmc/host/dw_mmc-exynos.c b/drivers/mmc/host/dw_mmc-exynos.c
index da0ef1765735..7ab3d749b5ae 100644
--- a/drivers/mmc/host/dw_mmc-exynos.c
+++ b/drivers/mmc/host/dw_mmc-exynos.c
@@ -225,8 +225,12 @@ static void dw_mci_exynos_config_hs400(struct dw_mci *host, u32 timing)
* Not supported to configure register
* related to HS400
*/
- if (priv->ctrl_type < DW_MCI_TYPE_EXYNOS5420)
+ if (priv->ctrl_type < DW_MCI_TYPE_EXYNOS5420) {
+ if (timing == MMC_TIMING_MMC_HS400)
+ dev_warn(host->dev,
+ "cannot configure HS400, unsupported chipset\n");
return;
+ }

It is good to have extra bit of debug information handy.

dqs = priv->saved_dqs_en;
strobe = priv->saved_strobe_ctrl;