Loading Documentation/devicetree/bindings/regulator/cpr4-mmss-ldo-regulator.txt 0 → 100644 +321 −0 Original line number Diff line number Diff line Qualcomm Technologies, Inc. CPR4 Regulator - MMSS LDO Specific Bindings MMSS LDO CPR4 controllers each support one CPR thread that monitors the voltage of the graphics processor (MMSS) supply regulator. The CPR open-loop voltages are stored in hardware fuses for MMSS CPR4 controllers. However, the CPR target quotients must be defined in device tree. This document describes the MMSS LDO specific CPR4 bindings. ======================= Required Node Structure ======================= CPR3 regulators must be described in three levels of devices nodes. The first level describes the CPR3 controller. The second level describes exacly one hardware thread managed by the controller. The third level describes one or more logical regulators handled by the CPR thread. All platform independent cpr3-regulator binding guidelines defined in cpr3-regulator.txt also apply to cpr4-mmss-ldo-regulator devices. ==================================== First Level Nodes - CPR3 Controllers ==================================== MMSS LDO specific properties: - compatible Usage: required Value type: <string> Definition: should be the following: "qcom,cpr4-msmfalcon-mmss-ldo-regulator". - clocks Usage: required Value type: <prop-encoded-array> Definition: Array of clock tuples in which each tuple consists of a phandle to a clock device and a clock ID number. The following clocks must be specified: MMSS RBCPR and MMSS RBCPR AHB. - clock-names Usage: required Value type: <stringlist> Definition: Clock names. This list must match up 1-to-1 with the clocks specified in the 'clocks' property. "core_clk", and "bus_clk" must be specified. - qcom,cpr-step-quot-fixed Usage: Optional Value type: <u32> Definition: Fixed step quotient value used by controller for applying the SDELTA margin adjustments on the programmed target quotient values. The step quotient is the number of additional ring oscillator ticks observed for each qcom,voltage-step increase in vdd-supply output voltage. Supported values: 0 - 63. ================================================= Second Level Nodes - CPR Threads for a Controller ================================================= MMSS specific properties: N/A =============================================== Third Level Nodes - CPR Regulators for a Thread =============================================== MMSS specific properties: - qcom,cpr-fuse-corners Usage: required Value type: <u32> Definition: Specifies the number of fuse corners. This value must be 6 for msmfalcon GFX LDO. These fuse corners are: MinSVS, LowSVS, SVS, SVSP, NOM and NOMP. The open-loop voltage fuses are allocated for LowSVS, SVS, NOM and NOMP corners. The open-loop voltages for MinSVS and SVSP are derived by applying fixed offset from LowSVS and NOM open-loop voltages respectively. The closed-loop offset voltage fuses are allocated for LowSVS, SVS, NOM and NOMP corners. The MinSVS and SVSP corners use the closed-loop offset voltage fuses of LowSVS and NOM corners respectively. - qcom,cpr-fuse-combos Usage: required Value type: <u32> Definition: Specifies the number of fuse combinations being supported by the device. This value is utilized by several other properties. Supported values are 1 up to the maximum possible for a given regulator type. For MMSS the maximum supported value is 8. These combos correspond to CPR revision fuse values from 0 to 7 in order. - qcom,mem-acc-voltage Usage: required if mem-acc-supply is specified for the CPR3 controller containing this CPR3 regulator Value type: <prop-encoded-array> Definition: A list of integer tuples which each define the mem-acc-supply corner for each voltage corner in order from lowest to highest. The list must contain qcom,cpr-fuse-combos number of tuples in which case the tuples are matched to fuse combinations 1-to-1 or qcom,cpr-speed-bins number of tuples in which case the tuples are matched to speed bins 1-to-1 or exactly 1 tuple which is used regardless of the fuse combination and speed bin found on a given chip. Each tuple must be of the length defined in the corresponding element of the qcom,cpr-corners property or the qcom,cpr-speed-bins property. A single tuple may only be specified if all of the corner counts in qcom,cpr-corners are the same. - qcom,cpr-target-quotients Usage: required Value type: <prop-encoded-array> Definition: A grouping of integer tuple lists. Each tuple defines the CPR target quotient for each ring oscillator (RO) for a given corner. Since CPR3 supports exactly 16 ROs, each tuple must contain 16 elements corresponding to RO0 through RO15 in order. If a given RO is unused for a corner, then its target quotient should be specified as 0. Each tuple list in the grouping must meet the same size requirements as those specified for qcom,mem-acc-voltage above. The tuples in a given list are ordered from the lowest corner to the highest corner. - qcom,cpr-ro-scaling-factor Usage: required if qcom,cpr-closed-loop-voltage-adjustment is specified Value type: <prop-encoded-array> Definition: The common definition of this property in cpr3-regulator.txt is accurate for MMSS CPR3 controllers except for this modification: Each tuple list must contain the number of tuples defined in the corresponding element of the qcom,cpr-corners property or the qcom,cpr-speed-bins property as opposed to the value of the qcom,cpr-fuse-corners property. - qcom,cpr-fused-closed-loop-voltage-adjustment-map Usage: optional Value type: <prop-encoded-array> Definition: A list of integer tuples which each define the CPR fused corner closed-loop offset adjustment fuse to utilize for each voltage corner in order from lowest to highest. The list must contain qcom,cpr-fuse-combos number of tuples in which case the tuples are matched to fuse combinations 1-to-1 or qcom,cpr-speed-bins number of tuples in which case the tuples are matched to speed bins 1-to-1 or exactly 1 tuple which is used regardless of the fuse combination and speed bin found on a given chip. Each tuple must be of the length defined in the corresponding element of the qcom,cpr-corners property or the qcom,cpr-speed-bins property. A single tuple may only be specified if all of the corner counts in qcom,cpr-corners are the same. Each tuple element must be either 0 or in the range 1 to qcom,cpr-fuse-corners. A value of 0 signifies that no fuse based adjustment should be applied to the fuse corner. Values 1 to qcom,cpr-fuse-corners denote the specific fuse corner that should be used by a given voltage corner. - qcom,cpr-corner-allow-ldo-mode Usage: optional Value type: <prop-encoded-array> Definition: A list of integer tuples which each define the LDO mode allowed state for each voltage corner in order from lowest to highest. Each element in the tuple should be either 0 (LDO mode not allowed) or 1 (LDO mode allowed). The list must contain qcom,cpr-fuse-combos number of tuples in which case the tuples are matched to fuse combinations 1-to-1 or qcom,cpr-speed-bins number of tuples in which case the tuples are matched to speed bins 1-to-1 or exactly 1 tuple which is used regardless of the fuse combination and speed bin found on a given chip. Each tuple must be of the length defined in the corresponding element of the qcom,cpr-corners property or the qcom,cpr-speed-bin-corners property. A single tuple may only be specified if all of the corner counts in qcom,cpr-corners are the same. - qcom,cpr-corner-allow-closed-loop Usage: optional Value type: <prop-encoded-array> Definition: A list of integer tuples which each define the CPR closed-loop operation allowed state for each voltage corner in order from lowest to highest. Each element in the tuple should be either 0 (CPR closed-loop operation not allowed) or 1 (CPR closed-loop operation allowed). The list must contain qcom,cpr-fuse-combos number of tuples in which case the tuples are matched to fuse combinations 1-to-1 or qcom,cpr-speed-bins number of tuples in which case the tuples are matched to speed bins 1-to-1 or exactly 1 tuple which is used regardless of the fuse combination and speed bin found on a given chip. Each tuple must be of the length defined in the corresponding element of the qcom,cpr-corners property or the qcom,cpr-speed-bin-corners property. A single tuple may only be specified if all of the corner counts in qcom,cpr-corners are the same. Note that the qcom,cpr-closed-loop-voltage-fuse-adjustment property is not meaningful for MMSS LDO CPR3 regulator nodes since target quotients are not defined in fuses. ======= Example ======= gfx_cpr: cpr4-ctrl@05061000 { compatible = "qcom,cpr4-msmfalcon-mmss-ldo-regulator"; reg = <0x05061000 0x4000>, <0x00784000 0x1000>; reg-names = "cpr_ctrl", "fuse_base"; interrupts = <GIC_SPI 285 IRQ_TYPE_EDGE_RISING>; interrupt-names = "cpr"; qcom,cpr-ctrl-name = "gfx"; qcom,cpr-sensor-time = <1000>; qcom,cpr-loop-time = <5000000>; qcom,cpr-idle-cycles = <15>; qcom,cpr-step-quot-init-min = <8>; qcom,cpr-step-quot-init-max = <12>; qcom,cpr-count-mode = <0>; /* All at once */ vdd-supply = <&gfx_stub_vreg>; mem-acc-supply = <&gfx_mem_acc_vreg>; system-supply = <&pm2falcon_s3_level>; /* vdd_cx */ qcom,voltage-step = <5000>; vdd-thread0-ldo-supply = <&gfx_ldo_vreg>; qcom,cpr-enable; thread@0 { qcom,cpr-thread-id = <0>; qcom,cpr-consecutive-up = <0>; qcom,cpr-consecutive-down = <2>; qcom,cpr-up-threshold = <0>; qcom,cpr-down-threshold = <2>; gfx_vreg_corner: regulator { regulator-name = "gfx_corner"; regulator-min-microvolt = <1>; regulator-max-microvolt = <7>; qcom,cpr-fuse-corners = <6>; qcom,cpr-fuse-combos = <8>; qcom,cpr-corners = <7>; qcom,cpr-corner-fmax-map = <1 2 3 4 5 6>; qcom,cpr-voltage-ceiling = <584000 644000 724000 788000 868000 924000 1068000>; qcom,cpr-voltage-floor = <504000 504000 596000 652000 712000 744000 1068000>; qcom,mem-acc-voltage = <1 1 1 2 2 2 2>; qcom,system-voltage = <RPM_SMD_REGULATOR_LEVEL_MIN_SVS>, <RPM_SMD_REGULATOR_LEVEL_LOW_SVS>, <RPM_SMD_REGULATOR_LEVEL_SVS>, <RPM_SMD_REGULATOR_LEVEL_SVS_PLUS>, <RPM_SMD_REGULATOR_LEVEL_NOM>, <RPM_SMD_REGULATOR_LEVEL_NOM_PLUS>, <RPM_SMD_REGULATOR_LEVEL_TURBO>; qcom,corner-frequencies = <160000000 266000000 370000000 465000000 588000000 647000000 800000000>; qcom,cpr-target-quotients = <0 0 0 0 0 0 185 179 291 299 304 319 0 0 0 0>, <0 0 0 0 0 0 287 273 425 426 443 453 0 0 0 0>, <0 0 0 0 0 0 414 392 584 576 608 612 0 0 0 0>, <0 0 0 0 0 0 459 431 684 644 692 679 0 0 0 0>, <0 0 0 0 0 0 577 543 798 768 823 810 0 0 0 0>, <0 0 0 0 0 0 669 629 886 864 924 911 0 0 0 0>, <0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0>; qcom,cpr-ro-scaling-factor = < 0 0 0 0 0 0 2035 1917 1959 2131 2246 2253 0 0 0 0>, < 0 0 0 0 0 0 2035 1917 1959 2131 2246 2253 0 0 0 0>, < 0 0 0 0 0 0 2035 1917 1959 2131 2246 2253 0 0 0 0>, < 0 0 0 0 0 0 2035 1917 1959 2131 2246 2253 0 0 0 0>, < 0 0 0 0 0 0 2035 1917 1959 2131 2246 2253 0 0 0 0>, < 0 0 0 0 0 0 2035 1917 1959 2131 2246 2253 0 0 0 0>, < 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0>; qcom,cpr-scaled-open-loop-voltage-as-ceiling; qcom,cpr-corner-ldo-mode-allowed = <1 1 1 1 1 1 0>; qcom,cpr-corner-use-closed-loop = <1 1 1 1 1 1 0>; }; }; }; arch/arm/configs/msmfalcon-perf_defconfig +2 −0 Original line number Diff line number Diff line Loading @@ -348,6 +348,7 @@ CONFIG_WCD9335_CODEC=y CONFIG_WCD934X_CODEC=y CONFIG_REGULATOR=y CONFIG_REGULATOR_FIXED_VOLTAGE=y CONFIG_REGULATOR_MSM_GFX_LDO=y CONFIG_REGULATOR_RPM_SMD=y CONFIG_REGULATOR_QPNP=y CONFIG_REGULATOR_QPNP_LABIBB=y Loading @@ -355,6 +356,7 @@ CONFIG_REGULATOR_SPM=y CONFIG_REGULATOR_CPR3_HMSS=y CONFIG_REGULATOR_CPR3_MMSS=y CONFIG_REGULATOR_CPRH_KBSS=y CONFIG_REGULATOR_CPR4_MMSS_LDO=y CONFIG_REGULATOR_MEM_ACC=y CONFIG_REGULATOR_PROXY_CONSUMER=y CONFIG_REGULATOR_STUB=y Loading arch/arm/configs/msmfalcon_defconfig +2 −0 Original line number Diff line number Diff line Loading @@ -346,6 +346,7 @@ CONFIG_WCD9335_CODEC=y CONFIG_WCD934X_CODEC=y CONFIG_REGULATOR=y CONFIG_REGULATOR_FIXED_VOLTAGE=y CONFIG_REGULATOR_MSM_GFX_LDO=y CONFIG_REGULATOR_RPM_SMD=y CONFIG_REGULATOR_QPNP=y CONFIG_REGULATOR_QPNP_LABIBB=y Loading @@ -354,6 +355,7 @@ CONFIG_REGULATOR_SPM=y CONFIG_REGULATOR_CPR3_HMSS=y CONFIG_REGULATOR_CPR3_MMSS=y CONFIG_REGULATOR_CPRH_KBSS=y CONFIG_REGULATOR_CPR4_MMSS_LDO=y CONFIG_REGULATOR_MEM_ACC=y CONFIG_REGULATOR_PROXY_CONSUMER=y CONFIG_REGULATOR_STUB=y Loading arch/arm64/configs/msmfalcon-perf_defconfig +2 −0 Original line number Diff line number Diff line Loading @@ -346,6 +346,7 @@ CONFIG_WCD9335_CODEC=y CONFIG_WCD934X_CODEC=y CONFIG_REGULATOR=y CONFIG_REGULATOR_FIXED_VOLTAGE=y CONFIG_REGULATOR_MSM_GFX_LDO=y CONFIG_REGULATOR_RPM_SMD=y CONFIG_REGULATOR_QPNP=y CONFIG_REGULATOR_QPNP_LABIBB=y Loading @@ -354,6 +355,7 @@ CONFIG_REGULATOR_SPM=y CONFIG_REGULATOR_CPR3_HMSS=y CONFIG_REGULATOR_CPR3_MMSS=y CONFIG_REGULATOR_CPRH_KBSS=y CONFIG_REGULATOR_CPR4_MMSS_LDO=y CONFIG_REGULATOR_MEM_ACC=y CONFIG_REGULATOR_PROXY_CONSUMER=y CONFIG_REGULATOR_STUB=y Loading arch/arm64/configs/msmfalcon_defconfig +2 −0 Original line number Diff line number Diff line Loading @@ -348,6 +348,7 @@ CONFIG_WCD9335_CODEC=y CONFIG_WCD934X_CODEC=y CONFIG_REGULATOR=y CONFIG_REGULATOR_FIXED_VOLTAGE=y CONFIG_REGULATOR_MSM_GFX_LDO=y CONFIG_REGULATOR_RPM_SMD=y CONFIG_REGULATOR_QPNP=y CONFIG_REGULATOR_QPNP_LABIBB=y Loading @@ -356,6 +357,7 @@ CONFIG_REGULATOR_SPM=y CONFIG_REGULATOR_CPR3_HMSS=y CONFIG_REGULATOR_CPR3_MMSS=y CONFIG_REGULATOR_CPRH_KBSS=y CONFIG_REGULATOR_CPR4_MMSS_LDO=y CONFIG_REGULATOR_MEM_ACC=y CONFIG_REGULATOR_PROXY_CONSUMER=y CONFIG_REGULATOR_STUB=y Loading Loading
Documentation/devicetree/bindings/regulator/cpr4-mmss-ldo-regulator.txt 0 → 100644 +321 −0 Original line number Diff line number Diff line Qualcomm Technologies, Inc. CPR4 Regulator - MMSS LDO Specific Bindings MMSS LDO CPR4 controllers each support one CPR thread that monitors the voltage of the graphics processor (MMSS) supply regulator. The CPR open-loop voltages are stored in hardware fuses for MMSS CPR4 controllers. However, the CPR target quotients must be defined in device tree. This document describes the MMSS LDO specific CPR4 bindings. ======================= Required Node Structure ======================= CPR3 regulators must be described in three levels of devices nodes. The first level describes the CPR3 controller. The second level describes exacly one hardware thread managed by the controller. The third level describes one or more logical regulators handled by the CPR thread. All platform independent cpr3-regulator binding guidelines defined in cpr3-regulator.txt also apply to cpr4-mmss-ldo-regulator devices. ==================================== First Level Nodes - CPR3 Controllers ==================================== MMSS LDO specific properties: - compatible Usage: required Value type: <string> Definition: should be the following: "qcom,cpr4-msmfalcon-mmss-ldo-regulator". - clocks Usage: required Value type: <prop-encoded-array> Definition: Array of clock tuples in which each tuple consists of a phandle to a clock device and a clock ID number. The following clocks must be specified: MMSS RBCPR and MMSS RBCPR AHB. - clock-names Usage: required Value type: <stringlist> Definition: Clock names. This list must match up 1-to-1 with the clocks specified in the 'clocks' property. "core_clk", and "bus_clk" must be specified. - qcom,cpr-step-quot-fixed Usage: Optional Value type: <u32> Definition: Fixed step quotient value used by controller for applying the SDELTA margin adjustments on the programmed target quotient values. The step quotient is the number of additional ring oscillator ticks observed for each qcom,voltage-step increase in vdd-supply output voltage. Supported values: 0 - 63. ================================================= Second Level Nodes - CPR Threads for a Controller ================================================= MMSS specific properties: N/A =============================================== Third Level Nodes - CPR Regulators for a Thread =============================================== MMSS specific properties: - qcom,cpr-fuse-corners Usage: required Value type: <u32> Definition: Specifies the number of fuse corners. This value must be 6 for msmfalcon GFX LDO. These fuse corners are: MinSVS, LowSVS, SVS, SVSP, NOM and NOMP. The open-loop voltage fuses are allocated for LowSVS, SVS, NOM and NOMP corners. The open-loop voltages for MinSVS and SVSP are derived by applying fixed offset from LowSVS and NOM open-loop voltages respectively. The closed-loop offset voltage fuses are allocated for LowSVS, SVS, NOM and NOMP corners. The MinSVS and SVSP corners use the closed-loop offset voltage fuses of LowSVS and NOM corners respectively. - qcom,cpr-fuse-combos Usage: required Value type: <u32> Definition: Specifies the number of fuse combinations being supported by the device. This value is utilized by several other properties. Supported values are 1 up to the maximum possible for a given regulator type. For MMSS the maximum supported value is 8. These combos correspond to CPR revision fuse values from 0 to 7 in order. - qcom,mem-acc-voltage Usage: required if mem-acc-supply is specified for the CPR3 controller containing this CPR3 regulator Value type: <prop-encoded-array> Definition: A list of integer tuples which each define the mem-acc-supply corner for each voltage corner in order from lowest to highest. The list must contain qcom,cpr-fuse-combos number of tuples in which case the tuples are matched to fuse combinations 1-to-1 or qcom,cpr-speed-bins number of tuples in which case the tuples are matched to speed bins 1-to-1 or exactly 1 tuple which is used regardless of the fuse combination and speed bin found on a given chip. Each tuple must be of the length defined in the corresponding element of the qcom,cpr-corners property or the qcom,cpr-speed-bins property. A single tuple may only be specified if all of the corner counts in qcom,cpr-corners are the same. - qcom,cpr-target-quotients Usage: required Value type: <prop-encoded-array> Definition: A grouping of integer tuple lists. Each tuple defines the CPR target quotient for each ring oscillator (RO) for a given corner. Since CPR3 supports exactly 16 ROs, each tuple must contain 16 elements corresponding to RO0 through RO15 in order. If a given RO is unused for a corner, then its target quotient should be specified as 0. Each tuple list in the grouping must meet the same size requirements as those specified for qcom,mem-acc-voltage above. The tuples in a given list are ordered from the lowest corner to the highest corner. - qcom,cpr-ro-scaling-factor Usage: required if qcom,cpr-closed-loop-voltage-adjustment is specified Value type: <prop-encoded-array> Definition: The common definition of this property in cpr3-regulator.txt is accurate for MMSS CPR3 controllers except for this modification: Each tuple list must contain the number of tuples defined in the corresponding element of the qcom,cpr-corners property or the qcom,cpr-speed-bins property as opposed to the value of the qcom,cpr-fuse-corners property. - qcom,cpr-fused-closed-loop-voltage-adjustment-map Usage: optional Value type: <prop-encoded-array> Definition: A list of integer tuples which each define the CPR fused corner closed-loop offset adjustment fuse to utilize for each voltage corner in order from lowest to highest. The list must contain qcom,cpr-fuse-combos number of tuples in which case the tuples are matched to fuse combinations 1-to-1 or qcom,cpr-speed-bins number of tuples in which case the tuples are matched to speed bins 1-to-1 or exactly 1 tuple which is used regardless of the fuse combination and speed bin found on a given chip. Each tuple must be of the length defined in the corresponding element of the qcom,cpr-corners property or the qcom,cpr-speed-bins property. A single tuple may only be specified if all of the corner counts in qcom,cpr-corners are the same. Each tuple element must be either 0 or in the range 1 to qcom,cpr-fuse-corners. A value of 0 signifies that no fuse based adjustment should be applied to the fuse corner. Values 1 to qcom,cpr-fuse-corners denote the specific fuse corner that should be used by a given voltage corner. - qcom,cpr-corner-allow-ldo-mode Usage: optional Value type: <prop-encoded-array> Definition: A list of integer tuples which each define the LDO mode allowed state for each voltage corner in order from lowest to highest. Each element in the tuple should be either 0 (LDO mode not allowed) or 1 (LDO mode allowed). The list must contain qcom,cpr-fuse-combos number of tuples in which case the tuples are matched to fuse combinations 1-to-1 or qcom,cpr-speed-bins number of tuples in which case the tuples are matched to speed bins 1-to-1 or exactly 1 tuple which is used regardless of the fuse combination and speed bin found on a given chip. Each tuple must be of the length defined in the corresponding element of the qcom,cpr-corners property or the qcom,cpr-speed-bin-corners property. A single tuple may only be specified if all of the corner counts in qcom,cpr-corners are the same. - qcom,cpr-corner-allow-closed-loop Usage: optional Value type: <prop-encoded-array> Definition: A list of integer tuples which each define the CPR closed-loop operation allowed state for each voltage corner in order from lowest to highest. Each element in the tuple should be either 0 (CPR closed-loop operation not allowed) or 1 (CPR closed-loop operation allowed). The list must contain qcom,cpr-fuse-combos number of tuples in which case the tuples are matched to fuse combinations 1-to-1 or qcom,cpr-speed-bins number of tuples in which case the tuples are matched to speed bins 1-to-1 or exactly 1 tuple which is used regardless of the fuse combination and speed bin found on a given chip. Each tuple must be of the length defined in the corresponding element of the qcom,cpr-corners property or the qcom,cpr-speed-bin-corners property. A single tuple may only be specified if all of the corner counts in qcom,cpr-corners are the same. Note that the qcom,cpr-closed-loop-voltage-fuse-adjustment property is not meaningful for MMSS LDO CPR3 regulator nodes since target quotients are not defined in fuses. ======= Example ======= gfx_cpr: cpr4-ctrl@05061000 { compatible = "qcom,cpr4-msmfalcon-mmss-ldo-regulator"; reg = <0x05061000 0x4000>, <0x00784000 0x1000>; reg-names = "cpr_ctrl", "fuse_base"; interrupts = <GIC_SPI 285 IRQ_TYPE_EDGE_RISING>; interrupt-names = "cpr"; qcom,cpr-ctrl-name = "gfx"; qcom,cpr-sensor-time = <1000>; qcom,cpr-loop-time = <5000000>; qcom,cpr-idle-cycles = <15>; qcom,cpr-step-quot-init-min = <8>; qcom,cpr-step-quot-init-max = <12>; qcom,cpr-count-mode = <0>; /* All at once */ vdd-supply = <&gfx_stub_vreg>; mem-acc-supply = <&gfx_mem_acc_vreg>; system-supply = <&pm2falcon_s3_level>; /* vdd_cx */ qcom,voltage-step = <5000>; vdd-thread0-ldo-supply = <&gfx_ldo_vreg>; qcom,cpr-enable; thread@0 { qcom,cpr-thread-id = <0>; qcom,cpr-consecutive-up = <0>; qcom,cpr-consecutive-down = <2>; qcom,cpr-up-threshold = <0>; qcom,cpr-down-threshold = <2>; gfx_vreg_corner: regulator { regulator-name = "gfx_corner"; regulator-min-microvolt = <1>; regulator-max-microvolt = <7>; qcom,cpr-fuse-corners = <6>; qcom,cpr-fuse-combos = <8>; qcom,cpr-corners = <7>; qcom,cpr-corner-fmax-map = <1 2 3 4 5 6>; qcom,cpr-voltage-ceiling = <584000 644000 724000 788000 868000 924000 1068000>; qcom,cpr-voltage-floor = <504000 504000 596000 652000 712000 744000 1068000>; qcom,mem-acc-voltage = <1 1 1 2 2 2 2>; qcom,system-voltage = <RPM_SMD_REGULATOR_LEVEL_MIN_SVS>, <RPM_SMD_REGULATOR_LEVEL_LOW_SVS>, <RPM_SMD_REGULATOR_LEVEL_SVS>, <RPM_SMD_REGULATOR_LEVEL_SVS_PLUS>, <RPM_SMD_REGULATOR_LEVEL_NOM>, <RPM_SMD_REGULATOR_LEVEL_NOM_PLUS>, <RPM_SMD_REGULATOR_LEVEL_TURBO>; qcom,corner-frequencies = <160000000 266000000 370000000 465000000 588000000 647000000 800000000>; qcom,cpr-target-quotients = <0 0 0 0 0 0 185 179 291 299 304 319 0 0 0 0>, <0 0 0 0 0 0 287 273 425 426 443 453 0 0 0 0>, <0 0 0 0 0 0 414 392 584 576 608 612 0 0 0 0>, <0 0 0 0 0 0 459 431 684 644 692 679 0 0 0 0>, <0 0 0 0 0 0 577 543 798 768 823 810 0 0 0 0>, <0 0 0 0 0 0 669 629 886 864 924 911 0 0 0 0>, <0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0>; qcom,cpr-ro-scaling-factor = < 0 0 0 0 0 0 2035 1917 1959 2131 2246 2253 0 0 0 0>, < 0 0 0 0 0 0 2035 1917 1959 2131 2246 2253 0 0 0 0>, < 0 0 0 0 0 0 2035 1917 1959 2131 2246 2253 0 0 0 0>, < 0 0 0 0 0 0 2035 1917 1959 2131 2246 2253 0 0 0 0>, < 0 0 0 0 0 0 2035 1917 1959 2131 2246 2253 0 0 0 0>, < 0 0 0 0 0 0 2035 1917 1959 2131 2246 2253 0 0 0 0>, < 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0>; qcom,cpr-scaled-open-loop-voltage-as-ceiling; qcom,cpr-corner-ldo-mode-allowed = <1 1 1 1 1 1 0>; qcom,cpr-corner-use-closed-loop = <1 1 1 1 1 1 0>; }; }; };
arch/arm/configs/msmfalcon-perf_defconfig +2 −0 Original line number Diff line number Diff line Loading @@ -348,6 +348,7 @@ CONFIG_WCD9335_CODEC=y CONFIG_WCD934X_CODEC=y CONFIG_REGULATOR=y CONFIG_REGULATOR_FIXED_VOLTAGE=y CONFIG_REGULATOR_MSM_GFX_LDO=y CONFIG_REGULATOR_RPM_SMD=y CONFIG_REGULATOR_QPNP=y CONFIG_REGULATOR_QPNP_LABIBB=y Loading @@ -355,6 +356,7 @@ CONFIG_REGULATOR_SPM=y CONFIG_REGULATOR_CPR3_HMSS=y CONFIG_REGULATOR_CPR3_MMSS=y CONFIG_REGULATOR_CPRH_KBSS=y CONFIG_REGULATOR_CPR4_MMSS_LDO=y CONFIG_REGULATOR_MEM_ACC=y CONFIG_REGULATOR_PROXY_CONSUMER=y CONFIG_REGULATOR_STUB=y Loading
arch/arm/configs/msmfalcon_defconfig +2 −0 Original line number Diff line number Diff line Loading @@ -346,6 +346,7 @@ CONFIG_WCD9335_CODEC=y CONFIG_WCD934X_CODEC=y CONFIG_REGULATOR=y CONFIG_REGULATOR_FIXED_VOLTAGE=y CONFIG_REGULATOR_MSM_GFX_LDO=y CONFIG_REGULATOR_RPM_SMD=y CONFIG_REGULATOR_QPNP=y CONFIG_REGULATOR_QPNP_LABIBB=y Loading @@ -354,6 +355,7 @@ CONFIG_REGULATOR_SPM=y CONFIG_REGULATOR_CPR3_HMSS=y CONFIG_REGULATOR_CPR3_MMSS=y CONFIG_REGULATOR_CPRH_KBSS=y CONFIG_REGULATOR_CPR4_MMSS_LDO=y CONFIG_REGULATOR_MEM_ACC=y CONFIG_REGULATOR_PROXY_CONSUMER=y CONFIG_REGULATOR_STUB=y Loading
arch/arm64/configs/msmfalcon-perf_defconfig +2 −0 Original line number Diff line number Diff line Loading @@ -346,6 +346,7 @@ CONFIG_WCD9335_CODEC=y CONFIG_WCD934X_CODEC=y CONFIG_REGULATOR=y CONFIG_REGULATOR_FIXED_VOLTAGE=y CONFIG_REGULATOR_MSM_GFX_LDO=y CONFIG_REGULATOR_RPM_SMD=y CONFIG_REGULATOR_QPNP=y CONFIG_REGULATOR_QPNP_LABIBB=y Loading @@ -354,6 +355,7 @@ CONFIG_REGULATOR_SPM=y CONFIG_REGULATOR_CPR3_HMSS=y CONFIG_REGULATOR_CPR3_MMSS=y CONFIG_REGULATOR_CPRH_KBSS=y CONFIG_REGULATOR_CPR4_MMSS_LDO=y CONFIG_REGULATOR_MEM_ACC=y CONFIG_REGULATOR_PROXY_CONSUMER=y CONFIG_REGULATOR_STUB=y Loading
arch/arm64/configs/msmfalcon_defconfig +2 −0 Original line number Diff line number Diff line Loading @@ -348,6 +348,7 @@ CONFIG_WCD9335_CODEC=y CONFIG_WCD934X_CODEC=y CONFIG_REGULATOR=y CONFIG_REGULATOR_FIXED_VOLTAGE=y CONFIG_REGULATOR_MSM_GFX_LDO=y CONFIG_REGULATOR_RPM_SMD=y CONFIG_REGULATOR_QPNP=y CONFIG_REGULATOR_QPNP_LABIBB=y Loading @@ -356,6 +357,7 @@ CONFIG_REGULATOR_SPM=y CONFIG_REGULATOR_CPR3_HMSS=y CONFIG_REGULATOR_CPR3_MMSS=y CONFIG_REGULATOR_CPRH_KBSS=y CONFIG_REGULATOR_CPR4_MMSS_LDO=y CONFIG_REGULATOR_MEM_ACC=y CONFIG_REGULATOR_PROXY_CONSUMER=y CONFIG_REGULATOR_STUB=y Loading