On Wed, Oct 28, 2020 at 06:55:54PM -0400, Khalil Blaiech wrote: > Write the devicetree binding text file in schema file, JSON > compatible subset of YAML. > Besides, add an entry within MAINTAINERS file. The subject should contain something about Mellanox BlueField. > > Fixes: d9becc53b3ade81e ("dt-bindings: i2c: I2C binding for Mellanox BlueField SoC") Fixes is not appropriate for this. > Reviewed-by: Leon Romanovsky <leonro@xxxxxxxxxx> > Signed-off-by: Khalil Blaiech <kblaiech@xxxxxxxxxx> > --- > .../bindings/i2c/mellanox,i2c-mlxbf.txt | 42 ---------- > .../bindings/i2c/mellanox,i2c-mlxbf.yaml | 78 +++++++++++++++++++ > MAINTAINERS | 1 + > 3 files changed, 79 insertions(+), 42 deletions(-) > delete mode 100644 Documentation/devicetree/bindings/i2c/mellanox,i2c-mlxbf.txt > create mode 100644 Documentation/devicetree/bindings/i2c/mellanox,i2c-mlxbf.yaml > > diff --git a/Documentation/devicetree/bindings/i2c/mellanox,i2c-mlxbf.txt b/Documentation/devicetree/bindings/i2c/mellanox,i2c-mlxbf.txt > deleted file mode 100644 > index 566ea861aa00..000000000000 > --- a/Documentation/devicetree/bindings/i2c/mellanox,i2c-mlxbf.txt > +++ /dev/null > @@ -1,42 +0,0 @@ > -Device tree configuration for the Mellanox I2C SMBus on BlueField SoCs > - > -Required Properties: > - > -- compatible : should be "mellanox,i2c-mlxbf1" or "mellanox,i2c-mlxbf2". > - > -- reg : address offset and length of the device registers. The > - registers consist of the following set of resources: > - 1) Smbus block registers. > - 2) Cause master registers. > - 3) Cause slave registers. > - 4) Cause coalesce registers (if compatible isn't set > - to "mellanox,i2c-mlxbf1"). > - > -- interrupts : interrupt number. > - > -Optional Properties: > - > -- clock-frequency : bus frequency used to configure timing registers; > - allowed values are 100000, 400000 and 1000000; > - those are expressed in Hz. Default is 100000. > - > -Example: > - > -i2c@2804000 { > - compatible = "mellanox,i2c-mlxbf1"; > - reg = <0x02804000 0x800>, > - <0x02801200 0x020>, > - <0x02801260 0x020>; > - interrupts = <57>; > - clock-frequency = <100000>; > -}; > - > -i2c@2808800 { > - compatible = "mellanox,i2c-mlxbf2"; > - reg = <0x02808800 0x600>, > - <0x02808e00 0x020>, > - <0x02808e20 0x020>, > - <0x02808e40 0x010>; > - interrupts = <57>; > - clock-frequency = <400000>; > -}; > diff --git a/Documentation/devicetree/bindings/i2c/mellanox,i2c-mlxbf.yaml b/Documentation/devicetree/bindings/i2c/mellanox,i2c-mlxbf.yaml > new file mode 100644 > index 000000000000..b9f6b07c503f > --- /dev/null > +++ b/Documentation/devicetree/bindings/i2c/mellanox,i2c-mlxbf.yaml > @@ -0,0 +1,78 @@ > +# SPDX-License-Identifier: GPL-2.0 If you have rights, please dual license adding BSD-2-Clause. > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/i2c/mellanox,i2c-mlxbf.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Mellanox I2C SMBus on BlueField SoCs > + > +maintainers: > + - Khalil Blaiech <kblaiech@xxxxxxxxxx> allOf: - $ref: i2c-controller.yaml# > + > +properties: > + compatible: > + enum: > + - mellanox,i2c-mlxbf1 > + - mellanox,i2c-mlxbf2 > + > + reg: > + minItems: 3 > + maxItems: 4 > + items: > + - description: Smbus block registers > + - description: Cause master registers > + - description: Cause slave registers > + - description: Cause coalesce registers > + > + interrupts: > + maxItems: 1 > + > + clock-frequency: > + enum: [ 100000, 400000, 1000000 ] > + Drop the blank line. > + description: > + bus frequency used to configure timing registers; > + The frequency is expressed in Hz. Default is 100000. > + > +additionalProperties: false > + > +required: > + - compatible > + - reg > + - interrupts > + > +unevaluatedProperties: false > + > +if: > + properties: > + compatible: > + contains: > + enum: > + - mellanox,i2c-mlxbf1 > + > +then: > + properties: > + reg: > + maxItems: 3 > + > +examples: > + - | > + i2c@2804000 { > + compatible = "mellanox,i2c-mlxbf1"; > + reg = <0x02804000 0x800>, > + <0x02801200 0x020>, > + <0x02801260 0x020>; > + interrupts = <57>; > + clock-frequency = <100000>; > + }; > + > + - | > + i2c@2808800 { > + compatible = "mellanox,i2c-mlxbf2"; > + reg = <0x02808800 0x600>, > + <0x02808e00 0x020>, > + <0x02808e20 0x020>, > + <0x02808e40 0x010>; > + interrupts = <57>; > + clock-frequency = <400000>; > + }; > diff --git a/MAINTAINERS b/MAINTAINERS > index 9128200af1d0..8dba7ace4a40 100644 > --- a/MAINTAINERS > +++ b/MAINTAINERS > @@ -11075,6 +11075,7 @@ MELLANOX BLUEFIELD I2C DRIVER > M: Khalil Blaiech <kblaiech@xxxxxxxxxx> > L: linux-i2c@xxxxxxxxxxxxxxx > S: Supported > +F: Documentation/devicetree/bindings/i2c/mellanox,i2c-mlxbf.yaml > F: drivers/i2c/busses/i2c-mlxbf.c > > MELLANOX ETHERNET DRIVER (mlx4_en) > -- > 2.24.1 >