Re: [PATCH 0/2] schemas: add "cpus" schema

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



On Mon, Jun 24, 2019 at 8:37 PM Paul Walmsley <paul.walmsley@xxxxxxxxxx> wrote:
>
> These two patches add a common "cpus" schema.  They pass
> dt-doc-validate as of commit 2550ac333f6ed4ceb1e785262c54ec8619df077a
> ("meta-schemas: Allow additional keys under node properties").

Now we get a bunch of warnings because the examples are now validated
(in next) against the schemas.


Documentation/devicetree/bindings/arm/cpus.example.dt.yaml:
cpu@0:compatible:0: 'arm,cortex-a15' is not one of ['sifive,rocket0',
'sifive,e5', 'sifive,e51', 'sifive,u54-mc', 'sifive,u54', 'sifive,u5']
Documentation/devicetree/bindings/arm/cpus.example.dt.yaml:
cpu@0:compatible: ['arm,cortex-a15'] is too short
Documentation/devicetree/bindings/arm/cpus.example.dt.yaml: cpu@0:
'riscv,isa' is a required property
Documentation/devicetree/bindings/arm/cpus.example.dt.yaml: cpu@0:
'timebase-frequency' is a required property
Documentation/devicetree/bindings/arm/cpus.example.dt.yaml: cpu@0:
'interrupt-controller' is a required property
Documentation/devicetree/bindings/arm/cpus.example.dt.yaml:
'cache-level' is a required property

