[PATCH v4 0/4] clk: qcom: Migrate x1e80100 TCSR to clk_ref helper

Qiang Yu posted 4 patches 4 weeks, 1 day ago
.../bindings/clock/qcom,sm8550-tcsr.yaml           |   1 -
.../bindings/clock/qcom,x1e80100-tcsr.yaml         | 114 +++++++
arch/arm64/boot/dts/qcom/hamoa-iot-som.dtsi        |  21 ++
.../qcom/hamoa-lenovo-ideacentre-mini-01q8x10.dts  |  21 ++
arch/arm64/boot/dts/qcom/hamoa.dtsi                |   1 -
arch/arm64/boot/dts/qcom/purwa-iot-som.dtsi        |  21 ++
arch/arm64/boot/dts/qcom/x1-asus-vivobook-s15.dtsi |  21 ++
arch/arm64/boot/dts/qcom/x1-asus-zenbook-a14.dtsi  |  21 ++
arch/arm64/boot/dts/qcom/x1-crd.dtsi               |  21 ++
arch/arm64/boot/dts/qcom/x1-dell-thena.dtsi        |  21 ++
arch/arm64/boot/dts/qcom/x1-hp-omnibook-x14.dtsi   |  21 ++
arch/arm64/boot/dts/qcom/x1-microsoft-denali.dtsi  |  21 ++
arch/arm64/boot/dts/qcom/x1e001de-devkit.dts       |  21 ++
.../dts/qcom/x1e78100-lenovo-thinkpad-t14s.dtsi    |  21 ++
.../boot/dts/qcom/x1e80100-dell-xps13-9345.dts     |  21 ++
.../dts/qcom/x1e80100-honor-magicbook-art-14.dts   |  21 ++
.../boot/dts/qcom/x1e80100-lenovo-yoga-slim7x.dts  |  21 ++
.../dts/qcom/x1e80100-medion-sprchrgd-14-s1.dts    |  21 ++
.../boot/dts/qcom/x1e80100-microsoft-romulus.dtsi  |  21 ++
arch/arm64/boot/dts/qcom/x1e80100-qcp.dts          |  21 ++
.../boot/dts/qcom/x1p42100-lenovo-thinkbook-16.dts |  21 ++
.../boot/dts/qcom/x1p42100-microsoft-sp12in.dts    |  21 ++
drivers/clk/qcom/tcsrcc-x1e80100.c                 | 335 +++++++--------------
23 files changed, 626 insertions(+), 224 deletions(-)
[PATCH v4 0/4] clk: qcom: Migrate x1e80100 TCSR to clk_ref helper
Posted by Qiang Yu 4 weeks, 1 day ago
The QREF block on X1E80100 supplies reference clocks to PCIe/USB/UFS
PHYs and requires dedicated LDO supplies to operate. The digital
control interface for QREF (clkref_en registers) resides in TCSR on
X1E80100. This series migrates the x1e80100 TCSR driver to the common
clkref_en helper introduced for Glymur/Mahua, and wires up the
required regulator supplies.

Patch 1 splits qcom,x1e80100-tcsr out of the shared qcom,sm8550-tcsr.yaml
into its own binding file and documents the QREF/refgen supply
properties, mirroring the qcom,glymur-tcsr.yaml split.

Patch 2 converts tcsrcc-x1e80100.c from local clk_branch definitions to
descriptor-based registration via qcom_clk_ref_probe(), reusing the
common regulator handling and enable/disable sequencing.

Patch 3 removes reset-cells from tcsr dts node.

Patch 4 wires up the QREF/refgen LDO supplies on the boards Qualcomm
maintains directly: the CRD, QCP, Snapdragon Devkit, and the hamoa and
purwa IoT SoMs (purwa shares hamoa's QREF topology, so it reuses the
same qcom,x1e80100-tcsr compatible and supply set rather than needing a
dedicated one).

Signed-off-by: Qiang Yu <qiang.yu@oss.qualcomm.com>
---
Changes in v4:
- Drop #reset-cells from the binding entirely.
- Add new patch: Drop the stale #reset-cells property from the TCSR node in hamoa.dtsi.
- Link to v3: https://lore.kernel.org/all/20260812-hamoa_tcsr_qref_0812-v3-0-dc7627169c6d@oss.qualcomm.com/

