2023-09-29 02:06:57

by Robert Marko

[permalink] [raw]
Subject: [PATCH v4 2/4] dt-bindings: opp: opp-v2-kryo-cpu: Document named opp-microvolt property

From: Christian Marangi <[email protected]>

Document named opp-microvolt property for opp-v2-kryo-cpu schema.
This property is used to declare multiple voltage ranges selected on the
different values read from efuses. The selection is done based on the
speed pvs values and the named opp-microvolt property is selected by the
qcom-cpufreq-nvmem driver.

Signed-off-by: Christian Marangi <[email protected]>
Signed-off-by: Robert Marko <[email protected]>
---
Changes in v4:
* Describe PVS
* Add description for opp-microvolt entries
---
.../bindings/opp/opp-v2-kryo-cpu.yaml | 38 +++++++++++++++++++
1 file changed, 38 insertions(+)

diff --git a/Documentation/devicetree/bindings/opp/opp-v2-kryo-cpu.yaml b/Documentation/devicetree/bindings/opp/opp-v2-kryo-cpu.yaml
index bbbad31ae4ca..f1b4553fd66a 100644
--- a/Documentation/devicetree/bindings/opp/opp-v2-kryo-cpu.yaml
+++ b/Documentation/devicetree/bindings/opp/opp-v2-kryo-cpu.yaml
@@ -63,6 +63,12 @@ patternProperties:
5: MSM8996SG, speedbin 1
6: MSM8996SG, speedbin 2
7-31: unused
+
+ Bitmap for IPQ806X SoC:
+ 0: IPQ8062
+ 1: IPQ8064/IPQ8066/IPQ8068
+ 2: IPQ8065/IPQ8069
+ 3-31: unused
enum: [0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7,
0x9, 0xd, 0xe, 0xf,
0x10, 0x20, 0x30, 0x70]
@@ -71,6 +77,22 @@ patternProperties:

required-opps: true

+ patternProperties:
+ '^opp-microvolt-speed[0-9]+-pvs[0-9]+$':
+ description: |
+ Named opp-microvolt property following the same generic
+ binding for named opp-microvolt.
+
+ The correct voltage range is selected based on the values
+ in the efuse for the speed and the pvs (power variable
+ scaling).
+ minItems: 1
+ maxItems: 4 # Up to 4 regulators: Core, Mem, Dig and HFPLL
+ items:
+ - description: nominal voltage
+ - description: minimum voltage
+ - description: maximum voltage
+
required:
- opp-hz

@@ -256,6 +278,22 @@ examples:
};
};

+ /* Dummy opp table to give example for named opp-microvolt */
+ opp-table-2 {
+ compatible = "operating-points-v2-kryo-cpu";
+ nvmem-cells = <&speedbin_efuse>;
+
+ opp-384000000 {
+ opp-hz = /bits/ 64 <384000000>;
+ opp-microvolt-speed0-pvs0 = <1000000 950000 1050000>;
+ opp-microvolt-speed0-pvs1 = <925000 878750 971250>;
+ opp-microvolt-speed0-pvs2 = <875000 831250 918750>;
+ opp-microvolt-speed0-pvs3 = <800000 760000 840000>;
+ opp-supported-hw = <0x7>;
+ clock-latency-ns = <100000>;
+ };
+ };
+
smem {
compatible = "qcom,smem";
memory-region = <&smem_mem>;
--
2.41.0