[U-Boot] [PATCH] mmc: set tran_speed intead of hard setting

Jaehoon Chung jh80.chung at samsung.com
Mon Oct 25 06:19:30 CEST 2010


This patch use card's tran_speed instead of hard setting value.
I think mmc_set_clock(mmc, 52000000) is not good idea.
because this is hard setting. we need use card's tran_speed.

So If card_caps did't support High speed, we need set card's speed value


Signed-off-by: Jaehoon Chung <jh80.chung at samsung.com>
Signed-off-by: Minkyu Kang <mk7.kang at samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park at samsung.com>


---
 drivers/mmc/mmc.c |    9 +++++----
 1 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/drivers/mmc/mmc.c b/drivers/mmc/mmc.c
index c543d83..f1b5552 100644
--- a/drivers/mmc/mmc.c
+++ b/drivers/mmc/mmc.c
@@ -815,11 +815,12 @@ int mmc_startup(struct mmc *mmc)
 
 		if (mmc->card_caps & MMC_MODE_HS) {
 			if (mmc->card_caps & MMC_MODE_HS_52MHz)
-				mmc_set_clock(mmc, 52000000);
+				mmc->tran_speed = 52000000;
 			else
-				mmc_set_clock(mmc, 26000000);
-		} else
-			mmc_set_clock(mmc, 20000000);
+				mmc->tran_speed = 26000000;
+		}
+
+		mmc_set_clock(mmc, mmc->tran_speed);
 	}
 
 	/* fill in device description */


More information about the U-Boot mailing list