Changes in v3:
- Patch 1: `#clock-cells` and `#reset-cells` in `required` list.
- Link to v2: https://lore.kernel.org/all/20260805-hamoa_tcsr_qref_0805-v2-0-4f1cfb1fcab2@oss.qualcomm.com/

Changes in v2:
- Patch 1: Explain in the commit message about the ABI break.
- Link to v1: https://lore.kernel.org/all/20260714-hamoa_tcsr_qref_0714_2-v1-0-13047922a376@oss.qualcomm.com/

To: Bjorn Andersson <andersson@kernel.org>
To: Stephen Boyd <sboyd@kernel.org>
To: Brian Masney <bmasney+clk@redhat.com>
To: Jerome Brunet <jbrunet+clk@baylibre.com>
To: Rob Herring <robh@kernel.org>
To: Krzysztof Kozlowski <krzk+dt@kernel.org>
To: Conor Dooley <conor+dt@kernel.org>
To: Taniya Das <taniya.das@oss.qualcomm.com>
To: Konrad Dybcio <konradybcio@kernel.org>
Cc: linux-arm-msm@vger.kernel.org
Cc: linux-clk@vger.kernel.org
Cc: devicetree@vger.kernel.org
Cc: linux-kernel@vger.kernel.org

---
Qiang Yu (4):
      dt-bindings: clock: qcom: Move x1e80100 TCSR to own binding
      clk: qcom: tcsrcc-x1e80100: Migrate to clk_ref helper
      arm64: dts: qcom: hamoa: Drop unused #reset-cells from TCSR node
      arm64: dts: qcom: hamoa/purwa: Add QREF regulator supplies

 .../bindings/clock/qcom,sm8550-tcsr.yaml           |   1 -
 .../bindings/clock/qcom,x1e80100-tcsr.yaml         | 114 +++++++
 arch/arm64/boot/dts/qcom/hamoa-iot-som.dtsi        |  21 ++
 .../qcom/hamoa-lenovo-ideacentre-mini-01q8x10.dts  |  21 ++
 arch/arm64/boot/dts/qcom/hamoa.dtsi                |   1 -
 arch/arm64/boot/dts/qcom/purwa-iot-som.dtsi        |  21 ++
 arch/arm64/boot/dts/qcom/x1-asus-vivobook-s15.dtsi |  21 ++
 arch/arm64/boot/dts/qcom/x1-asus-zenbook-a14.dtsi  |  21 ++
 arch/arm64/boot/dts/qcom/x1-crd.dtsi               |  21 ++
 arch/arm64/boot/dts/qcom/x1-dell-thena.dtsi        |  21 ++
 arch/arm64/boot/dts/qcom/x1-hp-omnibook-x14.dtsi   |  21 ++
 arch/arm64/boot/dts/qcom/x1-microsoft-denali.dtsi  |  21 ++
 arch/arm64/boot/dts/qcom/x1e001de-devkit.dts       |  21 ++
 .../dts/qcom/x1e78100-lenovo-thinkpad-t14s.dtsi    |  21 ++
 .../boot/dts/qcom/x1e80100-dell-xps13-9345.dts     |  21 ++
 .../dts/qcom/x1e80100-honor-magicbook-art-14.dts   |  21 ++
 .../boot/dts/qcom/x1e80100-lenovo-yoga-slim7x.dts  |  21 ++
 .../dts/qcom/x1e80100-medion-sprchrgd-14-s1.dts    |  21 ++
 .../boot/dts/qcom/x1e80100-microsoft-romulus.dtsi  |  21 ++
 arch/arm64/boot/dts/qcom/x1e80100-qcp.dts          |  21 ++
 .../boot/dts/qcom/x1p42100-lenovo-thinkbook-16.dts |  21 ++
 .../boot/dts/qcom/x1p42100-microsoft-sp12in.dts    |  21 ++
 drivers/clk/qcom/tcsrcc-x1e80100.c                 | 335 +++++++--------------
 23 files changed, 626 insertions(+), 224 deletions(-)
