[PATCH v3 00/17] Fix Qcom UFS PHY clocks

From: Manivannan Sadhasivam
Date: Wed Jan 31 2024 - 02:08:01 EST


Hi,

This series fixes the clocks supplied to QMP PHY IPs in the Qcom SoCs. All
of the Qcom SoCs except MSM8996 require 3 clocks for QMP UFS:

* ref - 19.2MHz reference clock from RPM/RPMh
* ref_aux - Auxiliary reference clock from GCC
* qref - QREF clock from GCC or TCSR (TCSR since SM8550)

MSM8996 only requires 'ref' and 'qref' clocks.

Hence, this series fixes the binding, DT and GCC driver to reflect the
actual clock topology.

Note that the clock topology is not based on any downstream dts sources (even
they are not accurate). But rather based on information from Qcom internal
documentation and brain dump from Can Guo.

Testing
=======

Tested on Qualcomm RB5 development board based on SM8250 SoC. I don't
expect this series to break other SoCs too.

- Mani

Changes in v3:

* Added a patch for SM8650
* Collected review tags
* Rebased on top of next/20231123

Changes in v2:

* Reworded the commit message of patch 1 to justify ABI breakage
* Collected review tags

Signed-off-by: Manivannan Sadhasivam <manivannan.sadhasivam@xxxxxxxxxx>
---
Manivannan Sadhasivam (17):
dt-bindings: phy: qmp-ufs: Fix PHY clocks
phy: qcom-qmp-ufs: Switch to devm_clk_bulk_get_all() API
dt-bindings: clock: qcom: Add missing UFS QREF clocks
clk: qcom: gcc-sc8180x: Add missing UFS QREF clocks
arm64: dts: qcom: msm8996: Fix UFS PHY clocks
arm64: dts: qcom: msm8998: Fix UFS PHY clocks
arm64: dts: qcom: sdm845: Fix UFS PHY clocks
arm64: dts: qcom: sm6115: Fix UFS PHY clocks
arm64: dts: qcom: sm6125: Fix UFS PHY clocks
arm64: dts: qcom: sm6350: Fix UFS PHY clocks
arm64: dts: qcom: sm8150: Fix UFS PHY clocks
arm64: dts: qcom: sm8250: Fix UFS PHY clocks
arm64: dts: qcom: sc8180x: Fix UFS PHY clocks
arm64: dts: qcom: sc8280xp: Fix UFS PHY clocks
arm64: dts: qcom: sm8350: Fix UFS PHY clocks
arm64: dts: qcom: sm8550: Fix UFS PHY clocks
arm64: dts: qcom: sm8650: Fix UFS PHY clocks

.../bindings/phy/qcom,sc8280xp-qmp-ufs-phy.yaml | 48 ++++++++---------
arch/arm64/boot/dts/qcom/msm8996.dtsi | 4 +-
arch/arm64/boot/dts/qcom/msm8998.dtsi | 12 ++---
arch/arm64/boot/dts/qcom/sc8180x.dtsi | 6 ++-
arch/arm64/boot/dts/qcom/sc8280xp.dtsi | 18 ++++---
arch/arm64/boot/dts/qcom/sdm845.dtsi | 8 +--
arch/arm64/boot/dts/qcom/sm6115.dtsi | 8 ++-
arch/arm64/boot/dts/qcom/sm6125.dtsi | 8 +--
arch/arm64/boot/dts/qcom/sm6350.dtsi | 8 +--
arch/arm64/boot/dts/qcom/sm8150.dtsi | 8 +--
arch/arm64/boot/dts/qcom/sm8250.dtsi | 8 +--
arch/arm64/boot/dts/qcom/sm8350.dtsi | 8 +--
arch/arm64/boot/dts/qcom/sm8550.dtsi | 9 ++--
arch/arm64/boot/dts/qcom/sm8650.dtsi | 8 +--
drivers/clk/qcom/gcc-sc8180x.c | 28 ++++++++++
drivers/phy/qualcomm/phy-qcom-qmp-ufs.c | 63 +++-------------------
include/dt-bindings/clock/qcom,gcc-sc8180x.h | 2 +
17 files changed, 129 insertions(+), 125 deletions(-)
---
base-commit: 06f658aadff0e483ee4f807b0b46c9e5cba62bfa
change-id: 20240131-ufs-phy-clock-7939b9258b3c

Best regards,
--
Manivannan Sadhasivam <manivannan.sadhasivam@xxxxxxxxxx>