[RFC PATCH 0/8] Fix TCSR representation on SM8750
From: Konrad Dybcio <konradybcio@kernel.org>
Date: 2026-02-02 14:57:53
Also in:
linux-arm-msm, linux-clk, linux-gpio, lkml
As sparked by this thread: [ref] The current representation of TCSR is wrong. On platforms post and including SM8550, the TCSR had a sub-block in it, containing gate clocks used for distributing the XO output to various consumers. This is what we refer to as TCSR_CC upstream. SM8750 however, is notably different. That same set of tunables had been moved to the TLMM register space. This is made worse, as the sm8750-tcsrcc driver consumes the qcom,sm8750-tcsr compatible. This hardware change had been undone with the generation following 8750. This series attempts to unwind that. It's difficult to merge, both for bindings and functional reasons.. I think it goes without saying this breaks backwards compatibility, but it has to be done to represent TCSR at all. The patches are ordered in a least-destructive order.. I gave this a quick spin on (remote) hw, the UFS (one of the consumers) still works, but more testing would be greatly appreciated. Signed-off-by: Konrad Dybcio <redacted> --- Konrad Dybcio (8): dt-bindings: Move qcom,sm8750-tcsr from clock/tcsr to mfd/tcsr dt-bindings: pinctrl: qcom,sm8750-tlmm: Allow clocks/clock-cells pinctrl: qcom: Allow exposing reference clocks living in TLMM reg space pinctrl: qcom: sm8750: Expose reference clocks arm64: dts: qcom: Remove inexistent TCSR_CC clk: qcom: Remove tcsrcc-sm8750 arm64: dts: qcom: sm8750: Describe TCSR arm64: defconfig: Remove CONFIG_SM_TCSRCC_8750 .../bindings/clock/qcom,sm8550-tcsr.yaml | 2 - .../devicetree/bindings/mfd/qcom,tcsr.yaml | 1 + .../bindings/pinctrl/qcom,sm8750-tlmm.yaml | 12 ++ arch/arm64/boot/dts/qcom/sm8750.dtsi | 27 ++-- arch/arm64/configs/defconfig | 1 - drivers/clk/qcom/Kconfig | 8 -- drivers/clk/qcom/Makefile | 1 - drivers/clk/qcom/tcsrcc-sm8750.c | 141 --------------------- drivers/pinctrl/qcom/pinctrl-msm.c | 92 ++++++++++++++ drivers/pinctrl/qcom/pinctrl-msm.h | 14 ++ drivers/pinctrl/qcom/pinctrl-sm8750.c | 31 +++++ 11 files changed, 163 insertions(+), 167 deletions(-) --- base-commit: 4c87cdd0328495759f6e9f9f4e1e53ef8032a76f change-id: 20260202-topic-8750_tcsr-e2dafc2f11d1 Best regards, -- Konrad Dybcio [off-list ref]