On Tue, Feb 06, 2024 at 03:37:09PM +0100, Markus Schneider-Pargmann wrote: > 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"; This isn't compatible if you have a completely different way to access it. > + nvmem-cells = <&chip_variant>, <&chip_partno>, <&chip_manufacturer>; > + nvmem-cell-names = "chipvariant", "chippartno", "chipmanufacturer"; > + }; > -- > 2.43.0 >