mirror of https://gitee.com/openkylin/linux.git
mmc: sdhci: add eMMC hardware reset support
Add an SDHCI operation for hardware reset and connect it to the host controller operation. Signed-off-by: Adrian Hunter <adrian.hunter@intel.com> Signed-off-by: Chris Ball <cjb@laptop.org>
This commit is contained in:
parent
b2499518b5
commit
20758b66dc
|
@ -1471,6 +1471,14 @@ static int sdhci_get_ro(struct mmc_host *mmc)
|
|||
return 0;
|
||||
}
|
||||
|
||||
static void sdhci_hw_reset(struct mmc_host *mmc)
|
||||
{
|
||||
struct sdhci_host *host = mmc_priv(mmc);
|
||||
|
||||
if (host->ops && host->ops->hw_reset)
|
||||
host->ops->hw_reset(host);
|
||||
}
|
||||
|
||||
static void sdhci_enable_sdio_irq(struct mmc_host *mmc, int enable)
|
||||
{
|
||||
struct sdhci_host *host;
|
||||
|
@ -1805,6 +1813,7 @@ static const struct mmc_host_ops sdhci_ops = {
|
|||
.request = sdhci_request,
|
||||
.set_ios = sdhci_set_ios,
|
||||
.get_ro = sdhci_get_ro,
|
||||
.hw_reset = sdhci_hw_reset,
|
||||
.enable_sdio_irq = sdhci_enable_sdio_irq,
|
||||
.start_signal_voltage_switch = sdhci_start_signal_voltage_switch,
|
||||
.execute_tuning = sdhci_execute_tuning,
|
||||
|
|
|
@ -273,7 +273,7 @@ struct sdhci_ops {
|
|||
void (*platform_reset_enter)(struct sdhci_host *host, u8 mask);
|
||||
void (*platform_reset_exit)(struct sdhci_host *host, u8 mask);
|
||||
int (*set_uhs_signaling)(struct sdhci_host *host, unsigned int uhs);
|
||||
|
||||
void (*hw_reset)(struct sdhci_host *host);
|
||||
};
|
||||
|
||||
#ifdef CONFIG_MMC_SDHCI_IO_ACCESSORS
|
||||
|
|
Loading…
Reference in New Issue