[PATCH] mmc: sdhci: Enable high speed conditional on the correspnding bit

The capabilities register has a field to indicate whether the host supports high speed mode or not. Add high speed host_caps based on this bit instead of enabling it by default.
Signed-off-by: Faiz Abbas faiz_abbas@ti.com --- drivers/mmc/sdhci.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/drivers/mmc/sdhci.c b/drivers/mmc/sdhci.c index 16989dcf05..48d639fe93 100644 --- a/drivers/mmc/sdhci.c +++ b/drivers/mmc/sdhci.c @@ -866,7 +866,10 @@ int sdhci_setup_cfg(struct mmc_config *cfg, struct sdhci_host *host, if (host->quirks & SDHCI_QUIRK_BROKEN_VOLTAGE) cfg->voltages |= host->voltages;
- cfg->host_caps |= MMC_MODE_HS | MMC_MODE_HS_52MHz | MMC_MODE_4BIT; + if (caps & SDHCI_CAN_DO_HISPD) + cfg->host_caps |= MMC_MODE_HS | MMC_MODE_HS_52MHz; + + cfg->host_caps |= MMC_MODE_4BIT;
/* Since Host Controller Version3.0 */ if (SDHCI_GET_VERSION(host) >= SDHCI_SPEC_300) {

Hi,
čt 23. 7. 2020 v 6:12 odesílatel Faiz Abbas faiz_abbas@ti.com napsal:
The capabilities register has a field to indicate whether the host supports high speed mode or not. Add high speed host_caps based on this bit instead of enabling it by default.
Signed-off-by: Faiz Abbas faiz_abbas@ti.com
drivers/mmc/sdhci.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/drivers/mmc/sdhci.c b/drivers/mmc/sdhci.c index 16989dcf05..48d639fe93 100644 --- a/drivers/mmc/sdhci.c +++ b/drivers/mmc/sdhci.c @@ -866,7 +866,10 @@ int sdhci_setup_cfg(struct mmc_config *cfg, struct sdhci_host *host, if (host->quirks & SDHCI_QUIRK_BROKEN_VOLTAGE) cfg->voltages |= host->voltages;
cfg->host_caps |= MMC_MODE_HS | MMC_MODE_HS_52MHz | MMC_MODE_4BIT;
if (caps & SDHCI_CAN_DO_HISPD)
cfg->host_caps |= MMC_MODE_HS | MMC_MODE_HS_52MHz;
cfg->host_caps |= MMC_MODE_4BIT; /* Since Host Controller Version3.0 */ if (SDHCI_GET_VERSION(host) >= SDHCI_SPEC_300) {
-- 2.17.1
Reviewed-by: Michal Simek michal.simek@xilnx.com Tested-by: Michal Simek michal.simek@xilnx.com (zcu104 with sdhci-caps-mask = <0 0x200000>;)
Thanks, Michal

Hi Peng,
st 29. 7. 2020 v 17:07 odesílatel Michal Simek monstr@monstr.eu napsal:
Hi,
čt 23. 7. 2020 v 6:12 odesílatel Faiz Abbas faiz_abbas@ti.com napsal:
The capabilities register has a field to indicate whether the host supports high speed mode or not. Add high speed host_caps based on this bit instead of enabling it by default.
Signed-off-by: Faiz Abbas faiz_abbas@ti.com
drivers/mmc/sdhci.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/drivers/mmc/sdhci.c b/drivers/mmc/sdhci.c index 16989dcf05..48d639fe93 100644 --- a/drivers/mmc/sdhci.c +++ b/drivers/mmc/sdhci.c @@ -866,7 +866,10 @@ int sdhci_setup_cfg(struct mmc_config *cfg, struct sdhci_host *host, if (host->quirks & SDHCI_QUIRK_BROKEN_VOLTAGE) cfg->voltages |= host->voltages;
cfg->host_caps |= MMC_MODE_HS | MMC_MODE_HS_52MHz | MMC_MODE_4BIT;
if (caps & SDHCI_CAN_DO_HISPD)
cfg->host_caps |= MMC_MODE_HS | MMC_MODE_HS_52MHz;
cfg->host_caps |= MMC_MODE_4BIT; /* Since Host Controller Version3.0 */ if (SDHCI_GET_VERSION(host) >= SDHCI_SPEC_300) {
-- 2.17.1
Reviewed-by: Michal Simek michal.simek@xilnx.com Tested-by: Michal Simek michal.simek@xilnx.com (zcu104 with sdhci-caps-mask = <0 0x200000>;)
Peng: Can you please take this patch to your tree? Or I will take it.
Thanks, Michal

Hi,
čt 13. 8. 2020 v 12:48 odesílatel Michal Simek monstr@monstr.eu napsal:
Hi Peng,
st 29. 7. 2020 v 17:07 odesílatel Michal Simek monstr@monstr.eu napsal:
Hi,
čt 23. 7. 2020 v 6:12 odesílatel Faiz Abbas faiz_abbas@ti.com napsal:
The capabilities register has a field to indicate whether the host supports high speed mode or not. Add high speed host_caps based on this bit instead of enabling it by default.
Signed-off-by: Faiz Abbas faiz_abbas@ti.com
drivers/mmc/sdhci.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/drivers/mmc/sdhci.c b/drivers/mmc/sdhci.c index 16989dcf05..48d639fe93 100644 --- a/drivers/mmc/sdhci.c +++ b/drivers/mmc/sdhci.c @@ -866,7 +866,10 @@ int sdhci_setup_cfg(struct mmc_config *cfg, struct sdhci_host *host, if (host->quirks & SDHCI_QUIRK_BROKEN_VOLTAGE) cfg->voltages |= host->voltages;
cfg->host_caps |= MMC_MODE_HS | MMC_MODE_HS_52MHz | MMC_MODE_4BIT;
if (caps & SDHCI_CAN_DO_HISPD)
cfg->host_caps |= MMC_MODE_HS | MMC_MODE_HS_52MHz;
cfg->host_caps |= MMC_MODE_4BIT; /* Since Host Controller Version3.0 */ if (SDHCI_GET_VERSION(host) >= SDHCI_SPEC_300) {
-- 2.17.1
Reviewed-by: Michal Simek michal.simek@xilnx.com Tested-by: Michal Simek michal.simek@xilnx.com (zcu104 with sdhci-caps-mask = <0 0x200000>;)
Peng: Can you please take this patch to your tree? Or I will take it.
I applied this patch but I have fixed typo in subject.
M
participants (2)
-
Faiz Abbas
-
Michal Simek