@@ -2897,8 +2897,8 @@ int sdhci_add_host(struct sdhci_host *host)
}
} else {
regulator_enable(host->vqmmc);
- if (!regulator_is_supported_voltage(host->vqmmc, 1700000,
- 1950000))
+ if ((regulator_is_supported_voltage(host->vqmmc, 1700000,
+ 1950000) <= 0) && !regulator_is_dummy(host->vqmmc))
caps[1] &= ~(SDHCI_SUPPORT_SDR104 |
SDHCI_SUPPORT_SDR50 |
SDHCI_SUPPORT_DDR50);
@@ -2965,7 +2965,7 @@ int sdhci_add_host(struct sdhci_host *host)
}
#ifdef CONFIG_REGULATOR
- if (host->vmmc) {
+ if (host->vmmc && !regulator_is_dummy(host->vmmc)) {
ret = regulator_is_supported_voltage(host->vmmc, 2700000,
3600000);
if ((ret <= 0) || (!(caps[0] & SDHCI_CAN_VDD_330)))
Should consider the case that dummy regulator is used for host->vmmc and host->vqmmc and skip the regulator voltage check. Signed-off-by: Kevin Liu <kliu5@marvell.com> --- drivers/mmc/host/sdhci.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-)