|
@@ -2849,9 +2849,12 @@ int sdhci_add_host(struct sdhci_host *host)
|
|
|
|
|
|
/* If vqmmc regulator and no 1.8V signalling, then there's no UHS */
|
|
|
host->vqmmc = regulator_get(mmc_dev(mmc), "vqmmc");
|
|
|
- if (IS_ERR(host->vqmmc)) {
|
|
|
- pr_info("%s: no vqmmc regulator found\n", mmc_hostname(mmc));
|
|
|
- host->vqmmc = NULL;
|
|
|
+ if (IS_ERR_OR_NULL(host->vqmmc)) {
|
|
|
+ if (PTR_ERR(host->vqmmc) < 0) {
|
|
|
+ pr_info("%s: no vqmmc regulator found\n",
|
|
|
+ mmc_hostname(mmc));
|
|
|
+ host->vqmmc = NULL;
|
|
|
+ }
|
|
|
}
|
|
|
else if (regulator_is_supported_voltage(host->vqmmc, 1800000, 1800000))
|
|
|
regulator_enable(host->vqmmc);
|
|
@@ -2907,9 +2910,12 @@ int sdhci_add_host(struct sdhci_host *host)
|
|
|
ocr_avail = 0;
|
|
|
|
|
|
host->vmmc = regulator_get(mmc_dev(mmc), "vmmc");
|
|
|
- if (IS_ERR(host->vmmc)) {
|
|
|
- pr_info("%s: no vmmc regulator found\n", mmc_hostname(mmc));
|
|
|
- host->vmmc = NULL;
|
|
|
+ if (IS_ERR_OR_NULL(host->vmmc)) {
|
|
|
+ if (PTR_ERR(host->vmmc) < 0) {
|
|
|
+ pr_info("%s: no vmmc regulator found\n",
|
|
|
+ mmc_hostname(mmc));
|
|
|
+ host->vmmc = NULL;
|
|
|
+ }
|
|
|
} else
|
|
|
regulator_enable(host->vmmc);
|
|
|
|