From ab118e379536630e713106dbcd4a891d762ca18f Mon Sep 17 00:00:00 2001 From: Veera Vegivada Date: Tue, 5 Apr 2022 09:32:23 +0530 Subject: [PATCH] ARM: dts: qcom: Add RPMh controlled PMIC regulators for Lemans Add rpmh-regulator device nodes for the PMIC PM8775 regulators. This ensures that consumers are able to modify the physical state of these PMIC regulators. Change-Id: I1c57867eca5d96c966e00eb83542ecdaa4ee5b2a --- qcom/lemans-3pmic-regulators.dtsi | 39 ++ qcom/lemans-4pmic-regulators.dtsi | 711 ++++++++++++++++++++++++++++++ qcom/lemans.dtsi | 2 + 3 files changed, 752 insertions(+) create mode 100644 qcom/lemans-3pmic-regulators.dtsi create mode 100644 qcom/lemans-4pmic-regulators.dtsi diff --git a/qcom/lemans-3pmic-regulators.dtsi b/qcom/lemans-3pmic-regulators.dtsi new file mode 100644 index 00000000..b29bad09 --- /dev/null +++ b/qcom/lemans-3pmic-regulators.dtsi @@ -0,0 +1,39 @@ +#include "lemans-4pmic-regulators.dtsi" + +&apps_rsc_drv2 { + /delete-node/ rpmh-regulator-nsp0lvl; + /delete-node/ rpmh-regulator-nsp1lvl; + + rpmh-regulator-nsp0lvl { + compatible = "qcom,rpmh-arc-regulator"; + qcom,resource-name = "nsp0.lvl"; + VDD_NSP_0_LEVEL: + S8C_LEVEL: + pm8255_c_s8_level: regulator-pm8255_c-s8-level { + regulator-name = "pm8255_c_s8_level"; + qcom,set = ; + regulator-min-microvolt = + ; + regulator-max-microvolt = + ; + qcom,init-voltage-level = + ; + }; + }; + + &L8C { + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <3300000>; + qcom,init-voltage = <1800000>; + qcom,init-mode = + ; + }; + + &L8E { + regulator-min-microvolt = <1700000>; + regulator-max-microvolt = <1950000>; + qcom,init-voltage = <1700000>; + qcom,init-mode = + ; + }; +}; diff --git a/qcom/lemans-4pmic-regulators.dtsi b/qcom/lemans-4pmic-regulators.dtsi new file mode 100644 index 00000000..fd73f348 --- /dev/null +++ b/qcom/lemans-4pmic-regulators.dtsi @@ -0,0 +1,711 @@ +#include + +&apps_rsc_drv2 { + rpmh-regulator-cxlvl { + compatible = "qcom,rpmh-arc-regulator"; + qcom,resource-name = "cx.lvl"; + proxy-supply = <&VDD_CX_LEVEL>; + + VDD_CX_LEVEL: S1A_LEVEL: + pm8775_a_s1_level: regulator-pm8775_a-s1-level { + regulator-name = "pm8775_a_s1_level"; + qcom,set = ; + regulator-min-microvolt = + ; + regulator-max-microvolt = + ; + qcom,init-voltage-level = + ; + qcom,proxy-consumer-enable; + qcom,proxy-consumer-voltage = + ; + }; + + VDD_CX_LEVEL_AO: S1A_LEVEL_AO: + pm8775_a_s1_level_ao: regulator-pm8775_a-s1-level-ao { + regulator-name = "pm8775_a_s1_level_ao"; + qcom,set = ; + regulator-min-microvolt = + ; + regulator-max-microvolt = + ; + qcom,init-voltage-level = + ; + }; + }; + + rpmh-regulator-gfxlvl { + compatible = "qcom,rpmh-arc-regulator"; + qcom,resource-name = "gfx.lvl"; + + VDD_GFX_LEVEL: S6A_LEVEL: + pm8775_a_s6_level: regulator-pm8775_a-s6-level { + regulator-name = "pm8775_a_s6_level"; + qcom,set = ; + regulator-min-microvolt = + ; + regulator-max-microvolt = + ; + qcom,init-voltage-level = + ; + }; + }; + + rpmh-regulator-lmxlvl { + compatible = "qcom,rpmh-arc-regulator"; + qcom,resource-name = "lmx.lvl"; + + VDD_LPI_MX_LEVEL: L1A_LEVEL: + pm8775_a_l1_level: regulator-pm8775_a-l1-level { + regulator-name = "pm8775_a_l1_level"; + qcom,set = ; + regulator-min-microvolt = + ; + regulator-max-microvolt = + ; + qcom,init-voltage-level = + ; + }; + }; + + rpmh-regulator-lcxlvl { + compatible = "qcom,rpmh-arc-regulator"; + qcom,resource-name = "lcx.lvl"; + + VDD_LPI_CX_LEVEL: L2A_LEVEL: + pm8775_a_l2_level: regulator-pm8775_a-l2-level { + regulator-name = "pm8775_a_l2_level"; + qcom,set = ; + regulator-min-microvolt = + ; + regulator-max-microvolt = + ; + qcom,init-voltage-level = + ; + }; + }; + + rpmh-regulator-mxlvl { + compatible = "qcom,rpmh-arc-regulator"; + qcom,resource-name = "mx.lvl"; + proxy-supply = <&VDD_MXA_LEVEL>; + + VDD_MXA_LEVEL: S1C_LEVEL: + pm8775_c_s1_level: regulator-pm8775_c-s1-level { + regulator-name = "pm8775_c_s1_level"; + qcom,set = ; + regulator-min-microvolt = + ; + regulator-max-microvolt = + ; + qcom,init-voltage-level = + ; + qcom,proxy-consumer-enable; + qcom,proxy-consumer-voltage = + ; + }; + + VDD_MXA_LEVEL_AO: S1C_LEVEL_AO: + pm8775_c_s1_level_ao: regulator-pm8775_c-s1-level-ao { + regulator-name = "pm8775_c_s1_level_ao"; + qcom,set = ; + regulator-min-microvolt = + ; + regulator-max-microvolt = + ; + qcom,init-voltage-level = + ; + }; + }; + + rpmh-regulator-mmcxlvl { + compatible = "qcom,rpmh-arc-regulator"; + qcom,resource-name = "mmcx.lvl"; + proxy-supply = <&VDD_MMCX_LEVEL>; + + VDD_MMCX_LEVEL: VDD_MM_LEVEL: S3C_LEVEL: + pm8775_c_s3_level: regulator-pm8775_c-s3-level { + regulator-name = "pm8775_c_s3_level"; + qcom,set = ; + regulator-min-microvolt = + ; + regulator-max-microvolt = + ; + qcom,init-voltage-level = + ; + qcom,proxy-consumer-enable; + qcom,proxy-consumer-voltage = + ; + }; + + VDD_MMCX_LEVEL_AO: S3C_LEVEL_AO: + pm8775_c_s3_level_ao: regulator-pm8775_c-s3-level-ao { + regulator-name = "pm8775_c_s3_level_ao"; + qcom,set = ; + regulator-min-microvolt = + ; + regulator-max-microvolt = + ; + qcom,init-voltage-level = + ; + }; + }; + + rpmh-regulator-nsp0lvl { + compatible = "qcom,rpmh-arc-regulator"; + qcom,resource-name = "nsp0.lvl"; + + VDD_NSP_0_LEVEL: S6C_LEVEL: + pm8775_c_s6_level: regulator-pm8775_c-s6-level { + regulator-name = "pm8775_c_s6_level"; + qcom,set = ; + regulator-min-microvolt = + ; + regulator-max-microvolt = + ; + qcom,init-voltage-level = + ; + }; + }; + + rpmh-regulator-mxclvl { + compatible = "qcom,rpmh-arc-regulator"; + qcom,resource-name = "mxc.lvl"; + proxy-supply = <&VDD_MXC_LEVEL>; + + VDD_MXC_LEVEL: S5E_LEVEL: + pm8775_e_s5_level: regulator-pm8775_e-s5-level { + regulator-name = "pm8775_e_s5_level"; + qcom,set = ; + regulator-min-microvolt = + ; + regulator-max-microvolt = + ; + qcom,init-voltage-level = + ; + qcom,proxy-consumer-enable; + qcom,proxy-consumer-voltage = + ; + }; + + VDD_MXC_LEVEL_AO: S5E_LEVEL_AO: + pm8775_e_s5_level_ao: regulator-pm8775_e-s5-level-ao { + regulator-name = "pm8775_e_s5_level_ao"; + qcom,set = ; + regulator-min-microvolt = + ; + regulator-max-microvolt = + ; + qcom,init-voltage-level = + ; + }; + + VDD_MXC_MMCX_VOTER_LEVEL: VDD_MXC_MM_VOTER_LEVEL: + VDD_MM_MXC_VOTER_LEVEL: + regulator-pm8775_e-s5-mmcx-voter-level { + regulator-name = "pm8775_e_s5_mmcx_voter_level"; + vin-supply = <&VDD_MMCX_LEVEL>; + qcom,set = ; + regulator-min-microvolt = + ; + regulator-max-microvolt = + ; + qcom,init-voltage-level = + ; + }; + + VDD_MXC_GFX_VOTER_LEVEL: VDD_GFX_MXC_VOTER_LEVEL: + VDD_GX_MXC_VOTER_LEVEL: + regulator-pm8775_e-s5-gfx-voter-level { + regulator-name = "pm8775_e_s5_gfx_voter_level"; + pm8775_e_s5_gfx_voter_level-parent-supply = + <&VDD_GFX_LEVEL>; + qcom,set = ; + regulator-min-microvolt = + ; + regulator-max-microvolt = + ; + qcom,init-voltage-level = + ; + }; + }; + + rpmh-regulator-ebilvl { + compatible = "qcom,rpmh-arc-regulator"; + qcom,resource-name = "ebi.lvl"; + + VDD_EBI_LEVEL: S8E_LEVEL: + pm8775_e_s8_level: regulator-pm8775_e-s8-level { + regulator-name = "pm8775_e_s8_level"; + qcom,set = ; + regulator-min-microvolt = + ; + regulator-max-microvolt = + ; + qcom,init-voltage-level = + ; + }; + }; + + rpmh-regulator-nsp1lvl { + compatible = "qcom,rpmh-arc-regulator"; + qcom,resource-name = "nsp1.lvl"; + + VDD_NSP_1_LEVEL: S1G_LEVEL: + pm8775_g_s1_level: regulator-pm8775_g-s1-level { + regulator-name = "pm8775_g_s1_level"; + qcom,set = ; + regulator-min-microvolt = + ; + regulator-max-microvolt = + ; + qcom,init-voltage-level = + ; + }; + }; + + rpmh-regulator-smpa4 { + compatible = "qcom,rpmh-vrm-regulator"; + qcom,resource-name = "smpa4"; + + S4A: + pm8775_a_s4: regulator-pm8775_a-s4 { + regulator-name = "pm8775_a_s4"; + qcom,set = ; + regulator-min-microvolt = <1620000>; + regulator-max-microvolt = <2000000>; + qcom,init-voltage = <1800000>; + }; + }; + + rpmh-regulator-smpa5 { + compatible = "qcom,rpmh-vrm-regulator"; + qcom,resource-name = "smpa5"; + + S5A: + pm8775_a_s5: regulator-pm8775_a-s5 { + regulator-name = "pm8775_a_s5"; + qcom,set = ; + regulator-min-microvolt = <1850000>; + regulator-max-microvolt = <2100000>; + qcom,init-voltage = <1850000>; + }; + }; + + rpmh-regulator-smpa9 { + compatible = "qcom,rpmh-vrm-regulator"; + qcom,resource-name = "smpa9"; + + S9A: + pm8775_a_s9: regulator-pm8775_a-s9 { + regulator-name = "pm8775_a_s9"; + qcom,set = ; + regulator-min-microvolt = <535000>; + regulator-max-microvolt = <1120000>; + qcom,init-voltage = <1000000>; + }; + }; + + rpmh-regulator-ldoa4 { + compatible = "qcom,rpmh-vrm-regulator"; + qcom,resource-name = "ldoa4"; + qcom,regulator-type = "pmic5-ldo"; + qcom,supported-modes = + ; + qcom,mode-threshold-currents = <0 30000>; + + L4A: + pm8775_a_l4: regulator-pm8775_a-l4 { + regulator-name = "pm8775_a_l4"; + qcom,set = ; + regulator-min-microvolt = <788000>; + regulator-max-microvolt = <1050000>; + qcom,init-voltage = <880000>; + qcom,init-mode = + ; + }; + }; + + rpmh-regulator-ldoa5 { + compatible = "qcom,rpmh-vrm-regulator"; + qcom,resource-name = "ldoa5"; + qcom,regulator-type = "pmic5-ldo"; + qcom,supported-modes = + ; + qcom,mode-threshold-currents = <0 30000>; + + L5A: + pm8775_a_l5: regulator-pm8775_a-l5 { + regulator-name = "pm8775_a_l5"; + qcom,set = ; + regulator-min-microvolt = <870000>; + regulator-max-microvolt = <950000>; + qcom,init-voltage = <870000>; + qcom,init-mode = + ; + }; + }; + + rpmh-regulator-ldoa6 { + compatible = "qcom,rpmh-vrm-regulator"; + qcom,resource-name = "ldoa6"; + qcom,regulator-type = "pmic5-ldo"; + qcom,supported-modes = + ; + qcom,mode-threshold-currents = <0 30000>; + + L6A: + pm8775_a_l6: regulator-pm8775_a-l6 { + regulator-name = "pm8775_a_l6"; + qcom,set = ; + regulator-min-microvolt = <870000>; + regulator-max-microvolt = <970000>; + qcom,init-voltage = <900000>; + qcom,init-mode = + ; + }; + }; + + rpmh-regulator-ldoa7 { + compatible = "qcom,rpmh-vrm-regulator"; + qcom,resource-name = "ldoa7"; + qcom,regulator-type = "pmic5-ldo"; + qcom,supported-modes = + ; + qcom,mode-threshold-currents = <0 30000>; + + L7A: + pm8775_a_l7: regulator-pm8775_a-l7 { + regulator-name = "pm8775_a_l7"; + qcom,set = ; + regulator-min-microvolt = <720000>; + regulator-max-microvolt = <950000>; + qcom,init-voltage = <880000>; + qcom,init-mode = + ; + }; + }; + + rpmh-regulator-ldoa8 { + compatible = "qcom,rpmh-vrm-regulator"; + qcom,resource-name = "ldoa8"; + qcom,regulator-type = "pmic5-ldo"; + qcom,supported-modes = + ; + qcom,mode-threshold-currents = <0 10000>; + + L8A: + pm8775_a_l8: regulator-pm8775_a-l8 { + regulator-name = "pm8775_a_l8"; + qcom,set = ; + regulator-min-microvolt = <2400000>; + regulator-max-microvolt = <3300000>; + qcom,init-voltage = <2960000>; + qcom,init-mode = + ; + }; + }; + + rpmh-regulator-ldoa9 { + compatible = "qcom,rpmh-vrm-regulator"; + qcom,resource-name = "ldoa9"; + qcom,regulator-type = "pmic5-ldo"; + qcom,supported-modes = + ; + qcom,mode-threshold-currents = <0 30000>; + + L9A: + pm8775_a_l9: regulator-pm8775_a-l9 { + regulator-name = "pm8775_a_l9"; + qcom,set = ; + regulator-min-microvolt = <2970000>; + regulator-max-microvolt = <3544000>; + qcom,init-voltage = <3072000>; + qcom,init-mode = + ; + }; + }; + + rpmh-regulator-ldoc1 { + compatible = "qcom,rpmh-vrm-regulator"; + qcom,resource-name = "ldoc1"; + qcom,regulator-type = "pmic5-ldo"; + qcom,supported-modes = + ; + qcom,mode-threshold-currents = <0 30000>; + + L1C: + pm8775_c_l1: regulator-pm8775_c-l1 { + regulator-name = "pm8775_c_l1"; + qcom,set = ; + regulator-min-microvolt = <1140000>; + regulator-max-microvolt = <1260000>; + qcom,init-voltage = <1200000>; + qcom,init-mode = + ; + }; + }; + + rpmh-regulator-ldoc2 { + compatible = "qcom,rpmh-vrm-regulator"; + qcom,resource-name = "ldoc2"; + qcom,regulator-type = "pmic5-ldo"; + qcom,supported-modes = + ; + qcom,mode-threshold-currents = <0 30000>; + + L2C: + pm8775_c_l2: regulator-pm8775_c-l2 { + regulator-name = "pm8775_c_l2"; + qcom,set = ; + regulator-min-microvolt = <900000>; + regulator-max-microvolt = <1100000>; + qcom,init-voltage = <900000>; + qcom,init-mode = + ; + }; + }; + + rpmh-regulator-ldoc3 { + compatible = "qcom,rpmh-vrm-regulator"; + qcom,resource-name = "ldoc3"; + qcom,regulator-type = "pmic5-ldo"; + qcom,supported-modes = + ; + qcom,mode-threshold-currents = <0 30000>; + + L3C: + pm8775_c_l3: regulator-pm8775_c-l3 { + regulator-name = "pm8775_c_l3"; + qcom,set = ; + regulator-min-microvolt = <1100000>; + regulator-max-microvolt = <1300000>; + qcom,init-voltage = <1200000>; + qcom,init-mode = + ; + }; + }; + + rpmh-regulator-ldoc4 { + compatible = "qcom,rpmh-vrm-regulator"; + qcom,resource-name = "ldoc4"; + qcom,regulator-type = "pmic5-ldo"; + qcom,supported-modes = + ; + qcom,mode-threshold-currents = <0 30000>; + + L4C: + pm8775_c_l4: regulator-pm8775_c-l4 { + regulator-name = "pm8775_c_l4"; + qcom,set = ; + regulator-min-microvolt = <1100000>; + regulator-max-microvolt = <1300000>; + qcom,init-voltage = <1200000>; + qcom,init-mode = + ; + }; + }; + + rpmh-regulator-ldoc5 { + compatible = "qcom,rpmh-vrm-regulator"; + qcom,resource-name = "ldoc5"; + qcom,regulator-type = "pmic5-ldo"; + qcom,supported-modes = + ; + qcom,mode-threshold-currents = <0 30000>; + + L5C: + pm8775_c_l5: regulator-pm8775_c-l5 { + regulator-name = "pm8775_c_l5"; + qcom,set = ; + regulator-min-microvolt = <1100000>; + regulator-max-microvolt = <1300000>; + qcom,init-voltage = <1100000>; + qcom,init-mode = + ; + }; + }; + + rpmh-regulator-ldoc6 { + compatible = "qcom,rpmh-vrm-regulator"; + qcom,resource-name = "ldoc6"; + qcom,regulator-type = "pmic5-ldo"; + qcom,supported-modes = + ; + qcom,mode-threshold-currents = <0 30000>; + + L6C: + pm8775_c_l6: regulator-pm8775_c-l6 { + regulator-name = "pm8775_c_l6"; + qcom,set = ; + regulator-min-microvolt = <1620000>; + regulator-max-microvolt = <1980000>; + qcom,init-voltage = <1800000>; + qcom,init-mode = + ; + }; + }; + + rpmh-regulator-ldoc7 { + compatible = "qcom,rpmh-vrm-regulator"; + qcom,resource-name = "ldoc7"; + qcom,regulator-type = "pmic5-ldo"; + qcom,supported-modes = + ; + qcom,mode-threshold-currents = <0 30000>; + + L7C: + pm8775_c_l7: regulator-pm8775_c-l7 { + regulator-name = "pm8775_c_l7"; + qcom,set = ; + regulator-min-microvolt = <1620000>; + regulator-max-microvolt = <2000000>; + qcom,init-voltage = <1620000>; + qcom,init-mode = + ; + }; + }; + + rpmh-regulator-ldoc8 { + compatible = "qcom,rpmh-vrm-regulator"; + qcom,resource-name = "ldoc8"; + qcom,regulator-type = "pmic5-ldo"; + qcom,supported-modes = + ; + qcom,mode-threshold-currents = <0 10000>; + + L8C: + pm8775_c_l8: regulator-pm8775_c-l8 { + regulator-name = "pm8775_c_l8"; + qcom,set = ; + regulator-min-microvolt = <2400000>; + regulator-max-microvolt = <3300000>; + qcom,init-voltage = <2400000>; + qcom,init-mode = + ; + }; + }; + + rpmh-regulator-ldoc9 { + compatible = "qcom,rpmh-vrm-regulator"; + qcom,resource-name = "ldoc9"; + qcom,regulator-type = "pmic5-ldo"; + qcom,supported-modes = + ; + qcom,mode-threshold-currents = <0 30000>; + + L9C: + pm8775_c_l9: regulator-pm8775_c-l9 { + regulator-name = "pm8775_c_l9"; + qcom,set = ; + regulator-min-microvolt = <1650000>; + regulator-max-microvolt = <2700000>; + qcom,init-voltage = <1650000>; + qcom,init-mode = + ; + }; + }; + + rpmh-regulator-smpe4 { + compatible = "qcom,rpmh-vrm-regulator"; + qcom,resource-name = "smpe4"; + + S4E: + pm8775_e_s4: regulator-pm8775_e-s4 { + regulator-name = "pm8775_e_s4"; + qcom,set = ; + regulator-min-microvolt = <970000>; + regulator-max-microvolt = <1520000>; + qcom,init-voltage = <1352000>; + }; + }; + + rpmh-regulator-smpe7 { + compatible = "qcom,rpmh-vrm-regulator"; + qcom,resource-name = "smpe7"; + + S7E: + pm8775_e_s7: regulator-pm8775_e-s7 { + regulator-name = "pm8775_e_s7"; + qcom,set = ; + regulator-min-microvolt = <1010000>; + regulator-max-microvolt = <1170000>; + qcom,init-voltage = <1100000>; + }; + }; + + rpmh-regulator-smpe9 { + compatible = "qcom,rpmh-vrm-regulator"; + qcom,resource-name = "smpe9"; + + S9E: + pm8775_e_s9: regulator-pm8775_e-s9 { + regulator-name = "pm8775_e_s9"; + qcom,set = ; + regulator-min-microvolt = <300000>; + regulator-max-microvolt = <570000>; + qcom,init-voltage = <500000>; + }; + }; + + rpmh-regulator-ldoe6 { + compatible = "qcom,rpmh-vrm-regulator"; + qcom,resource-name = "ldoe6"; + qcom,regulator-type = "pmic5-ldo"; + qcom,supported-modes = + ; + qcom,mode-threshold-currents = <0 30000>; + + L6E: + pm8775_e_l6: regulator-pm8775_e-l6 { + regulator-name = "pm8775_e_l6"; + qcom,set = ; + regulator-min-microvolt = <1280000>; + regulator-max-microvolt = <1450000>; + qcom,init-voltage = <1280000>; + qcom,init-mode = + ; + }; + }; + + rpmh-regulator-ldoe8 { + compatible = "qcom,rpmh-vrm-regulator"; + qcom,resource-name = "ldoe8"; + qcom,regulator-type = "pmic5-ldo"; + qcom,supported-modes = + ; + qcom,mode-threshold-currents = <0 10000>; + + L8E: + pm8775_e_l8: regulator-pm8775_e-l8 { + regulator-name = "pm8775_e_l8"; + qcom,set = ; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <1950000>; + qcom,init-voltage = <1800000>; + qcom,init-mode = + ; + }; + }; +}; diff --git a/qcom/lemans.dtsi b/qcom/lemans.dtsi index eac66530..d36a4fa0 100644 --- a/qcom/lemans.dtsi +++ b/qcom/lemans.dtsi @@ -554,3 +554,5 @@ interrupts = ; }; }; + +#include "lemans-4pmic-regulators.dtsi"