2024-01-21 16:59:27

by David Wronek

[permalink] [raw]
Subject: [PATCH v4 0/8] Add UFS support for SC7180/SM7125

This patchset introduces UFS support for SC7180 and SM7125, as well as
support for the Xiaomi Redmi Note 9S.

To: Bjorn Andersson <[email protected]>
To: Konrad Dybcio <[email protected]>
To: Herbert Xu <[email protected]>
To: David S. Miller <[email protected]>
To: Rob Herring <[email protected]>
To: Krzysztof Kozlowski <[email protected]>
To: Conor Dooley <[email protected]>
To: Manivannan Sadhasivam <[email protected]>
To: Alim Akhtar <[email protected]>
To: Avri Altman <[email protected]>
To: Bart Van Assche <[email protected]>
To: Andy Gross <[email protected]>
To: Vinod Koul <[email protected]>
To: Kishon Vijay Abraham I <[email protected]>
To: <[email protected]>
Cc: <[email protected]>
Cc: <[email protected]>
Cc: <[email protected]>
Cc: <[email protected]>
Cc: <[email protected]>
Cc: <[email protected]>
CC: <~postmarketos/[email protected]>

Signed-off-by: David Wronek <[email protected]>
---
Changes in v4:
- Add Reviewed-by tag from Dmitry Baryshkov to fifth patch

Changes in v3:
- Use SM7150 UFS PHY compatible as a fallback
- Fix dts style issues
- Add regulator-allow-set-load and allowed-modes to UFS regulators

Changes in v2:
- Fix device tree binding for QMP PHY
- Separate ICE into its own node
- Fix style problems in sc7180.dtsi

---
David Wronek (7):
dt-bindings: crypto: ice: Document SC7180 inline crypto engine
dt-bindings: ufs: qcom: Add SC7180 compatible string
dt-bindings: phy: Add QMP UFS PHY compatible for SC7180
dt-bindings: arm: qcom: Add Xiaomi Redmi Note 9S
phy: qcom: qmp-ufs: Add SC7180 support
arm64: dts: qcom: sc7180: Add UFS nodes
arm64: dts: qcom: sm7125-xiaomi-common: Add UFS nodes

Joe Mason (1):
arm64: dts: qcom: Add support for Xiaomi Redmi Note 9S

Documentation/devicetree/bindings/arm/qcom.yaml | 1 +
.../bindings/crypto/qcom,inline-crypto-engine.yaml | 1 +
.../bindings/phy/qcom,sc8280xp-qmp-ufs-phy.yaml | 2 +
.../devicetree/bindings/ufs/qcom,ufs.yaml | 2 +
arch/arm64/boot/dts/qcom/Makefile | 1 +
arch/arm64/boot/dts/qcom/sc7180.dtsi | 70 ++++++++++++++++++++++
arch/arm64/boot/dts/qcom/sm7125-xiaomi-common.dtsi | 28 +++++++++
arch/arm64/boot/dts/qcom/sm7125-xiaomi-curtana.dts | 16 +++++
drivers/phy/qualcomm/phy-qcom-qmp-ufs.c | 3 +
9 files changed, 124 insertions(+)
---
base-commit: ad5c60d66016e544c51ed98635a74073f761f45d
change-id: 20240121-sm7125-upstream-68072e5794bb

Best regards,
--
David Wronek <[email protected]>



2024-01-21 16:59:37

by David Wronek

[permalink] [raw]
Subject: [PATCH v4 1/8] dt-bindings: crypto: ice: Document SC7180 inline crypto engine

Document the compatible used for the inline crypto engine found on
SC7180.

Acked-by: Rob Herring <[email protected]>
Signed-off-by: David Wronek <[email protected]>
---
Documentation/devicetree/bindings/crypto/qcom,inline-crypto-engine.yaml | 1 +
1 file changed, 1 insertion(+)