Documentation/devicetree/bindings/riscv/cpus.example.dt.yaml:
cpu@0:compatible:0: 'sifive,rocket0' is not one of ['arm,arm710t',
'arm,arm720t', 'arm,arm740t', 'arm,arm7ej-s', 'arm,arm7tdmi',
'arm,arm7tdmi-s', 'arm,arm9es', 'arm,arm9ej-s', 'arm,arm920t',
'arm,arm922t', 'arm,arm925', 'arm,arm926e-s', 'arm,arm926ej-s',
'arm,arm940t', 'arm,arm946e-s', 'arm,arm966e-s', 'arm,arm968e-s',
'arm,arm9tdmi', 'arm,arm1020e', 'arm,arm1020t', 'arm,arm1022e',
'arm,arm1026ej-s', 'arm,arm1136j-s', 'arm,arm1136jf-s',
'arm,arm1156t2-s', 'arm,arm1156t2f-s', 'arm,arm1176jzf',
'arm,arm1176jz-s', 'arm,arm1176jzf-s', 'arm,arm11mpcore', 'arm,armv8',
'arm,cortex-a5', 'arm,cortex-a7', 'arm,cortex-a8', 'arm,cortex-a9',
'arm,cortex-a12', 'arm,cortex-a15', 'arm,cortex-a17',
'arm,cortex-a53', 'arm,cortex-a57', 'arm,cortex-a72',
'arm,cortex-a73', 'arm,cortex-m0', 'arm,cortex-m0+', 'arm,cortex-m1',
'arm,cortex-m3', 'arm,cortex-m4', 'arm,cortex-r4', 'arm,cortex-r5',
'arm,cortex-r7', 'brcm,brahma-b15', 'brcm,brahma-b53', 'brcm,vulcan',
'cavium,thunder', 'cavium,thunder2', 'faraday,fa526', 'intel,sa110',
'intel,sa1100', 'marvell,feroceon', 'marvell,mohawk', 'marvell,pj4a',
'marvell,pj4b', 'marvell,sheeva-v5', 'marvell,sheeva-v7',
'nvidia,tegra132-denver', 'nvidia,tegra186-denver',
'nvidia,tegra194-carmel', 'qcom,krait', 'qcom,kryo', 'qcom,kryo385',
'qcom,scorpion']
Documentation/devicetree/bindings/riscv/cpus.example.dt.yaml:
cpu@0:compatible:1: 'riscv' is not one of ['arm,arm710t',
'arm,arm720t', 'arm,arm740t', 'arm,arm7ej-s', 'arm,arm7tdmi',
'arm,arm7tdmi-s', 'arm,arm9es', 'arm,arm9ej-s', 'arm,arm920t',
'arm,arm922t', 'arm,arm925', 'arm,arm926e-s', 'arm,arm926ej-s',
'arm,arm940t', 'arm,arm946e-s', 'arm,arm966e-s', 'arm,arm968e-s',
'arm,arm9tdmi', 'arm,arm1020e', 'arm,arm1020t', 'arm,arm1022e',
'arm,arm1026ej-s', 'arm,arm1136j-s', 'arm,arm1136jf-s',
'arm,arm1156t2-s', 'arm,arm1156t2f-s', 'arm,arm1176jzf',
'arm,arm1176jz-s', 'arm,arm1176jzf-s', 'arm,arm11mpcore', 'arm,armv8',
'arm,cortex-a5', 'arm,cortex-a7', 'arm,cortex-a8', 'arm,cortex-a9',
'arm,cortex-a12', 'arm,cortex-a15', 'arm,cortex-a17',
'arm,cortex-a53', 'arm,cortex-a57', 'arm,cortex-a72',
'arm,cortex-a73', 'arm,cortex-m0', 'arm,cortex-m0+', 'arm,cortex-m1',
'arm,cortex-m3', 'arm,cortex-m4', 'arm,cortex-r4', 'arm,cortex-r5',
'arm,cortex-r7', 'brcm,brahma-b15', 'brcm,brahma-b53', 'brcm,vulcan',
'cavium,thunder', 'cavium,thunder2', 'faraday,fa526', 'intel,sa110',
'intel,sa1100', 'marvell,feroceon', 'marvell,mohawk', 'marvell,pj4a',
'marvell,pj4b', 'marvell,sheeva-v5', 'marvell,sheeva-v7',
'nvidia,tegra132-denver', 'nvidia,tegra186-denver',
'nvidia,tegra194-carmel', 'qcom,krait', 'qcom,kryo', 'qcom,kryo385',
'qcom,scorpion']
Documentation/devicetree/bindings/riscv/cpus.example.dt.yaml:
cpu@0:compatible: ['sifive,rocket0', 'riscv'] is too long
Documentation/devicetree/bindings/riscv/cpus.example.dt.yaml:
cpu@1:compatible:0: 'sifive,rocket0' is not one of ['arm,arm710t',
'arm,arm720t', 'arm,arm740t', 'arm,arm7ej-s', 'arm,arm7tdmi',
'arm,arm7tdmi-s', 'arm,arm9es', 'arm,arm9ej-s', 'arm,arm920t',
'arm,arm922t', 'arm,arm925', 'arm,arm926e-s', 'arm,arm926ej-s',
'arm,arm940t', 'arm,arm946e-s', 'arm,arm966e-s', 'arm,arm968e-s',
'arm,arm9tdmi', 'arm,arm1020e', 'arm,arm1020t', 'arm,arm1022e',
'arm,arm1026ej-s', 'arm,arm1136j-s', 'arm,arm1136jf-s',
'arm,arm1156t2-s', 'arm,arm1156t2f-s', 'arm,arm1176jzf',
'arm,arm1176jz-s', 'arm,arm1176jzf-s', 'arm,arm11mpcore', 'arm,armv8',
'arm,cortex-a5', 'arm,cortex-a7', 'arm,cortex-a8', 'arm,cortex-a9',
'arm,cortex-a12', 'arm,cortex-a15', 'arm,cortex-a17',
'arm,cortex-a53', 'arm,cortex-a57', 'arm,cortex-a72',
'arm,cortex-a73', 'arm,cortex-m0', 'arm,cortex-m0+', 'arm,cortex-m1',
'arm,cortex-m3', 'arm,cortex-m4', 'arm,cortex-r4', 'arm,cortex-r5',
'arm,cortex-r7', 'brcm,brahma-b15', 'brcm,brahma-b53', 'brcm,vulcan',
'cavium,thunder', 'cavium,thunder2', 'faraday,fa526', 'intel,sa110',
'intel,sa1100', 'marvell,feroceon', 'marvell,mohawk', 'marvell,pj4a',
'marvell,pj4b', 'marvell,sheeva-v5', 'marvell,sheeva-v7',
'nvidia,tegra132-denver', 'nvidia,tegra186-denver',
'nvidia,tegra194-carmel', 'qcom,krait', 'qcom,kryo', 'qcom,kryo385',
'qcom,scorpion']
Documentation/devicetree/bindings/riscv/cpus.example.dt.yaml:
cpu@1:compatible:1: 'riscv' is not one of ['arm,arm710t',
'arm,arm720t', 'arm,arm740t', 'arm,arm7ej-s', 'arm,arm7tdmi',
'arm,arm7tdmi-s', 'arm,arm9es', 'arm,arm9ej-s', 'arm,arm920t',
'arm,arm922t', 'arm,arm925', 'arm,arm926e-s', 'arm,arm926ej-s',
'arm,arm940t', 'arm,arm946e-s', 'arm,arm966e-s', 'arm,arm968e-s',
'arm,arm9tdmi', 'arm,arm1020e', 'arm,arm1020t', 'arm,arm1022e',
'arm,arm1026ej-s', 'arm,arm1136j-s', 'arm,arm1136jf-s',
'arm,arm1156t2-s', 'arm,arm1156t2f-s', 'arm,arm1176jzf',
'arm,arm1176jz-s', 'arm,arm1176jzf-s', 'arm,arm11mpcore', 'arm,armv8',
'arm,cortex-a5', 'arm,cortex-a7', 'arm,cortex-a8', 'arm,cortex-a9',
'arm,cortex-a12', 'arm,cortex-a15', 'arm,cortex-a17',
'arm,cortex-a53', 'arm,cortex-a57', 'arm,cortex-a72',
'arm,cortex-a73', 'arm,cortex-m0', 'arm,cortex-m0+', 'arm,cortex-m1',
'arm,cortex-m3', 'arm,cortex-m4', 'arm,cortex-r4', 'arm,cortex-r5',
'arm,cortex-r7', 'brcm,brahma-b15', 'brcm,brahma-b53', 'brcm,vulcan',
'cavium,thunder', 'cavium,thunder2', 'faraday,fa526', 'intel,sa110',
'intel,sa1100', 'marvell,feroceon', 'marvell,mohawk', 'marvell,pj4a',
'marvell,pj4b', 'marvell,sheeva-v5', 'marvell,sheeva-v7',
'nvidia,tegra132-denver', 'nvidia,tegra186-denver',
'nvidia,tegra194-carmel', 'qcom,krait', 'qcom,kryo', 'qcom,kryo385',
'qcom,scorpion']
Documentation/devicetree/bindings/riscv/cpus.example.dt.yaml:
cpu@1:compatible: ['sifive,rocket0', 'riscv'] is too long
Documentation/devicetree/bindings/riscv/cpus.example.dt.yaml: cpu@0:
'timebase-frequency' is a required property
Documentation/devicetree/bindings/riscv/cpus.example.dt.yaml:
'cache-level' is a required property

