On 19 August 2014 05:02, Chuanxiao Dong <[email protected]> wrote:
> Right now enable 1.2v IO voltage for SDHC is by using vqmmc.
> Thus for the host which doesn't have vqmmc, or its vqmmc does
> not support 1.2v, directly use MMC_CAP2_HS200 may cause HS200
> failure.
>
> So needs to check if vqmmc is able to support 1.2v. If it does
> not support, disable 1.2v IO for HS200.
>
> Signed-off-by: Chuanxiao Dong <[email protected]>
Thanks! Applied for next!
Kind regards
Uffe
> ---
> Changelog V2: rebase this patch, and use IS_ERR to check vqmmc.
>
> drivers/mmc/host/sdhci.c | 7 ++++++-
> 1 file changed, 6 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/mmc/host/sdhci.c b/drivers/mmc/host/sdhci.c
> index 4cc2ff9..a23738c 100644
> --- a/drivers/mmc/host/sdhci.c
> +++ b/drivers/mmc/host/sdhci.c
> @@ -3009,8 +3009,13 @@ int sdhci_add_host(struct sdhci_host *host)
> /* SD3.0: SDR104 is supported so (for eMMC) the caps2
> * field can be promoted to support HS200.
> */
> - if (!(host->quirks2 & SDHCI_QUIRK2_BROKEN_HS200))
> + if (!(host->quirks2 & SDHCI_QUIRK2_BROKEN_HS200)) {
> mmc->caps2 |= MMC_CAP2_HS200;
> + if (IS_ERR(mmc->supply.vqmmc) ||
> + !regulator_is_supported_voltage
> + (mmc->supply.vqmmc, 1100000, 1300000))
> + mmc->caps2 &= ~MMC_CAP2_HS200_1_2V_SDR;
> + }
> } else if (caps[1] & SDHCI_SUPPORT_SDR50)
> mmc->caps |= MMC_CAP_UHS_SDR50;
>
> --
> 1.7.10.4
>
--
To unsubscribe from this list: send the line "unsubscribe linux-mmc" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html