diff options
Diffstat (limited to 'drivers/mmc')
| -rw-r--r-- | drivers/mmc/mmc.c | 6 | ||||
| -rw-r--r-- | drivers/mmc/s5p_mmc.c | 2 | 
2 files changed, 6 insertions, 2 deletions
| diff --git a/drivers/mmc/mmc.c b/drivers/mmc/mmc.c index 4e4e0fb0f..cbd75673b 100644 --- a/drivers/mmc/mmc.c +++ b/drivers/mmc/mmc.c @@ -531,6 +531,10 @@ int mmc_send_op_cond(struct mmc *mmc)  				(mmc->voltages &  				(cmd.response[0] & OCR_VOLTAGE_MASK)) |  				(cmd.response[0] & OCR_ACCESS_MODE)); + +		if (mmc->host_caps & MMC_MODE_HC) +			cmd.cmdarg |= OCR_HCS; +  		cmd.flags = 0;  		err = mmc_send_cmd(mmc, &cmd, NULL); @@ -1010,7 +1014,7 @@ int mmc_startup(struct mmc *mmc)  			capacity = ext_csd[212] << 0 | ext_csd[213] << 8 |  				   ext_csd[214] << 16 | ext_csd[215] << 24;  			capacity *= 512; -			if (capacity > 2 * 1024 * 1024 * 1024) +			if ((capacity >> 20) > 2 * 1024)  				mmc->capacity = capacity;  		} diff --git a/drivers/mmc/s5p_mmc.c b/drivers/mmc/s5p_mmc.c index 280738fbf..f1368132a 100644 --- a/drivers/mmc/s5p_mmc.c +++ b/drivers/mmc/s5p_mmc.c @@ -462,7 +462,7 @@ static int s5p_mmc_initialize(int dev_index, int bus_width)  		mmc->host_caps = MMC_MODE_8BIT;  	else  		mmc->host_caps = MMC_MODE_4BIT; -	mmc->host_caps |= MMC_MODE_HS_52MHz | MMC_MODE_HS; +	mmc->host_caps |= MMC_MODE_HS_52MHz | MMC_MODE_HS | MMC_MODE_HC;  	mmc->f_min = 400000;  	mmc->f_max = 52000000; |