diff options
author | Yangbo Lu <yangbo.lu@freescale.com> | 2015-09-17 10:27:48 +0800 |
---|---|---|
committer | York Sun <yorksun@freescale.com> | 2015-11-02 08:50:29 -0800 |
commit | bf50be835ed1c0e2875ff7672381944eeab8695d (patch) | |
tree | e8885c6d6d420278b1b51293069ba4ffbc461080 | |
parent | 12486f38419c54b36dc9b2707bc2912734e9fe2d (diff) | |
download | u-boot-bf50be835ed1c0e2875ff7672381944eeab8695d.tar.gz |
mmc: fsl_esdhc: enable EVDD automatic control for SD/MMC Legacy Adapter Card
When detecting SDHC Adapter Card Type 2(SD/MMC Legacy Adapter Card),
enable EVDD automatic control via SDHC_VS. This could support SD card
IO voltage switching for UHS-1 speed mode.
Signed-off-by: Yangbo Lu <yangbo.lu@freescale.com>
Reviewed-by: York Sun <yorksun@freescale.com>
-rw-r--r-- | board/freescale/common/qixis.h | 3 | ||||
-rw-r--r-- | drivers/mmc/fsl_esdhc.c | 3 |
2 files changed, 6 insertions, 0 deletions
diff --git a/board/freescale/common/qixis.h b/board/freescale/common/qixis.h index 450cd0ddbd..0aa56a090e 100644 --- a/board/freescale/common/qixis.h +++ b/board/freescale/common/qixis.h @@ -125,10 +125,13 @@ void qixis_write_i2c(unsigned int reg, u8 value); #define QIXIS_ESDHC_ADAPTER_TYPE_MMC 0x5 /* MMC Card */ #define QIXIS_ESDHC_ADAPTER_TYPE_SD 0x6 /* SD Card Rev2.0 3.0 */ #define QIXIS_ESDHC_NO_ADAPTER 0x7 /* No Card is Present*/ + #define QIXIS_SDCLKIN 0x08 #define QIXIS_SDCLKOUT 0x02 #define QIXIS_DAT5_6_7 0X02 #define QIXIS_DAT4 0X01 + +#define QIXIS_EVDD_BY_SDHC_VS 0x0c #endif #endif diff --git a/drivers/mmc/fsl_esdhc.c b/drivers/mmc/fsl_esdhc.c index 5c20627c1c..c5054d66bd 100644 --- a/drivers/mmc/fsl_esdhc.c +++ b/drivers/mmc/fsl_esdhc.c @@ -753,6 +753,9 @@ void mmc_adapter_card_type_ident(void) QIXIS_WRITE(brdcfg[5], value); break; case QIXIS_ESDHC_ADAPTER_TYPE_SDMMC_LEGACY: + value = QIXIS_READ(pwr_ctl[1]); + value |= QIXIS_EVDD_BY_SDHC_VS; + QIXIS_WRITE(pwr_ctl[1], value); break; case QIXIS_ESDHC_ADAPTER_TYPE_EMMC44: value = QIXIS_READ(brdcfg[5]); |