On 20/09/2022 19:47, Asmaa Mnebhi wrote: > In the latest version of the i2c-mlxbf.c driver, the "Smbus block" > resource was broken down to 3 separate resources "Smbus timer", > "Smbus master" and "Smbus slave" to accommodate for BlueField-3 > SoC registers' changes. > > Reviewed-by: Khalil Blaiech <kblaiech@xxxxxxxxxx> > Signed-off-by: Asmaa Mnebhi <asmaa@xxxxxxxxxx> > --- > reg: > minItems: 3 > @@ -25,6 +27,9 @@ properties: > - description: Cause master registers > - description: Cause slave registers > - description: Cause coalesce registers > + - description: Smbus timer registers > + - description: Smbus master registers > + - description: Smbus slave registers > > interrupts: > maxItems: 1 > @@ -35,6 +40,13 @@ properties: > bus frequency used to configure timing registers; > The frequency is expressed in Hz. Default is 100000. > > + resource_version: No underscores in names. > + enum: [ 0, 1 ] > + description: > + Version of the device tree. resource_version = 0 when the driver uses > + Smbus block resource. resource_version = 1 when the driver uses Smbus > + timer, Smbus master and Smbus slave resources. No way. That's not a DT property. > + > required: > - compatible > - reg > @@ -42,18 +54,6 @@ required: > > unevaluatedProperties: false > > -if: > - properties: > - compatible: > - contains: > - enum: > - - mellanox,i2c-mlxbf1 > - > -then: > - properties: > - reg: > - maxItems: 3 Why? > - > examples: > - | > i2c@2804000 { > @@ -61,8 +61,13 @@ examples: > reg = <0x02804000 0x800>, > <0x02801200 0x020>, > <0x02801260 0x020>; > + <0x00000001 0x1>; > + <0x02804000 0x40>, > + <0x02804200 0x200>, > + <0x02804400 0x200>, > interrupts = <57>; > clock-frequency = <100000>; > + resource_version = <1>; > }; > > - | > @@ -72,6 +77,25 @@ examples: > <0x02808e00 0x020>, > <0x02808e20 0x020>, > <0x02808e40 0x010>; > + <0x02808800 0x040>; > + <0x02808a00 0x200>, > + <0x02808c00 0x200>, > interrupts = <57>; > clock-frequency = <400000>; > + resource_version = <1>; > + }; > + > + - | > + i2c@2808800 { > + compatible = "mellanox,i2c-mlxbf3"; > + reg = <0x00000001 0x1>, > + <0x13404400 0x020>, > + <0x13404420 0x020>, > + <0x13404440 0x010>; > + <0x13404480 0x40>, > + <0x13404200 0x200>, > + <0x13404000 0x200>, No need for the same example. Best regards, Krzysztof