diff --git a/Documentation/devicetree/bindings/crypto/qcom,inline-crypto-engine.yaml b/Documentation/devicetree/bindings/crypto/qcom,inline-crypto-engine.yaml
index 09e43157cc71..e91bc7dc6ad3 100644
--- a/Documentation/devicetree/bindings/crypto/qcom,inline-crypto-engine.yaml
+++ b/Documentation/devicetree/bindings/crypto/qcom,inline-crypto-engine.yaml
@@ -14,6 +14,7 @@ properties:
items:
- enum:
- qcom,sa8775p-inline-crypto-engine
+ - qcom,sc7180-inline-crypto-engine
- qcom,sm8450-inline-crypto-engine
- qcom,sm8550-inline-crypto-engine
- qcom,sm8650-inline-crypto-engine

--
2.43.0


2024-01-21 17:00:22

by David Wronek

[permalink] [raw]
Subject: [PATCH v4 3/8] dt-bindings: phy: Add QMP UFS PHY compatible for SC7180

Document the QMP UFS PHY compatible for SC7180

Acked-by: Rob Herring <[email protected]>
Signed-off-by: David Wronek <[email protected]>
---
Documentation/devicetree/bindings/phy/qcom,sc8280xp-qmp-ufs-phy.yaml | 2 ++
1 file changed, 2 insertions(+)

diff --git a/Documentation/devicetree/bindings/phy/qcom,sc8280xp-qmp-ufs-phy.yaml b/Documentation/devicetree/bindings/phy/qcom,sc8280xp-qmp-ufs-phy.yaml
index 8474eef8d0ff..5faa1cb3a12e 100644
--- a/Documentation/devicetree/bindings/phy/qcom,sc8280xp-qmp-ufs-phy.yaml
+++ b/Documentation/devicetree/bindings/phy/qcom,sc8280xp-qmp-ufs-phy.yaml
@@ -19,6 +19,7 @@ properties:
- qcom,msm8996-qmp-ufs-phy
- qcom,msm8998-qmp-ufs-phy
- qcom,sa8775p-qmp-ufs-phy
+ - qcom,sc7180-qmp-ufs-phy
- qcom,sc7280-qmp-ufs-phy
- qcom,sc8180x-qmp-ufs-phy
- qcom,sc8280xp-qmp-ufs-phy
@@ -102,6 +103,7 @@ allOf:
contains:
enum:
- qcom,msm8998-qmp-ufs-phy
+ - qcom,sc7180-qmp-ufs-phy
- qcom,sc8180x-qmp-ufs-phy
- qcom,sc8280xp-qmp-ufs-phy
- qcom,sdm845-qmp-ufs-phy

--
2.43.0


2024-01-21 17:00:49

by David Wronek

[permalink] [raw]
Subject: [PATCH v4 4/8] dt-bindings: arm: qcom: Add Xiaomi Redmi Note 9S

Document the Xiaomi Redmi Note 9S (curtana) smartphone, which is based
on the Qualcomm SM7125 SoC.

Reviewed-by: Krzysztof Kozlowski <[email protected]>
Signed-off-by: David Wronek <[email protected]>
---
Documentation/devicetree/bindings/arm/qcom.yaml | 1 +
1 file changed, 1 insertion(+)

diff --git a/Documentation/devicetree/bindings/arm/qcom.yaml b/Documentation/devicetree/bindings/arm/qcom.yaml
index 1a5fb889a444..59430524dac6 100644
--- a/Documentation/devicetree/bindings/arm/qcom.yaml
+++ b/Documentation/devicetree/bindings/arm/qcom.yaml
@@ -988,6 +988,7 @@ properties:

- items:
- enum:
+ - xiaomi,curtana
- xiaomi,joyeuse
- const: qcom,sm7125


--
2.43.0


2024-01-21 17:01:57

by David Wronek

[permalink] [raw]
Subject: [PATCH v4 7/8] arm64: dts: qcom: sm7125-xiaomi-common: Add UFS nodes

