summaryrefslogtreecommitdiff
path: root/src/soc/mediatek/common/msdc.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/soc/mediatek/common/msdc.c')
-rw-r--r--src/soc/mediatek/common/msdc.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/src/soc/mediatek/common/msdc.c b/src/soc/mediatek/common/msdc.c
index 8208886c20..6e0086ba75 100644
--- a/src/soc/mediatek/common/msdc.c
+++ b/src/soc/mediatek/common/msdc.c
@@ -474,12 +474,16 @@ int mtk_emmc_early_init(void *base, void *top_base)
/* Send CMD1 */
err = mmc_send_op_cond(&media);
- if (err == 0)
- set_early_mmc_wake_status(MMC_STATUS_CMD1_READY);
- else if (err == CARD_IN_PROGRESS)
+ if (err == 0) {
+ if (media.op_cond_response & OCR_HCS)
+ set_early_mmc_wake_status(MMC_STATUS_CMD1_READY_HCS);
+ else
+ set_early_mmc_wake_status(MMC_STATUS_CMD1_READY);
+ } else if (err == CARD_IN_PROGRESS) {
set_early_mmc_wake_status(MMC_STATUS_CMD1_IN_PROGRESS);
- else
+ } else {
goto out_err;
+ }
return 0;