Skip to content

Commit cb84964

Browse files
ahunter6storulf
authored andcommitted
mmc: sdhci: Add a callback to select drive strength
Add a callbak to let host drivers select drive strength. Signed-off-by: Adrian Hunter <adrian.hunter@intel.com> Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
1 parent cc4f414 commit cb84964

File tree

2 files changed

+17
-0
lines changed

2 files changed

+17
-0
lines changed

drivers/mmc/host/sdhci.c

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2048,6 +2048,18 @@ static int sdhci_execute_tuning(struct mmc_host *mmc, u32 opcode)
20482048
return err;
20492049
}
20502050

2051+
static int sdhci_select_drive_strength(struct mmc_card *card,
2052+
unsigned int max_dtr, int host_drv,
2053+
int card_drv, int *drv_type)
2054+
{
2055+
struct sdhci_host *host = mmc_priv(card->host);
2056+
2057+
if (!host->ops->select_drive_strength)
2058+
return 0;
2059+
2060+
return host->ops->select_drive_strength(host, card, max_dtr, host_drv,
2061+
card_drv, drv_type);
2062+
}
20512063

20522064
static void sdhci_enable_preset_value(struct sdhci_host *host, bool enable)
20532065
{
@@ -2192,6 +2204,7 @@ static const struct mmc_host_ops sdhci_ops = {
21922204
.start_signal_voltage_switch = sdhci_start_signal_voltage_switch,
21932205
.prepare_hs400_tuning = sdhci_prepare_hs400_tuning,
21942206
.execute_tuning = sdhci_execute_tuning,
2207+
.select_drive_strength = sdhci_select_drive_strength,
21952208
.card_event = sdhci_card_event,
21962209
.card_busy = sdhci_card_busy,
21972210
};

drivers/mmc/host/sdhci.h

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -538,6 +538,10 @@ struct sdhci_ops {
538538
void (*platform_init)(struct sdhci_host *host);
539539
void (*card_event)(struct sdhci_host *host);
540540
void (*voltage_switch)(struct sdhci_host *host);
541+
int (*select_drive_strength)(struct sdhci_host *host,
542+
struct mmc_card *card,
543+
unsigned int max_dtr, int host_drv,
544+
int card_drv, int *drv_type);
541545
};
542546

543547
#ifdef CONFIG_MMC_SDHCI_IO_ACCESSORS

0 commit comments

Comments
 (0)