DT schema warnings on Risc-V virt machine
Rob Herring
robh at kernel.org
Wed Aug 3 10:05:52 PDT 2022
Hey folks,
FYI, I ran DT validation on the Risc-V 'virt' machine and these are the
warnings:
/home/rob/riscv-virt.dtb: cpu at 0: riscv,isa:0: 'rv64imafdcsuh' is not one of ['rv64imac', 'rv64imafdc']
From schema: /home/rob/proj/git/linux-dt/Documentation/devicetree/bindings/riscv/cpus.yaml
/home/rob/riscv-virt.dtb: soc: poweroff: {'value': [[21845]], 'offset': [[0]], 'regmap': [[4]], 'compatible': ['syscon-poweroff']} should not be valid under {'type': 'object'}
From schema: /home/rob/proj/git/dt-schema/dtschema/schemas/simple-bus.yaml
/home/rob/riscv-virt.dtb: soc: reboot: {'value': [[30583]], 'offset': [[0]], 'regmap': [[4]], 'compatible': ['syscon-reboot']} should not be valid under {'type': 'object'}
From schema: /home/rob/proj/git/dt-schema/dtschema/schemas/simple-bus.yaml
/home/rob/riscv-virt.dtb: uart at 10000000: $nodename:0: 'uart at 10000000' does not match '^serial(@.*)?$'
From schema: /home/rob/proj/git/linux-dt/Documentation/devicetree/bindings/serial/8250.yaml
/home/rob/riscv-virt.dtb: plic at c000000: compatible: 'oneOf' conditional failed, one must be fixed:
'sifive,plic-1.0.0' is not one of ['sifive,fu540-c000-plic', 'starfive,jh7100-plic', 'canaan,k210-plic']
'sifive,plic-1.0.0' is not one of ['allwinner,sun20i-d1-plic']
'sifive,plic-1.0.0' was expected
'thead,c900-plic' was expected
From schema: /home/rob/proj/git/linux-dt/Documentation/devicetree/bindings/interrupt-controller/sifive,plic-1.0.0.yaml
/home/rob/riscv-virt.dtb: plic at c000000: '#address-cells' is a required property
From schema: /home/rob/proj/git/linux-dt/Documentation/devicetree/bindings/interrupt-controller/sifive,plic-1.0.0.yaml
/home/rob/riscv-virt.dtb: clint at 2000000: compatible:0: 'sifive,clint0' is not one of ['sifive,fu540-c000-clint', 'starfive,jh7100-clint', 'canaan,k210-clint']
From schema: /home/rob/proj/git/linux-dt/Documentation/devicetree/bindings/timer/sifive,clint.yaml
/home/rob/riscv-virt.dtb: clint at 2000000: compatible:1: 'sifive,clint0' was expected
From schema: /home/rob/proj/git/linux-dt/Documentation/devicetree/bindings/timer/sifive,clint.yaml
Also from the 'spike' machine:
/home/rob/riscv-spike.dtb: cpu at 0: riscv,isa:0: 'rv64imafdcsuh' is not one of ['rv64imac', 'rv64imafdc']
From schema: /home/rob/proj/git/linux-dt/Documentation/devicetree/bindings/riscv/cpus.yaml
/home/rob/riscv-spike.dtb: clint at 2000000: compatible:0: 'sifive,clint0' is not one of ['sifive,fu540-c000-clint', 'starfive,jh7100-clint', 'canaan,k210-clint']
From schema: /home/rob/proj/git/linux-dt/Documentation/devicetree/bindings/timer/sifive,clint.yaml
/home/rob/riscv-spike.dtb: clint at 2000000: compatible:1: 'sifive,clint0' was expected
From schema: /home/rob/proj/git/linux-dt/Documentation/devicetree/bindings/timer/sifive,clint.yaml
There could also be other warnings from non-default configurations.
To reproduce, dump the dtb and run:
dt-validate -p Documentation/devicetree/bindings/processed-schema.json riscv-spike.dtb
(processed-schema.json is from kernel validation run)
Rob
More information about the linux-riscv
mailing list