From 9c9b4054546acea66a89b81a344a08601ae1af76 Mon Sep 17 00:00:00 2001 From: Manish Pandey Date: Mon, 18 Nov 2024 18:08:50 +0530 Subject: [PATCH 1/3] ARM: dts: msm: Add UFS support for kera platforms Add UFS support for kera cdp, mtp and rcm platforms. Change-Id: Iee003994d693a23e563e25621a23a99e85aaadac Signed-off-by: Manish Pandey --- qcom/kera-cdp-qca6750-ufs2.dtsi | 2 ++ qcom/kera-cdp-qca6750-ufs3.dtsi | 2 ++ qcom/kera-cdp-qca6750-ufs4.dtsi | 2 ++ qcom/kera-mtp-wcn7750-ufs3.dtsi | 2 ++ qcom/kera-mtp-wcn7750-ufs4.dtsi | 3 ++ qcom/kera-qrd-wcn7750-ufs2.dtsi | 2 ++ qcom/kera-qrd-wcn7750-ufs3.dtsi | 2 ++ qcom/kera-rcm-qca6750-ufs2.dtsi | 2 ++ qcom/kera-rcm-qca6750-ufs3.dtsi | 2 ++ qcom/kera-rcm-wcn7750-ufs2.dtsi | 2 ++ qcom/kera-rcm-wcn7750-ufs3.dtsi | 2 ++ qcom/kera-rcm-wcn7750-ufs4.dtsi | 2 ++ qcom/kera_ufs2.dtsi | 44 +++++++++++++++++++++++++++++ qcom/kera_ufs3.dtsi | 44 +++++++++++++++++++++++++++++ qcom/kera_ufs4.dtsi | 49 +++++++++++++++++++++++++++++++++ 15 files changed, 162 insertions(+) create mode 100644 qcom/kera_ufs2.dtsi create mode 100644 qcom/kera_ufs3.dtsi create mode 100644 qcom/kera_ufs4.dtsi diff --git a/qcom/kera-cdp-qca6750-ufs2.dtsi b/qcom/kera-cdp-qca6750-ufs2.dtsi index 9df4770a..0b5c9e56 100644 --- a/qcom/kera-cdp-qca6750-ufs2.dtsi +++ b/qcom/kera-cdp-qca6750-ufs2.dtsi @@ -2,3 +2,5 @@ /* * Copyright (c) 2024 Qualcomm Innovation Center, Inc. All rights reserved. */ + +#include "kera_ufs2.dtsi" diff --git a/qcom/kera-cdp-qca6750-ufs3.dtsi b/qcom/kera-cdp-qca6750-ufs3.dtsi index 9df4770a..c85591f2 100644 --- a/qcom/kera-cdp-qca6750-ufs3.dtsi +++ b/qcom/kera-cdp-qca6750-ufs3.dtsi @@ -2,3 +2,5 @@ /* * Copyright (c) 2024 Qualcomm Innovation Center, Inc. All rights reserved. */ + +#include "kera_ufs3.dtsi" diff --git a/qcom/kera-cdp-qca6750-ufs4.dtsi b/qcom/kera-cdp-qca6750-ufs4.dtsi index 9df4770a..ddd95998 100644 --- a/qcom/kera-cdp-qca6750-ufs4.dtsi +++ b/qcom/kera-cdp-qca6750-ufs4.dtsi @@ -2,3 +2,5 @@ /* * Copyright (c) 2024 Qualcomm Innovation Center, Inc. All rights reserved. */ + +#include "kera_ufs4.dtsi" diff --git a/qcom/kera-mtp-wcn7750-ufs3.dtsi b/qcom/kera-mtp-wcn7750-ufs3.dtsi index 9df4770a..c85591f2 100644 --- a/qcom/kera-mtp-wcn7750-ufs3.dtsi +++ b/qcom/kera-mtp-wcn7750-ufs3.dtsi @@ -2,3 +2,5 @@ /* * Copyright (c) 2024 Qualcomm Innovation Center, Inc. All rights reserved. */ + +#include "kera_ufs3.dtsi" diff --git a/qcom/kera-mtp-wcn7750-ufs4.dtsi b/qcom/kera-mtp-wcn7750-ufs4.dtsi index 9df4770a..4593e4d3 100644 --- a/qcom/kera-mtp-wcn7750-ufs4.dtsi +++ b/qcom/kera-mtp-wcn7750-ufs4.dtsi @@ -2,3 +2,6 @@ /* * Copyright (c) 2024 Qualcomm Innovation Center, Inc. All rights reserved. */ + +#include "kera_ufs4.dtsi" + diff --git a/qcom/kera-qrd-wcn7750-ufs2.dtsi b/qcom/kera-qrd-wcn7750-ufs2.dtsi index 9df4770a..0b5c9e56 100644 --- a/qcom/kera-qrd-wcn7750-ufs2.dtsi +++ b/qcom/kera-qrd-wcn7750-ufs2.dtsi @@ -2,3 +2,5 @@ /* * Copyright (c) 2024 Qualcomm Innovation Center, Inc. All rights reserved. */ + +#include "kera_ufs2.dtsi" diff --git a/qcom/kera-qrd-wcn7750-ufs3.dtsi b/qcom/kera-qrd-wcn7750-ufs3.dtsi index 9df4770a..c85591f2 100644 --- a/qcom/kera-qrd-wcn7750-ufs3.dtsi +++ b/qcom/kera-qrd-wcn7750-ufs3.dtsi @@ -2,3 +2,5 @@ /* * Copyright (c) 2024 Qualcomm Innovation Center, Inc. All rights reserved. */ + +#include "kera_ufs3.dtsi" diff --git a/qcom/kera-rcm-qca6750-ufs2.dtsi b/qcom/kera-rcm-qca6750-ufs2.dtsi index 9df4770a..0b5c9e56 100644 --- a/qcom/kera-rcm-qca6750-ufs2.dtsi +++ b/qcom/kera-rcm-qca6750-ufs2.dtsi @@ -2,3 +2,5 @@ /* * Copyright (c) 2024 Qualcomm Innovation Center, Inc. All rights reserved. */ + +#include "kera_ufs2.dtsi" diff --git a/qcom/kera-rcm-qca6750-ufs3.dtsi b/qcom/kera-rcm-qca6750-ufs3.dtsi index 9df4770a..c85591f2 100644 --- a/qcom/kera-rcm-qca6750-ufs3.dtsi +++ b/qcom/kera-rcm-qca6750-ufs3.dtsi @@ -2,3 +2,5 @@ /* * Copyright (c) 2024 Qualcomm Innovation Center, Inc. All rights reserved. */ + +#include "kera_ufs3.dtsi" diff --git a/qcom/kera-rcm-wcn7750-ufs2.dtsi b/qcom/kera-rcm-wcn7750-ufs2.dtsi index 9df4770a..0b5c9e56 100644 --- a/qcom/kera-rcm-wcn7750-ufs2.dtsi +++ b/qcom/kera-rcm-wcn7750-ufs2.dtsi @@ -2,3 +2,5 @@ /* * Copyright (c) 2024 Qualcomm Innovation Center, Inc. All rights reserved. */ + +#include "kera_ufs2.dtsi" diff --git a/qcom/kera-rcm-wcn7750-ufs3.dtsi b/qcom/kera-rcm-wcn7750-ufs3.dtsi index 9df4770a..c85591f2 100644 --- a/qcom/kera-rcm-wcn7750-ufs3.dtsi +++ b/qcom/kera-rcm-wcn7750-ufs3.dtsi @@ -2,3 +2,5 @@ /* * Copyright (c) 2024 Qualcomm Innovation Center, Inc. All rights reserved. */ + +#include "kera_ufs3.dtsi" diff --git a/qcom/kera-rcm-wcn7750-ufs4.dtsi b/qcom/kera-rcm-wcn7750-ufs4.dtsi index 9df4770a..ddd95998 100644 --- a/qcom/kera-rcm-wcn7750-ufs4.dtsi +++ b/qcom/kera-rcm-wcn7750-ufs4.dtsi @@ -2,3 +2,5 @@ /* * Copyright (c) 2024 Qualcomm Innovation Center, Inc. All rights reserved. */ + +#include "kera_ufs4.dtsi" diff --git a/qcom/kera_ufs2.dtsi b/qcom/kera_ufs2.dtsi new file mode 100644 index 00000000..602ec1fa --- /dev/null +++ b/qcom/kera_ufs2.dtsi @@ -0,0 +1,44 @@ +// SPDX-License-Identifier: BSD-3-Clause +/* + * Copyright (c) 2024 Qualcomm Innovation Center, Inc. All rights reserved. + */ + +&ufsphy_mem { + compatible = "qcom,ufs-phy-qmp-v4-pineapple"; + + /* VDDA_UFS_CORE */ + vdda-phy-supply = <&L6B>; + vdda-phy-max-microamp = <211860>; + + /* VDDA_UFS_0_1P2 */ + vdda-pll-supply = <&L4B>; + vdda-pll-max-microamp = <18330>; + + /* Phy GDSC for VDD_MX, always on */ + vdd-phy-gdsc-supply = <&gcc_ufs_mem_phy_gdsc>; + + /* Qref power supply, Refer Qref diagram */ + vdda-qref-supply = <&L2B>; + vdda-qref-max-microamp = <1890>; + + status = "ok"; +}; + +&ufshc_mem { + vdd-hba-supply = <&gcc_ufs_phy_gdsc>; + + vcc-supply = <&L12B>; + vcc-max-microamp = <800000>; + + vccq2-supply = <&L1D>; + vccq2-max-microamp = <750000>; + + /* VDD_PX10 is voted for the ufs_reset_n */ + qcom,vddp-ref-clk-supply = <&L3G>; + qcom,vddp-ref-clk-max-microamp = <100>; + + qcom,vccq2-parent-supply = <&S1B>; + qcom,vccq2-parent-max-microamp = <210000>; + + status = "ok"; +}; diff --git a/qcom/kera_ufs3.dtsi b/qcom/kera_ufs3.dtsi new file mode 100644 index 00000000..1dc9771e --- /dev/null +++ b/qcom/kera_ufs3.dtsi @@ -0,0 +1,44 @@ +// SPDX-License-Identifier: BSD-3-Clause +/* + * Copyright (c) 2024 Qualcomm Innovation Center, Inc. All rights reserved. + */ + +&ufsphy_mem { + compatible = "qcom,ufs-phy-qmp-v4-pineapple"; + + /* VDDA_UFS_CORE */ + vdda-phy-supply = <&L6B>; + vdda-phy-max-microamp = <211860>; + + /* VDDA_UFS_0_1P2 */ + vdda-pll-supply = <&L4B>; + vdda-pll-max-microamp = <18330>; + + /* Phy GDSC for VDD_MX, always on */ + vdd-phy-gdsc-supply = <&gcc_ufs_mem_phy_gdsc>; + + /* Qref power supply, Refer Qref diagram */ + vdda-qref-supply = <&L2B>; + vdda-qref-max-microamp = <1890>; + + status = "ok"; +}; + +&ufshc_mem { + vdd-hba-supply = <&gcc_ufs_phy_gdsc>; + + vcc-supply = <&L12B>; + vcc-max-microamp = <800000>; + + vccq-supply = <&L1D>; + vccq-max-microamp = <750000>; + + /* VDD_PX10 is voted for the ufs_reset_n */ + qcom,vddp-ref-clk-supply = <&L3G>; + qcom,vddp-ref-clk-max-microamp = <100>; + + qcom,vccq-parent-supply = <&S2B>; + qcom,vccq-parent-max-microamp = <210000>; + + status = "ok"; +}; diff --git a/qcom/kera_ufs4.dtsi b/qcom/kera_ufs4.dtsi new file mode 100644 index 00000000..3b005177 --- /dev/null +++ b/qcom/kera_ufs4.dtsi @@ -0,0 +1,49 @@ +// SPDX-License-Identifier: BSD-3-Clause +/* + * Copyright (c) 2024 Qualcomm Innovation Center, Inc. All rights reserved. + */ + +&ufsphy_mem { + compatible = "qcom,ufs-phy-qmp-v4-pineapple"; + + /* VDDA_UFS_CORE */ + vdda-phy-supply = <&L6B>; + vdda-phy-max-microamp = <211860>; + /* + * Platforms supporting Gear 5 && Rate B require a different + * voltage supply. Check the Power Grid document. + */ + vdda-phy-min-microvolt = <912000>; + + /* VDDA_UFS_0_1P2 */ + vdda-pll-supply = <&L4B>; + vdda-pll-max-microamp = <18330>; + + /* Phy GDSC for VDD_MX, always on */ + vdd-phy-gdsc-supply = <&gcc_ufs_mem_phy_gdsc>; + + /* Qref power supply, Refer Qref diagram */ + vdda-qref-supply = <&L2B>; + vdda-qref-max-microamp = <1890>; + + status = "ok"; +}; + +&ufshc_mem { + vdd-hba-supply = <&gcc_ufs_phy_gdsc>; + + vcc-supply = <&L12B>; + vcc-max-microamp = <1200000>; + + vccq-supply = <&L1D>; + vccq-max-microamp = <1200000>; + + /* VDD_PX10 is voted for the ufs_reset_n */ + qcom,vddp-ref-clk-supply = <&L3G>; + qcom,vddp-ref-clk-max-microamp = <100>; + + qcom,vccq-parent-supply = <&S2B>; + qcom,vccq-parent-max-microamp = <210000>; + + status = "ok"; +}; From e5af4b755e3c858a8a25236ab01655de0279de44 Mon Sep 17 00:00:00 2001 From: Manish Pandey Date: Mon, 25 Nov 2024 15:18:03 +0530 Subject: [PATCH 2/3] ARM: dts: msm: Update UFS_RESET pin for kera Commit e3eceb0 (pinctrl:qcom:Add support for Kera SoC in pin control) updates the UFS_RESET pin from 184 to 185. This commit updates kera UFS 'reset-gpios' to 185 to ensure proper functioning of UFS. Change-Id: I9b850a7c997303b467b6fea4a64bc19ec3e6372c Signed-off-by: Manish Pandey --- qcom/kera.dtsi | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/qcom/kera.dtsi b/qcom/kera.dtsi index 791751e6..0779cbba 100644 --- a/qcom/kera.dtsi +++ b/qcom/kera.dtsi @@ -2245,7 +2245,7 @@ qcom,bypass-pbl-rst-wa; qcom,max-cpus = <8>; - reset-gpios = <&tlmm 184 GPIO_ACTIVE_LOW>; + reset-gpios = <&tlmm 185 GPIO_ACTIVE_LOW>; resets = <&gcc GCC_UFS_PHY_BCR>; reset-names = "rst"; From a47d4a368a633dea1374638cc60b1f92161fc687 Mon Sep 17 00:00:00 2001 From: Manish Pandey Date: Mon, 25 Nov 2024 15:34:00 +0530 Subject: [PATCH 3/3] dt-bindings: soc: qcom: Add documentation for ufs-phy-qmp-v4-niobe Add documentation for ufs-phy-qmp-v4-niobe phy driver. Change-Id: I2f94ba0b60cceb94789b5d2865d36d7d522ea12b Signed-off-by: Manish Pandey --- bindings/ufs/qcom,ufs.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/bindings/ufs/qcom,ufs.yaml b/bindings/ufs/qcom,ufs.yaml index cd88de10..83a3a2dc 100644 --- a/bindings/ufs/qcom,ufs.yaml +++ b/bindings/ufs/qcom,ufs.yaml @@ -37,6 +37,7 @@ properties: - qcom,ufs-phy-qmp-v4-pineapple - qcom,ufs-phy-qmp-v4-waipio - qcom,ufs-phy-qmp-v4-sun + - qcom,ufs-phy-qmp-v4-niobe - const: qcom,ufshc - const: jedec,ufs-2.0