[<prev] [next>] [day] [month] [year] [list]
Message-Id: <20200710111236.29885-1-benchuanggli@gmail.com>
Date: Fri, 10 Jul 2020 19:12:36 +0800
From: Ben Chuang <benchuanggli@...il.com>
To: adrian.hunter@...el.com, ulf.hansson@...aro.org
Cc: linux-mmc@...r.kernel.org, linux-kernel@...r.kernel.org,
ben.chuang@...esyslogic.com.tw, takahiro.akashi@...aro.org,
greg.tu@...esyslogic.com.tw, Ben Chuang <benchuanggli@...il.com>
Subject: [RFC PATCH V3 18/21] mmc: sdhci-uhs2: add pre-detect_init hook
From: Ben Chuang <ben.chuang@...esyslogic.com.tw>
This "pre" hook for detect_init(), uhs2_pre_detect_init, will be required
to enable UHS-II support, at least, on GL9755.
Signed-off-by: Ben Chuang <ben.chuang@...esyslogic.com.tw>
Signed-off-by: AKASHI Takahiro <takahiro.akashi@...aro.org>
---
drivers/mmc/host/sdhci-uhs2.c | 3 +++
drivers/mmc/host/sdhci.h | 2 ++
2 files changed, 5 insertions(+)
diff --git a/drivers/mmc/host/sdhci-uhs2.c b/drivers/mmc/host/sdhci-uhs2.c
index 3cb13071dd9d..3f7ebf5d18c5 100644
--- a/drivers/mmc/host/sdhci-uhs2.c
+++ b/drivers/mmc/host/sdhci-uhs2.c
@@ -525,6 +525,9 @@ static int sdhci_uhs2_do_detect_init(struct sdhci_host *host)
DBG("%s: begin UHS2 init.\n", __func__);
spin_lock_irqsave(&host->lock, flags);
+ if (host->ops && host->ops->uhs2_pre_detect_init)
+ host->ops->uhs2_pre_detect_init(host);
+
if (sdhci_uhs2_interface_detect(host)) {
pr_warn("%s: cannot detect UHS2 interface.\n",
mmc_hostname(host->mmc));
diff --git a/drivers/mmc/host/sdhci.h b/drivers/mmc/host/sdhci.h
index 927aaba28932..c825a8130bc1 100644
--- a/drivers/mmc/host/sdhci.h
+++ b/drivers/mmc/host/sdhci.h
@@ -721,6 +721,8 @@ struct sdhci_ops {
void (*request_done)(struct sdhci_host *host,
struct mmc_request *mrq);
void (*dump_vendor_regs)(struct sdhci_host *host);
+ /* UHS-2 support */
+ void (*uhs2_pre_detect_init)(struct sdhci_host *host);
};
struct sdhci_uhs2_ops {
--
2.27.0
Powered by blists - more mailing lists