If the tuning step is not set, the tuning step is set to 1.
For some sd cards, the following Tuning timeout will occur.
Tuning failed, falling back to fixed sampling clock
mmc0: Tuning failed, falling back to fixed sampling clock
So set the default tuning step. This refers to the NXP vendor's
commit below:
https://github.com/nxp-imx/linux-imx/blob/lf-6.1.y/
arch/arm/boot/dts/imx7s.dtsi#L1216-L1217
Fixes: 1e336aa0c025 ("mmc: sdhci-esdhc-imx: correct the tuning start tap and step setting")
Signed-off-by: Xiaolei Wang <[email protected]>
Reviewed-by: Fabio Estevam <[email protected]>
---
v3:
* Add the timeout message to commit log
v2:
* Refer to https://github.com/nxp-imx/linux-imx/blob/lf-6.1.y/arch/arm/boot/dts/imx7s.dtsi#L1216-L1217
and add the following attributes for all usdhc of imx7:
fsl,tuning-step = <2>;
fsl,tuning-start-tap = <20>;
arch/arm/boot/dts/nxp/imx/imx7s.dtsi | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/arch/arm/boot/dts/nxp/imx/imx7s.dtsi b/arch/arm/boot/dts/nxp/imx/imx7s.dtsi
index 54026c2c93fa..6ffb428dc939 100644
--- a/arch/arm/boot/dts/nxp/imx/imx7s.dtsi
+++ b/arch/arm/boot/dts/nxp/imx/imx7s.dtsi
@@ -1184,6 +1184,8 @@ usdhc1: mmc@30b40000 {
<&clks IMX7D_USDHC1_ROOT_CLK>;
clock-names = "ipg", "ahb", "per";
bus-width = <4>;
+ fsl,tuning-step = <2>;
+ fsl,tuning-start-tap = <20>;
status = "disabled";
};
@@ -1196,6 +1198,8 @@ usdhc2: mmc@30b50000 {
<&clks IMX7D_USDHC2_ROOT_CLK>;
clock-names = "ipg", "ahb", "per";
bus-width = <4>;
+ fsl,tuning-step = <2>;
+ fsl,tuning-start-tap = <20>;
status = "disabled";
};
@@ -1208,6 +1212,8 @@ usdhc3: mmc@30b60000 {
<&clks IMX7D_USDHC3_ROOT_CLK>;
clock-names = "ipg", "ahb", "per";
bus-width = <4>;
+ fsl,tuning-step = <2>;
+ fsl,tuning-start-tap = <20>;
status = "disabled";
};
--
2.25.1
On Mon, Jul 24, 2023 at 11:45:10PM +0800, Xiaolei Wang wrote:
> If the tuning step is not set, the tuning step is set to 1.
> For some sd cards, the following Tuning timeout will occur.
>
> Tuning failed, falling back to fixed sampling clock
> mmc0: Tuning failed, falling back to fixed sampling clock
>
> So set the default tuning step. This refers to the NXP vendor's
> commit below:
>
> https://github.com/nxp-imx/linux-imx/blob/lf-6.1.y/
> arch/arm/boot/dts/imx7s.dtsi#L1216-L1217
>
> Fixes: 1e336aa0c025 ("mmc: sdhci-esdhc-imx: correct the tuning start tap and step setting")
> Signed-off-by: Xiaolei Wang <[email protected]>
> Reviewed-by: Fabio Estevam <[email protected]>
Applied, thanks!