---
base-commit: a8406e6c0b793ce0788019683837c40855b55995
change-id: 20260825-hamoa_tcsr_qref_0826-00c0aaf8bc3c

Best regards,
--  
Qiang Yu <qiang.yu@oss.qualcomm.com>
Re: [PATCH v4 0/4] clk: qcom: Migrate x1e80100 TCSR to clk_ref helper
Posted by Bjorn Andersson 3 weeks, 3 days ago
On Thu, 27 Aug 2026 23:00:32 -0700, Qiang Yu wrote:
> The QREF block on X1E80100 supplies reference clocks to PCIe/USB/UFS
> PHYs and requires dedicated LDO supplies to operate. The digital
> control interface for QREF (clkref_en registers) resides in TCSR on
> X1E80100. This series migrates the x1e80100 TCSR driver to the common
> clkref_en helper introduced for Glymur/Mahua, and wires up the
> required regulator supplies.
> 
> [...]

Applied, thanks!

[1/4] dt-bindings: clock: qcom: Move x1e80100 TCSR to own binding
      commit: fcbd3151c9beffca044ea7a085d7e595ebf34f74
[2/4] clk: qcom: tcsrcc-x1e80100: Migrate to clk_ref helper
      commit: 011ed2a61f44b352bda71a82213f621bbfdb40f9
[3/4] arm64: dts: qcom: hamoa: Drop unused #reset-cells from TCSR node
      commit: 4d8ff3d92241d9ae4fdd5fed7a810a116e37eb0d
[4/4] arm64: dts: qcom: hamoa/purwa: Add QREF regulator supplies
      commit: d9d07e230c45cc11a0046b46354e413f2353bdf8

Best regards,
-- 
Bjorn Andersson <andersson@kernel.org>
Re: (subset) [PATCH v4 0/4] clk: qcom: Migrate x1e80100 TCSR to clk_ref helper
Posted by Bjorn Andersson 3 weeks, 5 days ago
On Thu, 27 Aug 2026 23:00:32 -0700, Qiang Yu wrote:
> The QREF block on X1E80100 supplies reference clocks to PCIe/USB/UFS
> PHYs and requires dedicated LDO supplies to operate. The digital
> control interface for QREF (clkref_en registers) resides in TCSR on
> X1E80100. This series migrates the x1e80100 TCSR driver to the common
> clkref_en helper introduced for Glymur/Mahua, and wires up the
> required regulator supplies.
> 
> [...]

Applied, thanks!

[1/4] dt-bindings: clock: qcom: Move x1e80100 TCSR to own binding
      commit: fcbd3151c9beffca044ea7a085d7e595ebf34f74
[2/4] clk: qcom: tcsrcc-x1e80100: Migrate to clk_ref helper
      commit: 011ed2a61f44b352bda71a82213f621bbfdb40f9

Best regards,
-- 
Bjorn Andersson <andersson@kernel.org>
Re: (subset) [PATCH v4 0/4] clk: qcom: Migrate x1e80100 TCSR to clk_ref helper
Posted by Bjorn Andersson 3 weeks, 4 days ago
On Thu, 27 Aug 2026 23:00:32 -0700, Qiang Yu wrote:
> The QREF block on X1E80100 supplies reference clocks to PCIe/USB/UFS
> PHYs and requires dedicated LDO supplies to operate. The digital
> control interface for QREF (clkref_en registers) resides in TCSR on
> X1E80100. This series migrates the x1e80100 TCSR driver to the common
> clkref_en helper introduced for Glymur/Mahua, and wires up the
> required regulator supplies.
> 
> [...]

Applied, thanks!

[3/4] arm64: dts: qcom: hamoa: Drop unused #reset-cells from TCSR node
      commit: 4d8ff3d92241d9ae4fdd5fed7a810a116e37eb0d
[4/4] arm64: dts: qcom: hamoa/purwa: Add QREF regulator supplies
      (no commit info)

Best regards,
-- 
Bjorn Andersson <andersson@kernel.org>