diff options
author | Adrian Hunter <adrian.hunter@intel.com> | 2015-02-06 13:12:54 +0100 |
---|---|---|
committer | Ulf Hansson <ulf.hansson@linaro.org> | 2015-06-01 09:07:12 +0200 |
commit | f168359efbb99d6f8591bb666d6510bb78df2d07 (patch) | |
tree | 95ca3f2c62eccc4e6115103db86150c6f024ff7d | |
parent | mmc: core: Simplify card drive strength mask (diff) | |
download | linux-f168359efbb99d6f8591bb666d6510bb78df2d07.tar.xz linux-f168359efbb99d6f8591bb666d6510bb78df2d07.zip |
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>
-rw-r--r-- | drivers/mmc/core/sd.c | 2 | ||||
-rw-r--r-- | drivers/mmc/core/sdio.c | 2 | ||||
-rw-r--r-- | include/linux/mmc/host.h | 3 |
3 files changed, 4 insertions, 3 deletions
diff --git a/drivers/mmc/core/sd.c b/drivers/mmc/core/sd.c index 9b72ea6b3177..63f9163b8dda 100644 --- a/drivers/mmc/core/sd.c +++ b/drivers/mmc/core/sd.c @@ -411,7 +411,7 @@ static int sd_select_driver_type(struct mmc_card *card, u8 *status) * return what is possible given the options */ 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, host_drv_type, card_drv_type, &drv_type); mmc_host_clk_release(card->host); diff --git a/drivers/mmc/core/sdio.c b/drivers/mmc/core/sdio.c index ef82f3d029e8..d3d13047f316 100644 --- a/drivers/mmc/core/sdio.c +++ b/drivers/mmc/core/sdio.c @@ -427,7 +427,7 @@ static void sdio_select_driver_type(struct mmc_card *card) * information and let the hardware specific code * 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, host_drv_type, card_drv_type, &drv_type); diff --git a/include/linux/mmc/host.h b/include/linux/mmc/host.h index da33d18c66c8..1369e54faeb7 100644 --- a/include/linux/mmc/host.h +++ b/include/linux/mmc/host.h @@ -132,7 +132,8 @@ struct mmc_host_ops { /* Prepare HS400 target operating frequency depending host driver */ 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); void (*hw_reset)(struct mmc_host *host); void (*card_event)(struct mmc_host *host); |