]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
arm64: dts: qcom: hamoa: Fix xo clock supply of platform SD host controller
authorVladimir Zapolskiy <vladimir.zapolskiy@linaro.org>
Sat, 14 Mar 2026 02:37:12 +0000 (04:37 +0200)
committerBjorn Andersson <andersson@kernel.org>
Thu, 26 Mar 2026 14:40:41 +0000 (09:40 -0500)
The expected frequency of SD host controller core supply clock is 19.2MHz,
while RPMH_CXO_CLK clock frequency on SM8650 platform is 38.4MHz.

Apparently the overclocked supply clock could be good enough on some
boards and even with the most of SD cards, however some low-end UHS-I
SD cards in SDR104 mode of the host controller produce I/O errors in
runtime, fortunately this problem is gone, if the "xo" clock frequency
matches the expected 19.2MHz clock rate.

Fixes: ffb21c1e19b1 ("arm64: dts: qcom: x1e80100: Describe the SDHC controllers")
Reported-by: Neil Armstrong <neil.armstrong@linaro.org>
Signed-off-by: Vladimir Zapolskiy <vladimir.zapolskiy@linaro.org>
Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
Link: https://lore.kernel.org/r/20260314023715.357512-4-vladimir.zapolskiy@linaro.org
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
arch/arm64/boot/dts/qcom/hamoa.dtsi

index e64b41e276bb4a6ad6240e1b9b6f87d57dc5ea66..40843b164bfacbde814c706aede87bb2efe6dac9 100644 (file)
 
                        clocks = <&gcc GCC_SDCC2_AHB_CLK>,
                                 <&gcc GCC_SDCC2_APPS_CLK>,
-                                <&rpmhcc RPMH_CXO_CLK>;
+                                <&bi_tcxo_div2>;
                        clock-names = "iface", "core", "xo";
                        iommus = <&apps_smmu 0x520 0>;
                        qcom,dll-config = <0x0007642c>;
 
                        clocks = <&gcc GCC_SDCC4_AHB_CLK>,
                                 <&gcc GCC_SDCC4_APPS_CLK>,
-                                <&rpmhcc RPMH_CXO_CLK>;
+                                <&bi_tcxo_div2>;
                        clock-names = "iface", "core", "xo";
                        iommus = <&apps_smmu 0x160 0>;
                        qcom,dll-config = <0x0007642c>;