On Thu, 27 Aug 2020 at 19:21, Sowjanya Komatineni <skomatineni@xxxxxxxxxx> wrote: > > Tegra210/Tegra186/Tegra194 has incorrectly enabled > SDHCI_QUIRK_DATA_TIMEOUT_USES_SDCLK from the beginning of their support. > > Tegra210 and later SDMMC hardware default uses sdmmc_legacy_tm (TMCLK) > all the time for hardware data timeout instead of SDCLK and this TMCLK > need to be kept enabled by Tegra sdmmc driver. > > This series includes patches to fix this for Tegra210/Tegra186/Tegra194. > > These patches need to be manually backported to 4.19. > > Will send patches for 4.19 backport separately. > > Delta between patch versions: > [v7]: v7 has below change > - v6 has implementation for retrieving tmclk irrespective of > clocks order. But based in internal discussion with Thierry > this is not required as typically order specified in DT > bindings is the order validator want to see in DT. > > [v6]: v5 is sent out mistakenly with incorrect patches. > v6 includes proper patches addressing v4 feedback > - updated dt-binding doc to be more clear > - updated Tegra sdhci driver to retrieve sdhci and tmclk clocks > based on no. of clocks in sdhci device node as old device trees > do not use sdhci clock name and this allows proper clock retrival > irrespective of sdhci and tmclk clocks order in device tree. > - Added separate quirk for identifying SoC's supporting separate > timeout clock to be more clear. > > [v5]: Include below changes based on v4 feedback > - updated dt-binding doc to be more clear > - updated Tegra sdhci driver to retrieve sdhci and tmclk clocks > based on no. of clocks in sdhci device node as old device trees > do not use sdhci clock name and this allows proper clock retrival > irrespective of sdhci and tmclk clocks order in device tree. > - Added separate quirk for identifying SoC's supporting separate > timeout clock to be more clear. > > [v4]: Include additional dt-binding patch > > [v3]: Same as v2 with fixes tag > > [v2]: Includes minor fix > - Patch-0006: parentheses around operand of '!' > > Sowjanya Komatineni (7): > sdhci: tegra: Remove SDHCI_QUIRK_DATA_TIMEOUT_USES_SDCLK for Tegra210 > sdhci: tegra: Remove SDHCI_QUIRK_DATA_TIMEOUT_USES_SDCLK for Tegra186 > dt-bindings: mmc: tegra: Add tmclk for Tegra210 and later > arm64: tegra: Add missing timeout clock to Tegra210 SDMMC > arm64: tegra: Add missing timeout clock to Tegra186 SDMMC nodes > arm64: tegra: Add missing timeout clock to Tegra194 SDMMC nodes > sdhci: tegra: Add missing TMCLK for data timeout > > .../bindings/mmc/nvidia,tegra20-sdhci.txt | 32 +++++++++++-- > arch/arm64/boot/dts/nvidia/tegra186.dtsi | 20 ++++---- > arch/arm64/boot/dts/nvidia/tegra194.dtsi | 15 +++--- > arch/arm64/boot/dts/nvidia/tegra210.dtsi | 20 ++++---- > drivers/mmc/host/sdhci-tegra.c | 55 ++++++++++++++++++++-- > 5 files changed, 113 insertions(+), 29 deletions(-) > > -- > 2.7.4 > Applied for fixes, thanks! Kind regards Uffe