mmc: core: Add 'card' to drive strength selection callback

In preparation for supporting also eMMC drive strength,
add the 'card' as a parameter so that the callback can
distinguish different types of cards if necessary.

Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
This commit is contained in:
Adrian Hunter 2015-02-06 14:12:54 +02:00 committed by Ulf Hansson
parent fa021cef1a
commit f168359efb
3 changed files with 4 additions and 3 deletions

View File

@ -411,7 +411,7 @@ static int sd_select_driver_type(struct mmc_card *card, u8 *status)
* return what is possible given the options * return what is possible given the options
*/ */
mmc_host_clk_hold(card->host); mmc_host_clk_hold(card->host);
drive_strength = card->host->ops->select_drive_strength( drive_strength = card->host->ops->select_drive_strength(card,
card->sw_caps.uhs_max_dtr, card->sw_caps.uhs_max_dtr,
host_drv_type, card_drv_type, &drv_type); host_drv_type, card_drv_type, &drv_type);
mmc_host_clk_release(card->host); mmc_host_clk_release(card->host);

View File

@ -427,7 +427,7 @@ static void sdio_select_driver_type(struct mmc_card *card)
* information and let the hardware specific code * information and let the hardware specific code
* return what is possible given the options * return what is possible given the options
*/ */
drive_strength = card->host->ops->select_drive_strength( drive_strength = card->host->ops->select_drive_strength(card,
card->sw_caps.uhs_max_dtr, card->sw_caps.uhs_max_dtr,
host_drv_type, card_drv_type, &drv_type); host_drv_type, card_drv_type, &drv_type);

View File

@ -132,7 +132,8 @@ struct mmc_host_ops {
/* Prepare HS400 target operating frequency depending host driver */ /* Prepare HS400 target operating frequency depending host driver */
int (*prepare_hs400_tuning)(struct mmc_host *host, struct mmc_ios *ios); int (*prepare_hs400_tuning)(struct mmc_host *host, struct mmc_ios *ios);
int (*select_drive_strength)(unsigned int max_dtr, int host_drv, int (*select_drive_strength)(struct mmc_card *card,
unsigned int max_dtr, int host_drv,
int card_drv, int *drv_type); int card_drv, int *drv_type);
void (*hw_reset)(struct mmc_host *host); void (*hw_reset)(struct mmc_host *host);
void (*card_event)(struct mmc_host *host); void (*card_event)(struct mmc_host *host);