The main problem is the Arm cpu schema is applied on RiscV nodes and
vice-versa. I think since we have the common cpus schema now, we'll
need to remove the 'cpus' node from the riscv and arm schemas so we
only apply the schema on matching compatibles. The last one here is
probably from cache-controller.yaml.

And then these are just from dtc which you should have seen already:

Documentation/devicetree/bindings/riscv/cpus.example.dts:75.25-35:
Warning (reg_format): /example-1/cpus/cpu@0:reg: property has invalid
length (4 bytes) (#address-cells == 2, #size-cells == 1)
Documentation/devicetree/bindings/riscv/cpus.example.dt.yaml: Warning
(pci_device_bus_num): Failed prerequisite 'reg_format'
Documentation/devicetree/bindings/riscv/cpus.example.dt.yaml: Warning
(i2c_bus_reg): Failed prerequisite 'reg_format'
Documentation/devicetree/bindings/riscv/cpus.example.dt.yaml: Warning
(spi_bus_reg): Failed prerequisite 'reg_format'
Documentation/devicetree/bindings/riscv/cpus.example.dts:73.23-84.19:
Warning (avoid_default_addr_size): /example-1/cpus/cpu@0: Relying on
default #address-cells value
Documentation/devicetree/bindings/riscv/cpus.example.dts:73.23-84.19:
Warning (avoid_default_addr_size): /example-1/cpus/cpu@0: Relying on
default #size-cells value

Rob



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

  Powered by Linux