Thread (6 messages) flat view 6 messages, 2 authors, 2021-07-23

RE: [RFC 1/2] dt-bindings: PCI: imx6: add fsl,imx6q-pcie.yaml

From: Richard Zhu <hongxing.zhu@nxp.com>
Date: 2021-07-23 03:11:45
Also in: linux-arm-kernel, lkml

-----Original Message-----
From: Rob Herring <robh@kernel.org>
Sent: Thursday, July 22, 2021 10:37 PM
To: Richard Zhu <hongxing.zhu@nxp.com>
Cc: dl-linux-imx <redacted>; linux-arm-kernel@lists.infradead.org;
l.stach@pengutronix.de; galak@kernel.crashing.org; shawnguo@kernel.org;
linux-kernel@vger.kernel.org; devicetree@vger.kernel.org
Subject: Re: [RFC 1/2] dt-bindings: PCI: imx6: add fsl,imx6q-pcie.yaml

On Thu, 22 Jul 2021 16:22:34 +0800, Richard Zhu wrote:
quoted
Convert the fsl,imx6q-pcie.txt into a schema.

Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com>
---
 .../bindings/pci/fsl,imx6q-pcie.yaml          | 212
++++++++++++++++++
quoted
 MAINTAINERS                                   |   1 +
 2 files changed, 213 insertions(+)
 create mode 100644
Documentation/devicetree/bindings/pci/fsl,imx6q-pcie.yaml
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:
make[1]: *** Deleting file
'Documentation/devicetree/bindings/pci/fsl,imx6q-pcie.example.dts'
Traceback (most recent call last):
  File "/usr/local/bin/dt-extract-example", line 45, in <module>
    binding = yaml.load(open(args.yamlfile, encoding='utf-8').read())
  File "/usr/local/lib/python3.8/dist-packages/ruamel/yaml/main.py", line
434, in load
    return constructor.get_single_data()
  File "/usr/local/lib/python3.8/dist-packages/ruamel/yaml/constructor.py",
line 122, in get_single_data
    return self.construct_document(node)
  File "/usr/local/lib/python3.8/dist-packages/ruamel/yaml/constructor.py",
line 132, in construct_document
    for _dummy in generator:
  File "/usr/local/lib/python3.8/dist-packages/ruamel/yaml/constructor.py",
line 722, in construct_yaml_map
    value = self.construct_mapping(node)
  File "/usr/local/lib/python3.8/dist-packages/ruamel/yaml/constructor.py",
line 446, in construct_mapping
    return BaseConstructor.construct_mapping(self, node, deep=deep)
  File "/usr/local/lib/python3.8/dist-packages/ruamel/yaml/constructor.py",
line 264, in construct_mapping
    if self.check_mapping_key(node, key_node, mapping, key, value):
  File "/usr/local/lib/python3.8/dist-packages/ruamel/yaml/constructor.py",
line 295, in check_mapping_key
    raise DuplicateKeyError(*args)
ruamel.yaml.constructor.DuplicateKeyError: while constructing a mapping
  in "<unicode string>", line 22, column 5 found duplicate key "const" with
value "fsl,imx6sx-pcie" (original value: "fsl,imx6q-pcie")
  in "<unicode string>", line 23, column 5

To suppress this check see:

https://eur01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fyaml.re
adthedocs.io%2Fen%2Flatest%2Fapi.html%23duplicate-keys&amp;data=04%
7C01%7Chongxing.zhu%40nxp.com%7C6171b22cdb104315be0d08d94d1e36
3f%7C686ea1d3bc2b4c6fa92cd99c5c301635%7C0%7C0%7C6376256144309
20703%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2l
uMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&amp;sdata=4Mu4S%2B6
KeTg4gaCCL2Q%2ByjO7FbENp5LGHVRPuBhtvCc%3D&amp;reserved=0

Duplicate keys will become an error in future releases, and are errors by
default when using the new API.

make[1]: *** [Documentation/devicetree/bindings/Makefile:20:
Documentation/devicetree/bindings/pci/fsl,imx6q-pcie.example.dts] Error 1
make[1]: *** Waiting for unfinished jobs....
Traceback (most recent call last):
  File "/usr/local/bin/dt-doc-validate", line 67, in <module>
    ret = check_doc(f)
  File "/usr/local/bin/dt-doc-validate", line 25, in check_doc
    testtree = dtschema.load(filename, line_number=line_number)
  File "/usr/local/lib/python3.8/dist-packages/dtschema/lib.py", line 623, in
load
    return yaml.load(f.read())
  File "/usr/local/lib/python3.8/dist-packages/ruamel/yaml/main.py", line
434, in load
    return constructor.get_single_data()
  File "/usr/local/lib/python3.8/dist-packages/ruamel/yaml/constructor.py",
line 122, in get_single_data
    return self.construct_document(node)
  File "/usr/local/lib/python3.8/dist-packages/ruamel/yaml/constructor.py",
line 132, in construct_document
    for _dummy in generator:
  File "/usr/local/lib/python3.8/dist-packages/ruamel/yaml/constructor.py",
line 722, in construct_yaml_map
    value = self.construct_mapping(node)
  File "/usr/local/lib/python3.8/dist-packages/ruamel/yaml/constructor.py",
line 446, in construct_mapping
    return BaseConstructor.construct_mapping(self, node, deep=deep)
  File "/usr/local/lib/python3.8/dist-packages/ruamel/yaml/constructor.py",
