On Mon, Feb 02, 2026 at 03:57:32PM +0100, Konrad Dybcio wrote:
> As sparked by this thread:
> <20260112151725.2308971-1-mukesh.ojha@oss.qualcomm.com>
>
> 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 <konrad.dybcio@oss.qualcomm.com>
Thanks Konrad for taking this forward, while I was also working on your
suggestion to make tlmm a clock provider.
> ---
> 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 <konrad.dybcio@oss.qualcomm.com>
>
--
-Mukesh Ojha