Message ID | 20220919213431.8045-9-asmaa@nvidia.com |
---|---|
State | Superseded |
Headers | show |
Series | i2c: i2c-mlxbf.c: bug fixes and new feature support | expand |
On Mon, 19 Sep 2022 17:34:31 -0400, 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@nvidia.com> > Signed-off-by: Asmaa Mnebhi <asmaa@nvidia.com> > --- > .../bindings/i2c/mellanox,i2c-mlxbf.yaml | 49 ++++++++++++++----- > 1 file changed, 37 insertions(+), 12 deletions(-) > My bot found errors running 'make DT_CHECKER_FLAGS=-m dt_binding_check' on your patch (DT_CHECKER_FLAGS is new in v5.13): yamllint warnings/errors: dtschema/dtc warnings/errors: /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/i2c/mellanox,i2c-mlxbf.yaml: properties:reg: {'minItems': 3, 'maxItems': 6, 'items': [{'description': 'Smbus block registers'}, {'description': 'Cause master registers'}, {'description': 'Cause slave registers'}, {'description': 'Cause coalesce registers'}, {'description': 'Smbus timer registers'}, {'description': 'Smbus master registers'}, {'description': 'Smbus slave registers'}]} should not be valid under {'required': ['maxItems']} hint: "maxItems" is not needed with an "items" list from schema $id: http://devicetree.org/meta-schemas/items.yaml# /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/i2c/mellanox,i2c-mlxbf.yaml: ignoring, error in schema: properties: reg Error: Documentation/devicetree/bindings/i2c/mellanox,i2c-mlxbf.example.dts:26.19-20 syntax error FATAL ERROR: Unable to parse input tree make[1]: *** [scripts/Makefile.lib:384: Documentation/devicetree/bindings/i2c/mellanox,i2c-mlxbf.example.dtb] Error 1 make[1]: *** Waiting for unfinished jobs.... make: *** [Makefile:1420: dt_binding_check] Error 2 doc reference errors (make refcheckdocs): See https://patchwork.ozlabs.org/patch/ This check can fail if there are any dependencies. The base for a patch series is generally the most recent rc1. If you already ran 'make dt_binding_check' and didn't see the above error(s), then make sure 'yamllint' is installed and dt-schema is up to date: pip3 install dtschema --upgrade Please check and re-submit.
diff --git a/Documentation/devicetree/bindings/i2c/mellanox,i2c-mlxbf.yaml b/Documentation/devicetree/bindings/i2c/mellanox,i2c-mlxbf.yaml index 93198d5d43a6..12dbe7e7967e 100644 --- a/Documentation/devicetree/bindings/i2c/mellanox,i2c-mlxbf.yaml +++ b/Documentation/devicetree/bindings/i2c/mellanox,i2c-mlxbf.yaml @@ -8,6 +8,7 @@ title: Mellanox I2C SMBus on BlueField SoCs maintainers: - Khalil Blaiech <kblaiech@nvidia.com> + - Asmaa Mnebhi <asmaa@nvidia.com> allOf: - $ref: /schemas/i2c/i2c-controller.yaml# @@ -17,14 +18,19 @@ properties: enum: - mellanox,i2c-mlxbf1 - mellanox,i2c-mlxbf2 + - mellanox,i2c-mlxbf3 reg: minItems: 3 + maxItems: 6 items: - description: Smbus block registers - 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 +41,13 @@ properties: bus frequency used to configure timing registers; The frequency is expressed in Hz. Default is 100000. + resource_version: + 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. + required: - compatible - reg @@ -42,18 +55,6 @@ required: unevaluatedProperties: false -if: - properties: - compatible: - contains: - enum: - - mellanox,i2c-mlxbf1 - -then: - properties: - reg: - maxItems: 3 - examples: - | i2c@2804000 { @@ -61,8 +62,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 +78,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>, + interrupts = <35>; + clock-frequency = <400000>; + resource_version = <1>; };