line 264, in construct_mapping
    if self.check_mapping_key(node, key_node, mapping, key, value):
  File "/usr/local/lib/python3.8/dist-packages/ruamel/yaml/constructor.py",
line 295, in check_mapping_key
    raise DuplicateKeyError(*args)
ruamel.yaml.constructor.DuplicateKeyError: while constructing a mapping
  in "<unicode string>", line 22, column 5 found duplicate key "const" with
value "fsl,imx6sx-pcie" (original value: "fsl,imx6q-pcie")
  in "<unicode string>", line 23, column 5

To suppress this check see:

https://eur01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fyaml.re
adthedocs.io%2Fen%2Flatest%2Fapi.html%23duplicate-keys&amp;data=04%
7C01%7Chongxing.zhu%40nxp.com%7C6171b22cdb104315be0d08d94d1e36
3f%7C686ea1d3bc2b4c6fa92cd99c5c301635%7C0%7C0%7C6376256144309
20703%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2l
uMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&amp;sdata=4Mu4S%2B6
KeTg4gaCCL2Q%2ByjO7FbENp5LGHVRPuBhtvCc%3D&amp;reserved=0

Duplicate keys will become an error in future releases, and are errors by
default when using the new API.

make[1]: *** Deleting file
'Documentation/devicetree/bindings/processed-schema-examples.json'
Traceback (most recent call last):
  File "/usr/local/bin/dt-mk-schema", line 38, in <module>
    schemas = dtschema.process_schemas(args.schemas,
core_schema=(not args.useronly))
  File "/usr/local/lib/python3.8/dist-packages/dtschema/lib.py", line 585, in
process_schemas
    sch = process_schema(os.path.abspath(filename))
  File "/usr/local/lib/python3.8/dist-packages/dtschema/lib.py", line 558, in
process_schema
    schema = load_schema(filename)
  File "/usr/local/lib/python3.8/dist-packages/dtschema/lib.py", line 125, in
load_schema
    return do_load(os.path.join(schema_basedir, schema))
  File "/usr/local/lib/python3.8/dist-packages/dtschema/lib.py", line 111, in
do_load
    return yaml.load(f.read())
  File "/usr/local/lib/python3.8/dist-packages/ruamel/yaml/main.py", line
434, in load
    return constructor.get_single_data()
  File "/usr/local/lib/python3.8/dist-packages/ruamel/yaml/constructor.py",
line 122, in get_single_data
    return self.construct_document(node)
  File "/usr/local/lib/python3.8/dist-packages/ruamel/yaml/constructor.py",
line 132, in construct_document
    for _dummy in generator:
  File "/usr/local/lib/python3.8/dist-packages/ruamel/yaml/constructor.py",
line 722, in construct_yaml_map
    value = self.construct_mapping(node)
  File "/usr/local/lib/python3.8/dist-packages/ruamel/yaml/constructor.py",
line 446, in construct_mapping
    return BaseConstructor.construct_mapping(self, node, deep=deep)
  File "/usr/local/lib/python3.8/dist-packages/ruamel/yaml/constructor.py",
line 264, in construct_mapping
    if self.check_mapping_key(node, key_node, mapping, key, value):
  File "/usr/local/lib/python3.8/dist-packages/ruamel/yaml/constructor.py",
line 295, in check_mapping_key
    raise DuplicateKeyError(*args)
ruamel.yaml.constructor.DuplicateKeyError: while constructing a mapping
  in "<unicode string>", line 22, column 5 found duplicate key "const" with
value "fsl,imx6sx-pcie" (original value: "fsl,imx6q-pcie")
  in "<unicode string>", line 23, column 5

To suppress this check see:

https://eur01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fyaml.re
adthedocs.io%2Fen%2Flatest%2Fapi.html%23duplicate-keys&amp;data=04%
7C01%7Chongxing.zhu%40nxp.com%7C6171b22cdb104315be0d08d94d1e36
3f%7C686ea1d3bc2b4c6fa92cd99c5c301635%7C0%7C0%7C6376256144309
20703%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2l
uMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&amp;sdata=4Mu4S%2B6
KeTg4gaCCL2Q%2ByjO7FbENp5LGHVRPuBhtvCc%3D&amp;reserved=0

Duplicate keys will become an error in future releases, and are errors by
default when using the new API.

make[1]: *** [Documentation/devicetree/bindings/Makefile:62:
Documentation/devicetree/bindings/processed-schema-examples.json] Error
1
make: *** [Makefile:1418: dt_binding_check] Error 2 \ndoc reference errors
(make refcheckdocs):

See
https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fpatch
work.ozlabs.org%2Fpatch%2F1508586&amp;data=04%7C01%7Chongxing.zhu
%40nxp.com%7C6171b22cdb104315be0d08d94d1e363f%7C686ea1d3bc2b4
c6fa92cd99c5c301635%7C0%7C0%7C637625614430920703%7CUnknown%
7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haW
wiLCJXVCI6Mn0%3D%7C1000&amp;sdata=1x%2BNE6KyvoYSRAPFxPVXKYu4
Md59o%2F9CtEKqaCsOwuU%3D&amp;reserved=0

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.
[Richard Zhu] Got that. Thanks for your help. Will submit the patch-set after the errors are fixed.

Best Regards
Richard Zhu
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help