RE: [PATCH] mmc: sdhci-tegra: Add support to enumerate in HS400ES mode

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Thanks for review

This issue is specific to HS400ES mode.

Updated and pushed version v2.
Updated commit message and comments to clarify on HS400ES mode.
Also moved the function as suggested.

Answers to some questions inlined.

Thanks
Prathamesh.

-----Original Message-----
From: Adrian Hunter <adrian.hunter@xxxxxxxxx> 
Sent: Thursday, December 2, 2021 12:10 PM
To: Prathamesh Shete <pshete@xxxxxxxxxx>; ulf.hansson@xxxxxxxxxx; thierry.reding@xxxxxxxxx; Jonathan Hunter <jonathanh@xxxxxxxxxx>; p.zabel@xxxxxxxxxxxxxx; linux-mmc@xxxxxxxxxxxxxxx; linux-tegra@xxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx
Cc: Aniruddha Tvs Rao <anrao@xxxxxxxxxx>
Subject: Re: [PATCH] mmc: sdhci-tegra: Add support to enumerate in HS400ES mode

External email: Use caution opening links or attachments


On 29/11/2021 13:10, Prathamesh Shete wrote:
> When CMD13 is sent after switching to HS400 mode, the bus is operating 
> at either MMC_HIGH_26_MAX_DTR or MMC_HIGH_52_MAX_DTR.
> To meet Tegra SDHCI requirement at HS400 mode, force SDHCI interface 
> clock to MMC_HS200_MAX_DTR (200 MHz) so that host controller CAR clock 
> and the interface clock are rate matched.

This sounds like an issue with or without enhanced strobe?
[P.S]issue is specific to HS400ES mode updated commit message in v2.

Also it seems more like a fix than "adding support".
i.e. is this really "mmc: sdhci-tegra: Fix switch to HS400ES mode" ?
[P.S] yes this is fix ... updated commit subject in version v2.

>
> Signed-off-by: Prathamesh Shete <pshete@xxxxxxxxxx>
> ---
>  drivers/mmc/host/sdhci-tegra.c | 12 ++++++++++++
>  1 file changed, 12 insertions(+)
>
> diff --git a/drivers/mmc/host/sdhci-tegra.c 
> b/drivers/mmc/host/sdhci-tegra.c index 387ce9cdbd7c..d800396d1112 
> 100644
> --- a/drivers/mmc/host/sdhci-tegra.c
> +++ b/drivers/mmc/host/sdhci-tegra.c
> @@ -123,6 +123,8 @@
>                                        SDHCI_TRNS_BLK_CNT_EN | \
>                                        SDHCI_TRNS_DMA)
>
> +static void tegra_sdhci_set_clock(struct sdhci_host *host, unsigned 
> +int clock);

Please move one of the functions so that the forward declaration is not necessary.
[P.S]Done.

> +
>  struct sdhci_tegra_soc_data {
>       const struct sdhci_pltfm_data *pdata;
>       u64 dma_mask;
> @@ -369,6 +371,16 @@ static void 
> tegra_sdhci_hs400_enhanced_strobe(struct mmc_host *mmc,
>
>       sdhci_writel(host, val, SDHCI_TEGRA_VENDOR_SYS_SW_CTRL);
>
> +     /*
> +      * When CMD13 is sent after switching to HS400 mode, the bus
> +      * is operating at either MMC_HIGH_26_MAX_DTR or
> +      * MMC_HIGH_52_MAX_DTR.
> +      * To meet Tegra SDHCI requirement at HS400 mode, force SDHCI
> +      * interface clock to MMC_HS200_MAX_DTR (200 MHz) so that host
> +      * controller CAR clock and the interface clock are rate matched.
> +      */
> +     tegra_sdhci_set_clock(host, MMC_HS200_MAX_DTR);

This being done irrespective of ios->enhanced_strobe, which doesn't seem right based on the comment?
[P.S]Updated comments.
> +

Please remove the blank line.
[P.S]done
>  }
>
>  static void tegra_sdhci_reset(struct sdhci_host *host, u8 mask)
>





[Index of Archives]     [ARM Kernel]     [Linux ARM]     [Linux ARM MSM]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux