On 16/07/18 09:26, ernest.zhang wrote: > Export sdhci tuning function symbols which are used by other SD Host > controller driver modules. > > Signed-off-by: ernest.zhang <ernest.zhang@xxxxxxxxxxxxxx> Acked-by: Adrian Hunter <adrian.hunter@xxxxxxxxx> > --- > Changes in V7: > Export sdhci tuning function symbols > > Changes in V1~V6 > N/A > --- > drivers/mmc/host/sdhci.c | 12 ++++++++---- > drivers/mmc/host/sdhci.h | 5 +++++ > 2 files changed, 13 insertions(+), 4 deletions(-) > > diff --git a/drivers/mmc/host/sdhci.c b/drivers/mmc/host/sdhci.c > index a7b5602ef6f7..bcea179a8d70 100644 > --- a/drivers/mmc/host/sdhci.c > +++ b/drivers/mmc/host/sdhci.c > @@ -2103,7 +2103,7 @@ static int sdhci_prepare_hs400_tuning(struct mmc_host *mmc, struct mmc_ios *ios) > return 0; > } > > -static void sdhci_start_tuning(struct sdhci_host *host) > +void sdhci_start_tuning(struct sdhci_host *host) > { > u16 ctrl; > > @@ -2126,14 +2126,16 @@ static void sdhci_start_tuning(struct sdhci_host *host) > sdhci_writel(host, SDHCI_INT_DATA_AVAIL, SDHCI_INT_ENABLE); > sdhci_writel(host, SDHCI_INT_DATA_AVAIL, SDHCI_SIGNAL_ENABLE); > } > +EXPORT_SYMBOL_GPL(sdhci_start_tuning); > > -static void sdhci_end_tuning(struct sdhci_host *host) > +void sdhci_end_tuning(struct sdhci_host *host) > { > sdhci_writel(host, host->ier, SDHCI_INT_ENABLE); > sdhci_writel(host, host->ier, SDHCI_SIGNAL_ENABLE); > } > +EXPORT_SYMBOL_GPL(sdhci_end_tuning); > > -static void sdhci_reset_tuning(struct sdhci_host *host) > +void sdhci_reset_tuning(struct sdhci_host *host) > { > u16 ctrl; > > @@ -2142,6 +2144,7 @@ static void sdhci_reset_tuning(struct sdhci_host *host) > ctrl &= ~SDHCI_CTRL_EXEC_TUNING; > sdhci_writew(host, ctrl, SDHCI_HOST_CONTROL2); > } > +EXPORT_SYMBOL_GPL(sdhci_reset_tuning); > > static void sdhci_abort_tuning(struct sdhci_host *host, u32 opcode) > { > @@ -2162,7 +2165,7 @@ static void sdhci_abort_tuning(struct sdhci_host *host, u32 opcode) > * interrupt setup is different to other commands and there is no timeout > * interrupt so special handling is needed. > */ > -static void sdhci_send_tuning(struct sdhci_host *host, u32 opcode) > +void sdhci_send_tuning(struct sdhci_host *host, u32 opcode) > { > struct mmc_host *mmc = host->mmc; > struct mmc_command cmd = {}; > @@ -2212,6 +2215,7 @@ static void sdhci_send_tuning(struct sdhci_host *host, u32 opcode) > msecs_to_jiffies(50)); > > } > +EXPORT_SYMBOL_GPL(sdhci_send_tuning); > > static void __sdhci_execute_tuning(struct sdhci_host *host, u32 opcode) > { > diff --git a/drivers/mmc/host/sdhci.h b/drivers/mmc/host/sdhci.h > index 23966f887da6..f0bd36ce3817 100644 > --- a/drivers/mmc/host/sdhci.h > +++ b/drivers/mmc/host/sdhci.h > @@ -748,4 +748,9 @@ bool sdhci_cqe_irq(struct sdhci_host *host, u32 intmask, int *cmd_error, > > void sdhci_dumpregs(struct sdhci_host *host); > > +void sdhci_start_tuning(struct sdhci_host *host); > +void sdhci_end_tuning(struct sdhci_host *host); > +void sdhci_reset_tuning(struct sdhci_host *host); > +void sdhci_send_tuning(struct sdhci_host *host, u32 opcode); > + > #endif /* __SDHCI_HW_H */ > -- To unsubscribe from this list: send the line "unsubscribe linux-mmc" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html