diff mbox series

[4/9] mmc: sdhci-sprd: Implement the get_max_timeout_count() interface

Message ID ae6e23d4de6bb25cd697412f1402036d5ecc9843.1558346019.git.baolin.wang@linaro.org
State Superseded
Headers show
Series None | expand

Commit Message

(Exiting) Baolin Wang May 20, 2019, 10:11 a.m. UTC
Implement the get_max_timeout_count() interface to set the Spredtrum SD
host controller actual maximum timeout count.

Signed-off-by: Baolin Wang <baolin.wang@linaro.org>

---
 drivers/mmc/host/sdhci-sprd.c |    7 +++++++
 1 file changed, 7 insertions(+)

-- 
1.7.9.5

Comments

Adrian Hunter June 3, 2019, 12:34 p.m. UTC | #1
On 20/05/19 1:11 PM, Baolin Wang wrote:
> Implement the get_max_timeout_count() interface to set the Spredtrum SD

> host controller actual maximum timeout count.

> 

> Signed-off-by: Baolin Wang <baolin.wang@linaro.org>


Seems surprising that there isn't a custom ->set_timeout() as well.
Nevertheless:

Acked-by: Adrian Hunter <adrian.hunter@intel.com>


> ---

>  drivers/mmc/host/sdhci-sprd.c |    7 +++++++

>  1 file changed, 7 insertions(+)

> 

> diff --git a/drivers/mmc/host/sdhci-sprd.c b/drivers/mmc/host/sdhci-sprd.c

> index 31ba7d6..d91281d 100644

> --- a/drivers/mmc/host/sdhci-sprd.c

> +++ b/drivers/mmc/host/sdhci-sprd.c

> @@ -285,6 +285,12 @@ static void sdhci_sprd_hw_reset(struct sdhci_host *host)

>  	usleep_range(300, 500);

>  }

>  

> +static unsigned int sdhci_sprd_get_max_timeout_count(struct sdhci_host *host)

> +{

> +	/* The Spredtrum controller actual maximum timeout count is 1 << 31 */

> +	return 1 << 31;

> +}

> +

>  static struct sdhci_ops sdhci_sprd_ops = {

>  	.read_l = sdhci_sprd_readl,

>  	.write_l = sdhci_sprd_writel,

> @@ -296,6 +302,7 @@ static void sdhci_sprd_hw_reset(struct sdhci_host *host)

>  	.reset = sdhci_reset,

>  	.set_uhs_signaling = sdhci_sprd_set_uhs_signaling,

>  	.hw_reset = sdhci_sprd_hw_reset,

> +	.get_max_timeout_count = sdhci_sprd_get_max_timeout_count,

>  };

>  

>  static void sdhci_sprd_request(struct mmc_host *mmc, struct mmc_request *mrq)

>
diff mbox series

Patch

diff --git a/drivers/mmc/host/sdhci-sprd.c b/drivers/mmc/host/sdhci-sprd.c
index 31ba7d6..d91281d 100644
--- a/drivers/mmc/host/sdhci-sprd.c
+++ b/drivers/mmc/host/sdhci-sprd.c
@@ -285,6 +285,12 @@  static void sdhci_sprd_hw_reset(struct sdhci_host *host)
 	usleep_range(300, 500);
 }
 
+static unsigned int sdhci_sprd_get_max_timeout_count(struct sdhci_host *host)
+{
+	/* The Spredtrum controller actual maximum timeout count is 1 << 31 */
+	return 1 << 31;
+}
+
 static struct sdhci_ops sdhci_sprd_ops = {
 	.read_l = sdhci_sprd_readl,
 	.write_l = sdhci_sprd_writel,
@@ -296,6 +302,7 @@  static void sdhci_sprd_hw_reset(struct sdhci_host *host)
 	.reset = sdhci_reset,
 	.set_uhs_signaling = sdhci_sprd_set_uhs_signaling,
 	.hw_reset = sdhci_sprd_hw_reset,
+	.get_max_timeout_count = sdhci_sprd_get_max_timeout_count,
 };
 
 static void sdhci_sprd_request(struct mmc_host *mmc, struct mmc_request *mrq)