The information k3-socinfo requires is stored in an efuse area. This area is required by other devices/drivers as well, so using nvmem-cells can be a cleaner way to describe which information are used. If nvmem-cells are supplied, the address range is not required. Cells chipvariant, chippartno and chipmanufacturer are introduced to cover all required information. Signed-off-by: Markus Schneider-Pargmann <msp@xxxxxxxxxxxx> Reviewed-by: Andrew Davis <afd@xxxxxx> --- .../bindings/hwinfo/ti,k3-socinfo.yaml | 23 ++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) diff --git a/Documentation/devicetree/bindings/hwinfo/ti,k3-socinfo.yaml b/Documentation/devicetree/bindings/hwinfo/ti,k3-socinfo.yaml index dada28b47ea0..f085b7275b7d 100644 --- a/Documentation/devicetree/bindings/hwinfo/ti,k3-socinfo.yaml +++ b/Documentation/devicetree/bindings/hwinfo/ti,k3-socinfo.yaml @@ -26,9 +26,24 @@ properties: reg: maxItems: 1 + nvmem-cells: + $ref: /schemas/types.yaml#/definitions/phandle-array + + nvmem-cell-names: + items: + - const: chipvariant + - const: chippartno + - const: chipmanufacturer + required: - compatible - - reg + +oneOf: + - required: + - reg + - required: + - nvmem-cells + - nvmem-cell-names additionalProperties: false @@ -38,3 +53,9 @@ examples: compatible = "ti,am654-chipid"; reg = <0x43000014 0x4>; }; + - | + chipid: chipid@14 { + compatible = "ti,am654-chipid"; + nvmem-cells = <&chip_variant>, <&chip_partno>, <&chip_manufacturer>; + nvmem-cell-names = "chipvariant", "chippartno", "chipmanufacturer"; + }; -- 2.43.0