From da6330fe75dd9e2a85dc06fe38decce51c85c2d7 Mon Sep 17 00:00:00 2001 From: Veera Vegivada Date: Tue, 9 Feb 2021 17:19:41 +0530 Subject: [PATCH] ARM: dts: msm: Reorganize the apps_rsc and mxlvl node for sa8195 Move the 'apps_rsc' node to the beginning of the 'soc' node such that the rpmh-regulator devices are populated early in the boot process. As many consumers' probe depend on these regulator devices, placing 'apps_rsc' at the beginning would satisfy the consumer devices as soon as they are populated later in the boot. This way, the drivers no longer have to wait for the regulator devices to be populated, thus optimizing the boot performance. Change-Id: I8f760a8e3eb3c0e301e5866d83e828208743c183 --- qcom/sa8195-regulator.dtsi | 130 ++++++++++++++++++------------------- qcom/sdmshrike.dtsi | 64 +++++++++--------- 2 files changed, 97 insertions(+), 97 deletions(-) diff --git a/qcom/sa8195-regulator.dtsi b/qcom/sa8195-regulator.dtsi index 4317499b6ade..5f6d6bfe0bee 100644 --- a/qcom/sa8195-regulator.dtsi +++ b/qcom/sa8195-regulator.dtsi @@ -31,6 +31,71 @@ }; }; + /* PM8150C S3 + S4 = VDD_MX supply */ + rpmh-regulator-mxlvl { + compatible = "qcom,rpmh-arc-regulator"; + qcom,resource-name = "mx.lvl"; + + VDD_MX_LEVEL: S3C_LEVEL: + pm8150c_s3_level: regulator-pm8150c-s3-level { + regulator-name = "pm8150c_s3_level"; + qcom,set = ; + regulator-min-microvolt + = ; + regulator-max-microvolt + = ; + qcom,init-voltage-level + = ; + }; + + VDD_MX_LEVEL_AO: S3C_LEVEL_AO: + pm8150c_s3_level_ao: regulator-pm8150c-s3-level-ao { + regulator-name = "pm8150c_s3_level_ao"; + qcom,set = ; + regulator-min-microvolt + = ; + regulator-max-microvolt + = ; + qcom,init-voltage-level + = ; + }; + }; + + /* PM8150_2 regulators */ + /* PM8150_2 S3 + S2 + S1 = VDD_CX supply */ + rpmh-regulator-cxlvl { + compatible = "qcom,rpmh-arc-regulator"; + qcom,resource-name = "cx.lvl"; + pm8150_2_s3_level-parent-supply = <&VDD_MX_LEVEL>; + pm8150_2_s3_level_ao-parent-supply = <&VDD_MX_LEVEL_AO>; + + VDD_CX_LEVEL: S3E_LEVEL: + pm8150_2_s3_level: regulator-pm8150_2-s3-level { + regulator-name = "pm8150_2_s3_level"; + qcom,set = ; + regulator-min-microvolt + = ; + regulator-max-microvolt + = ; + qcom,init-voltage-level + = ; + qcom,min-dropout-voltage-level = <(-1)>; + }; + + VDD_CX_LEVEL_AO: S3E_LEVEL_AO: + pm8150_2_s3_level_ao: regulator-pm8150_2-s3-level-ao { + regulator-name = "pm8150_2_s3_level_ao"; + qcom,set = ; + regulator-min-microvolt + = ; + regulator-max-microvolt + = ; + qcom,init-voltage-level + = ; + qcom,min-dropout-voltage-level = <(-1)>; + }; + }; + rpmh-regulator-ldoa3 { compatible = "qcom,rpmh-vrm-regulator"; qcom,resource-name = "ldoa3"; @@ -248,41 +313,6 @@ }; }; - /* PM8150_2 regulators */ - /* PM8150_2 S3 + S2 + S1 = VDD_CX supply */ - rpmh-regulator-cxlvl { - compatible = "qcom,rpmh-arc-regulator"; - qcom,resource-name = "cx.lvl"; - pm8150_2_s3_level-parent-supply = <&VDD_MX_LEVEL>; - pm8150_2_s3_level_ao-parent-supply = <&VDD_MX_LEVEL_AO>; - - VDD_CX_LEVEL: S3E_LEVEL: - pm8150_2_s3_level: regulator-pm8150_2-s3-level { - regulator-name = "pm8150_2_s3_level"; - qcom,set = ; - regulator-min-microvolt - = ; - regulator-max-microvolt - = ; - qcom,init-voltage-level - = ; - qcom,min-dropout-voltage-level = <(-1)>; - }; - - VDD_CX_LEVEL_AO: S3E_LEVEL_AO: - pm8150_2_s3_level_ao: regulator-pm8150_2-s3-level-ao { - regulator-name = "pm8150_2_s3_level_ao"; - qcom,set = ; - regulator-min-microvolt - = ; - regulator-max-microvolt - = ; - qcom,init-voltage-level - = ; - qcom,min-dropout-voltage-level = <(-1)>; - }; - }; - rpmh-regulator-smpe4 { compatible = "qcom,rpmh-vrm-regulator"; qcom,resource-name = "smpe4"; @@ -585,36 +615,6 @@ }; }; - /* PM8150C S3 + S4 = VDD_MX supply */ - rpmh-regulator-mxlvl { - compatible = "qcom,rpmh-arc-regulator"; - qcom,resource-name = "mx.lvl"; - - VDD_MX_LEVEL: S3C_LEVEL: - pm8150c_s3_level: regulator-pm8150c-s3-level { - regulator-name = "pm8150c_s3_level"; - qcom,set = ; - regulator-min-microvolt - = ; - regulator-max-microvolt - = ; - qcom,init-voltage-level - = ; - }; - - VDD_MX_LEVEL_AO: S3C_LEVEL_AO: - pm8150c_s3_level_ao: regulator-pm8150c-s3-level-ao { - regulator-name = "pm8150c_s3_level_ao"; - qcom,set = ; - regulator-min-microvolt - = ; - regulator-max-microvolt - = ; - qcom,init-voltage-level - = ; - }; - }; - /* PM8150C S5 = VDDA_EBI supply */ rpmh-regulator-ebilvl { compatible = "qcom,rpmh-arc-regulator"; diff --git a/qcom/sdmshrike.dtsi b/qcom/sdmshrike.dtsi index 7d54e7b22864..97c6d492208c 100644 --- a/qcom/sdmshrike.dtsi +++ b/qcom/sdmshrike.dtsi @@ -469,6 +469,38 @@ interrupt-controller; }; + apps_rsc: rsc@18200000 { + label = "apps_rsc"; + compatible = "qcom,rpmh-rsc"; + reg = <0x18200000 0x10000>, + <0x18210000 0x10000>, + <0x18220000 0x10000>; + reg-names = "drv-0", "drv-1", "drv-2"; + interrupts = , + , + ; + qcom,tcs-offset = <0xd00>; + qcom,drv-id = <2>; + qcom,tcs-config = , + , + , + ; + + apps_bcm_voter: bcm_voter { + compatible = "qcom,bcm-voter"; + }; + + rpmhcc: clock-controller { + compatible = "qcom,sm8150-rpmh-clk"; + #clock-cells = <1>; + status = "okay"; + }; + + system_pm { + compatible = "qcom,system-pm"; + }; + }; + timer { compatible = "arm,armv8-timer"; interrupts = <1 1 0xf08>, @@ -1021,38 +1053,6 @@ clock-frequency = <32768>; }; - apps_rsc: rsc@18200000 { - label = "apps_rsc"; - compatible = "qcom,rpmh-rsc"; - reg = <0x18200000 0x10000>, - <0x18210000 0x10000>, - <0x18220000 0x10000>; - reg-names = "drv-0", "drv-1", "drv-2"; - interrupts = , - , - ; - qcom,tcs-offset = <0xd00>; - qcom,drv-id = <2>; - qcom,tcs-config = , - , - , - ; - - apps_bcm_voter: bcm_voter { - compatible = "qcom,bcm-voter"; - }; - - rpmhcc: clock-controller { - compatible = "qcom,sm8150-rpmh-clk"; - #clock-cells = <1>; - status = "okay"; - }; - - system_pm { - compatible = "qcom,system-pm"; - }; - }; - disp_rsc: rsc@af20000 { label = "disp_rsc"; compatible = "qcom,rpmh-rsc";