[PATCH 2/3] dt-bindings: opp: opp-v2-kryo-cpu: add opp-microvolt nvmem based

From: Christian Marangi
Date: Fri Jan 20 2023 - 19:02:05 EST


The operating-points-v2-kryo-cpu driver supports defining multiple
opp-microvolt based on the blown efuses in the soc. It consist of 3
values that are parsed: speedbin, psv and version. They are all
appended to the opp-microvolt name and selected by the nvmem driver and
loaded dynamically at runtime.

Example:

opp-microvolt-speed0-pvs0-v0 = <1050000 997500 1102500>;
opp-microvolt-speed0-pvs1-v0 = <975000 926250 1023750>;
opp-microvolt-speed0-pvs2-v0 = <925000 878750 971250>;
opp-microvolt-speed0-pvs3-v0 = <850000 807500 892500>;

Add support for this and reject these special binding if we don't have a
nvmem-cell to read data from.

Signed-off-by: Christian Marangi <ansuelsmth@xxxxxxxxx>
---
.../devicetree/bindings/opp/opp-v2-kryo-cpu.yaml | 16 ++++++++++++++++
1 file changed, 16 insertions(+)

diff --git a/Documentation/devicetree/bindings/opp/opp-v2-kryo-cpu.yaml b/Documentation/devicetree/bindings/opp/opp-v2-kryo-cpu.yaml
index b4947b326773..cea932339faf 100644
--- a/Documentation/devicetree/bindings/opp/opp-v2-kryo-cpu.yaml
+++ b/Documentation/devicetree/bindings/opp/opp-v2-kryo-cpu.yaml
@@ -61,6 +61,17 @@ patternProperties:

required-opps: true

+ patternProperties:
+ '^opp-microvolt-speed[0-9]-pvs[0-9]-v[0-9]$':
+ description: |
+ Assign a microvolt value to the opp hz based on the efuses value from
+ speedbin, pvs and version value read from the provided nvmem cell.
+ minItems: 1
+ maxItems: 8 # Should be enough regulators
+ items:
+ minItems: 1
+ maxItems: 3
+
required:
- opp-hz

@@ -75,6 +86,11 @@ then:
'^opp-?[0-9]+$':
required:
- opp-supported-hw
+else:
+ patternProperties:
+ '^opp-?[0-9]+$':
+ patternProperties:
+ '^opp-microvolt-speed[0-9]-pvs[0-9]-v[0-9]$': false

additionalProperties: false

--
2.38.1