Enable the UFS found on the SM7125 Xiaomi smartphones.

Reviewed-by: Konrad Dybcio <[email protected]>
Signed-off-by: David Wronek <[email protected]>
---
arch/arm64/boot/dts/qcom/sm7125-xiaomi-common.dtsi | 28 ++++++++++++++++++++++
1 file changed, 28 insertions(+)

diff --git a/arch/arm64/boot/dts/qcom/sm7125-xiaomi-common.dtsi b/arch/arm64/boot/dts/qcom/sm7125-xiaomi-common.dtsi
index e55cd83c19b8..0dfd1e3730e9 100644
--- a/arch/arm64/boot/dts/qcom/sm7125-xiaomi-common.dtsi
+++ b/arch/arm64/boot/dts/qcom/sm7125-xiaomi-common.dtsi
@@ -152,6 +152,9 @@ vreg_l4a_0p88: ldo4 {
regulator-min-microvolt = <824000>;
regulator-max-microvolt = <928000>;
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
+ regulator-allow-set-load;
+ regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
+ RPMH_REGULATOR_MODE_HPM>;
};

vreg_l5a_2p7: ldo5 {
@@ -188,6 +191,9 @@ vreg_l12a_1p8: ldo12 {
regulator-min-microvolt = <1696000>;
regulator-max-microvolt = <1952000>;
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
+ regulator-allow-set-load;
+ regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
+ RPMH_REGULATOR_MODE_HPM>;
};

vreg_l13a_1p8: ldo13 {
@@ -230,6 +236,9 @@ vreg_l19a_3p0: ldo19 {
regulator-min-microvolt = <2696000>;
regulator-max-microvolt = <3304000>;
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
+ regulator-allow-set-load;
+ regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
+ RPMH_REGULATOR_MODE_HPM>;
};
};

@@ -258,6 +267,9 @@ vreg_l3c_1p23: ldo3 {
regulator-min-microvolt = <1144000>;
regulator-max-microvolt = <1304000>;
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
+ regulator-allow-set-load;
+ regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
+ RPMH_REGULATOR_MODE_HPM>;
};

vreg_l4c_1p8: ldo4 {
@@ -398,6 +410,22 @@ sd-cd-pins {
};
};

+&ufs_mem_hc {
+ vcc-supply = <&vreg_l19a_3p0>;
+ vcc-max-microamp = <600000>;
+ vccq2-supply = <&vreg_l12a_1p8>;
+ vccq2-max-microamp = <600000>;
+ status = "okay";
+};
+
+&ufs_mem_phy {
+ vdda-phy-supply = <&vreg_l4a_0p88>;
+ vdda-pll-supply = <&vreg_l3c_1p23>;
+ vdda-phy-max-microamp = <62900>;
+ vdda-pll-max-microamp = <18300>;
+ status = "okay";
+};
+
&usb_1 {
qcom,select-utmi-as-pipe-clk;
status = "okay";

--
2.43.0


2024-01-23 14:21:38

by Vinod Koul

[permalink] [raw]
Subject: Re: (subset) [PATCH v4 0/8] Add UFS support for SC7180/SM7125


On Sun, 21 Jan 2024 17:57:40 +0100, David Wronek wrote:
> This patchset introduces UFS support for SC7180 and SM7125, as well as
> support for the Xiaomi Redmi Note 9S.
>
> To: Bjorn Andersson <[email protected]>
> To: Konrad Dybcio <[email protected]>
> To: Herbert Xu <[email protected]>
> To: David S. Miller <[email protected]>
> To: Rob Herring <[email protected]>
> To: Krzysztof Kozlowski <[email protected]>
> To: Conor Dooley <[email protected]>
> To: Manivannan Sadhasivam <[email protected]>
> To: Alim Akhtar <[email protected]>
> To: Avri Altman <[email protected]>
> To: Bart Van Assche <[email protected]>
> To: Andy Gross <[email protected]>
> To: Vinod Koul <[email protected]>
> To: Kishon Vijay Abraham I <[email protected]>
> To: <[email protected]>
> Cc: <[email protected]>
> Cc: <[email protected]>
> Cc: <[email protected]>
> Cc: <[email protected]>
> Cc: <[email protected]>
> Cc: <[email protected]>
> CC: <~postmarketos/[email protected]>
>
> [...]

Applied, thanks!

[3/8] dt-bindings: phy: Add QMP UFS PHY compatible for SC7180
commit: 1cf2bf8ffadf2f0ab9ad10a1e0f65b3a0a10d402
[5/8] phy: qcom: qmp-ufs: Add SC7180 support
commit: 7551d945cb9ad8e8cfa4888c6b7be19855754baf

Best regards,
--
~Vinod



2024-01-26 10:12:22

by Herbert Xu

[permalink] [raw]
Subject: Re: [PATCH v4 1/8] dt-bindings: crypto: ice: Document SC7180 inline crypto engine

On Sun, Jan 21, 2024 at 05:57:41PM +0100, David Wronek wrote:
> Document the compatible used for the inline crypto engine found on
> SC7180.
>
> Acked-by: Rob Herring <[email protected]>
> Signed-off-by: David Wronek <[email protected]>
> ---
> Documentation/devicetree/bindings/crypto/qcom,inline-crypto-engine.yaml | 1 +
> 1 file changed, 1 insertion(+)

Patch applied. Thanks.
--
Email: Herbert Xu <[email protected]>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt

2024-02-12 22:21:19

by Rob Herring

[permalink] [raw]
Subject: Re: [PATCH v4 3/8] dt-bindings: phy: Add QMP UFS PHY compatible for SC7180

On Sun, Jan 21, 2024 at 05:57:43PM +0100, David Wronek wrote:
> Document the QMP UFS PHY compatible for SC7180
>
> Acked-by: Rob Herring <[email protected]>
> Signed-off-by: David Wronek <[email protected]>
> ---
> Documentation/devicetree/bindings/phy/qcom,sc8280xp-qmp-ufs-phy.yaml | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/Documentation/devicetree/bindings/phy/qcom,sc8280xp-qmp-ufs-phy.yaml b/Documentation/devicetree/bindings/phy/qcom,sc8280xp-qmp-ufs-phy.yaml
> index 8474eef8d0ff..5faa1cb3a12e 100644
> --- a/Documentation/devicetree/bindings/phy/qcom,sc8280xp-qmp-ufs-phy.yaml
> +++ b/Documentation/devicetree/bindings/phy/qcom,sc8280xp-qmp-ufs-phy.yaml
> @@ -19,6 +19,7 @@ properties:
> - qcom,msm8996-qmp-ufs-phy
> - qcom,msm8998-qmp-ufs-phy
> - qcom,sa8775p-qmp-ufs-phy
> + - qcom,sc7180-qmp-ufs-phy

This doesn't match what you put in the dts which is adding to the
warnings:

51 phy@1d87000: compatible: ['qcom,sc7180-qmp-ufs-phy', 'qcom,sm7150-qmp-ufs-phy'] is too long
51 phy@1d87000: clock-names: ['ref', 'ref_aux'] is too short
48 phy@1d87000: clocks: [[39, 97], [39, 103]] is too short
30 phy@1d87000: 'power-domains' is a required property


> - qcom,sc7280-qmp-ufs-phy
> - qcom,sc8180x-qmp-ufs-phy
> - qcom,sc8280xp-qmp-ufs-phy
> @@ -102,6 +103,7 @@ allOf:
> contains:
> enum:
> - qcom,msm8998-qmp-ufs-phy
> + - qcom,sc7180-qmp-ufs-phy
> - qcom,sc8180x-qmp-ufs-phy
> - qcom,sc8280xp-qmp-ufs-phy
> - qcom,sdm845-qmp-ufs-phy
>
> --
> 2.43.0
>