Re: [PATCH v3 02/12] dt-bindings: i2c: Convert DW I2C binding to DT schema

From: Rob Herring
Date: Tue May 26 2020 - 21:20:17 EST


On Wed, 27 May 2020 00:55:18 +0300, Serge Semin wrote:
> Modern device tree bindings are supposed to be created as YAML-files
> in accordance with dt-schema. This commit replaces Synopsys DW I2C
> legacy bare text bindings with YAML file. As before the bindings file
> states that the corresponding dts node is supposed to be compatible
> either with generic DW I2C controller or with Microsemi Ocelot SoC I2C
> one, to have registers, interrupts and clocks properties. In addition
> the node may have clock-frequency, i2c-sda-hold-time-ns,
> i2c-scl-falling-time-ns and i2c-sda-falling-time-ns optional properties.
>
> Signed-off-by: Serge Semin <Sergey.Semin@xxxxxxxxxxxxxxxxxxxx>
> Cc: Alexey Malahov <Alexey.Malahov@xxxxxxxxxxxxxxxxxxxx>
> Cc: Thomas Bogendoerfer <tsbogend@xxxxxxxxxxxxxxxx>
> Cc: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
> Cc: Mika Westerberg <mika.westerberg@xxxxxxxxxxxxxxx>
> Cc: linux-mips@xxxxxxxxxxxxxxx
>
> ---
>
> Changelog v2:
> - Make sure that "mscc,ocelot-i2c" compatible node may have up to two
> registers space defined, while normal DW I2C controller will have only
> one registers space.
> - Add "mscc,ocelot-i2c" example to test the previous fix.
> - Declare "unevaluatedProperties" property instead of
> "additionalProperties" one.
> - Due to the previous fix we can now discard the dummy boolean properties
> definitions, since the proper type evaluation will be performed by the
> generic i2c-controller.yaml schema.
>
> Changelog v3:
> - Discard $ref from the "-ns" suffixed properties since they've got the
> uint32-array type by default applied in the common schema. Set "maxItems: 1"
> there instead to make sure the property will have a single value specified.
> ---
> .../bindings/i2c/i2c-designware.txt | 73 ---------
> .../bindings/i2c/snps,designware-i2c.yaml | 154 ++++++++++++++++++
> 2 files changed, 154 insertions(+), 73 deletions(-)
> delete mode 100644 Documentation/devicetree/bindings/i2c/i2c-designware.txt
> create mode 100644 Documentation/devicetree/bindings/i2c/snps,designware-i2c.yaml
>

Reviewed-by: Rob Herring <robh@xxxxxxxxxx>