Re: [PATCH v5 2/6] dt-bindings: PCI: renesas,pci-rcar-gen2: Add device tree support for r9a06g032

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Krzysztof,

On Sun, 1 May 2022 10:51:43 +0200
Krzysztof Kozlowski <krzysztof.kozlowski@xxxxxxxxxx> wrote:

[...]
> >    resets:
> >      maxItems: 1
> > @@ -106,13 +106,45 @@ required:
> >    - interrupt-map
> >    - interrupt-map-mask
> >    - clocks
> > -  - resets
> >    - power-domains
> >    - bus-range
> >    - "#address-cells"
> >    - "#size-cells"
> >    - "#interrupt-cells"
> >  
> > +if:  
> 
> allOf.
> 
> > +  properties:
> > +    compatible:
> > +      contains:
> > +        enum:

I Have an issue with this allOf.

The yaml has the following structure and so has 2 AllOf:
  ...
  allOf:
  - $ref: /schemas/pci/pci-bus.yaml#
  
  properties:
    compatible:
  ...
  allOf:
  - if:
      properties:
        compatible:
          contains:
  ...


make dt_binding_check failed with the following error:
    $ make dt_binding_check DT_SCHEMA_FILES=renesas,pci-rcar-gen2.yaml
      LINT    Documentation/devicetree/bindings
    ./Documentation/devicetree/bindings/pci/renesas,pci-rcar-gen2.yaml:115:1: [error] duplication of key "allOf" in mapping (key-duplicates)
      CHKDT   Documentation/devicetree/bindings/processed-schema.json
    Traceback (most recent call last):
      File "/home/hcodina/.local/bin/dt-doc-validate", line 25, in check_doc
        testtree = dtschema.load(filename, line_number=line_number)
      File "/home/hcodina/.local/lib/python3.10/site-packages/dtschema/lib.py", line 912, in load
        return yaml.load(f.read())
      File "/home/hcodina/.local/lib/python3.10/site-packages/ruamel/yaml/main.py", line 434, in load
        return constructor.get_single_data()
      File "/home/hcodina/.local/lib/python3.10/site-packages/ruamel/yaml/constructor.py", line 121, in get_single_data
        return self.construct_document(node)
      File "/home/hcodina/.local/lib/python3.10/site-packages/ruamel/yaml/constructor.py", line 131, in construct_document
        for _dummy in generator:
      File "/home/hcodina/.local/lib/python3.10/site-packages/ruamel/yaml/constructor.py", line 674, in construct_yaml_map
        value = self.construct_mapping(node)
      File "/home/hcodina/.local/lib/python3.10/site-packages/ruamel/yaml/constructor.py", line 445, in construct_mapping
        return BaseConstructor.construct_mapping(self, node, deep=deep)
      File "/home/hcodina/.local/lib/python3.10/site-packages/ruamel/yaml/constructor.py", line 263, in construct_mapping
        if self.check_mapping_key(node, key_node, mapping, key, value):
      File "/home/hcodina/.local/lib/python3.10/site-packages/ruamel/yaml/constructor.py", line 294, in check_mapping_key
        raise DuplicateKeyError(*args)
    ruamel.yaml.constructor.DuplicateKeyError: while constructing a mapping
      in "<unicode string>", line 4, column 1
    found duplicate key "allOf" with value "[]" (original value: "[]")
      in "<unicode string>", line 115, column 1
    
    To suppress this check see:
        http://yaml.readthedocs.io/en/latest/api.html#duplicate-keys
    
    
    During handling of the above exception, another exception occurred:
    
    Traceback (most recent call last):
      File "/home/hcodina/.local/bin/dt-doc-validate", line 74, in <module>
        ret = check_doc(f)
      File "/home/hcodina/.local/bin/dt-doc-validate", line 30, in check_doc
        print(filename + ":", exc.path[-1], exc.message, file=sys.stderr)
    AttributeError: 'DuplicateKeyError' object has no attribute 'path'
      SCHEMA  Documentation/devicetree/bindings/processed-schema.json
    /home/hcodina/project/xxxx/dev/linux/upstream_usb_host/Documentation/devicetree/bindings/pci/renesas,pci-rcar-gen2.yaml: ignoring, error parsing file
      DTEX    Documentation/devicetree/bindings/pci/renesas,pci-rcar-gen2.example.dts
    Documentation/devicetree/bindings/pci/renesas,pci-rcar-gen2.yaml: found duplicate key "allOf" with value "[]" (original value: "[]")
    make[1]: *** [Documentation/devicetree/bindings/Makefile:26: Documentation/devicetree/bindings/pci/renesas,pci-rcar-gen2.example.dts] Error 1
    make[1]: *** Deleting file 'Documentation/devicetree/bindings/pci/renesas,pci-rcar-gen2.example.dts'
    make: *** [Makefile:1401: dt_binding_check] Error 2
    [hcodina@localhost upstream_usb_host]$ 
    
    [hcodina@localhost upstream_usb_host]$ make ARCH=arm CROSS_COMPILE=/home/hcodina/toolchain/gcc-linaro-7.5.0-2019.12-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabihf- dt_binding_check DT_SCHEMA_FILES=renesas,pci-rcar-gen2.yaml
      DTEX    Documentation/devicetree/bindings/pci/renesas,pci-rcar-gen2.example.dts
    Documentation/devicetree/bindings/pci/renesas,pci-rcar-gen2.yaml: found duplicate key "allOf" with value "[]" (original value: "[]")
    make[1]: *** [Documentation/devicetree/bindings/Makefile:26: Documentation/devicetree/bindings/pci/renesas,pci-rcar-gen2.example.dts] Error 1
    make[1]: *** Deleting file 'Documentation/devicetree/bindings/pci/renesas,pci-rcar-gen2.example.dts'
    make: *** [Makefile:1401: dt_binding_check] Error 2


Is having a 'allOf' for schemas inclusion and a 'allOf' for conditionnal
parts allowed ?


Regards,
Hervé





[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux