On Fri, 16 Dec 2022 13:52:51 +0200, Tony Lindgren wrote: > Hi Krzysztof & Rob, > > I'm getting a dt binding check error with a pinctrl-single yaml patch for > property '#pinctrl-single,gpio-range-cells'. It seems to be caused by having > both a hash and comma in the property: > > DTEX Documentation/devicetree/bindings/pinctrl/pinctrl-single.example.dts > LINT Documentation/devicetree/bindings > CHKDT Documentation/devicetree/bindings/processed-schema.json > Traceback (most recent call last): > File "/usr/bin/dt-doc-validate", line 63, in <module> > ret |= check_doc(f) > ^^^^^^^^^^^^ > File "/usr/bin/dt-doc-validate", line 32, in check_doc > print(dtschema.format_error(filename, error, verbose=args.verbose), file=sys.stderr) > ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ > File "/usr/lib/python3.11/site-packages/dtschema/lib.py", line 1350, in format_error > msg += '\n' + format_error(filename, suberror, prefix=prefix+"\t", nodename=nodename, verbose=verbose) > ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ > File "/usr/lib/python3.11/site-packages/dtschema/lib.py", line 1326, in format_error > if error.linecol[0] >= 0: > ^^^^^^^^^^^^^ > AttributeError: 'ValidationError' object has no attribute 'linecol' > SCHEMA Documentation/devicetree/bindings/processed-schema.json > DTC_CHK Documentation/devicetree/bindings/pinctrl/pinctrl-single.example.dtb > > Any ideas why this is happening? > > This is with dt-doc-validate 2022.11 and: > > $ make dt_binding_check DT_SCHEMA_FILES=Documentation/devicetree/bindings/pinctrl/pinctrl-single.yaml > > With the WIP patch below. > > Regards, > > Tony > > 8< ------------------------- 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/pinctrl/pinctrl-single.yaml: properties:#pinctrl-single,gpio-range-cells: 'oneOf' conditional failed, one must be fixed: 'type' is a required property hint: A vendor boolean property can use "type: boolean" Additional properties are not allowed ('const' was unexpected) hint: A vendor boolean property can use "type: boolean" /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/pinctrl/pinctrl-single.yaml: properties:#pinctrl-single,gpio-range-cells: 'oneOf' conditional failed, one must be fixed: '$ref' is a required property 'allOf' is a required property hint: A vendor property needs a $ref to types.yaml from schema $id: http://devicetree.org/meta-schemas/vendor-props.yaml# 3 is not of type 'string' hint: A vendor string property with exact values has an implicit type hint: Vendor specific properties must have a type and description unless they have a defined, common suffix. from schema $id: http://devicetree.org/meta-schemas/vendor-props.yaml# doc reference errors (make refcheckdocs): Documentation/devicetree/bindings/arm/omap/ctrl.txt: Documentation/devicetree/bindings/pinctrl/pinctrl-single.txt Documentation/devicetree/bindings/pinctrl/ti,omap-pinctrl.txt: Documentation/devicetree/bindings/pinctrl/pinctrl-single.txt See https://patchwork.ozlabs.org/project/devicetree-bindings/patch/Y5xcE5Qoyf5Zg6fV@xxxxxxxxxxx The base for the series is generally the latest rc1. A different dependency should be noted in *this* patch. 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 after running the above command yourself. Note that DT_SCHEMA_FILES can be set to your schema file to speed up checking your schema. However, it must be unset to test all examples with your schema.