Hi Rob, Am 13.08.19 um 19:22 schrieb Rob Herring: > On Tue, Aug 13, 2019 at 10:21 AM Stefan Wahren <wahrenst@xxxxxxx> wrote: >> Convert the BCM2835/6/7 SoC bindings to DT schema format using json-schema. >> All the other Broadcom boards are maintained by Florian Fainelli. >> >> Signed-off-by: Stefan Wahren <wahrenst@xxxxxxx> >> Acked-by: Eric Anholt <eric@xxxxxxxxxx> >> --- >> .../devicetree/bindings/arm/bcm/bcm2835.yaml | 46 +++++++++++++++ >> .../devicetree/bindings/arm/bcm/brcm,bcm2835.txt | 67 ---------------------- >> 2 files changed, 46 insertions(+), 67 deletions(-) >> create mode 100644 Documentation/devicetree/bindings/arm/bcm/bcm2835.yaml >> delete mode 100644 Documentation/devicetree/bindings/arm/bcm/brcm,bcm2835.txt >> >> diff --git a/Documentation/devicetree/bindings/arm/bcm/bcm2835.yaml b/Documentation/devicetree/bindings/arm/bcm/bcm2835.yaml >> new file mode 100644 >> index 0000000..1a4be26 >> --- /dev/null >> +++ b/Documentation/devicetree/bindings/arm/bcm/bcm2835.yaml >> @@ -0,0 +1,46 @@ >> +# SPDX-License-Identifier: GPL-2.0 >> +%YAML 1.2 >> +--- >> +$id: http://devicetree.org/schemas/arm/bcm/bcm2835.yaml# >> +$schema: http://devicetree.org/meta-schemas/core.yaml# >> + >> +title: Broadcom BCM2711/BCM2835 Platforms Device Tree Bindings >> + >> +maintainers: >> + - Eric Anholt <eric@xxxxxxxxxx> >> + - Stefan Wahren <wahrenst@xxxxxxx> >> + >> +properties: >> + $nodename: >> + const: '/' >> + compatible: >> + oneOf: >> + - description: BCM2835 based Boards >> + items: >> + - enum: >> + - raspberrypi,model-a >> + - raspberrypi,model-a-plus >> + - raspberrypi,model-b >> + - raspberrypi,model-b-i2c0 # Raspberry Pi Model B (no P5) >> + - raspberrypi,model-b-rev2 >> + - raspberrypi,model-b-plus >> + - raspberrypi,compute-module >> + - raspberrypi,model-zero >> + - raspberrypi,model-zero-w >> + - const: brcm,bcm2835 >> + >> + - description: BCM2836 based Boards >> + items: >> + - enum: >> + - raspberrypi,2-model-b > Don't you need brcm,bcm2836 here? > >> + >> + - description: BCM2837 based Boards >> + items: >> + - enum: >> + - raspberrypi,3-model-a-plus >> + - raspberrypi,3-model-b >> + - raspberrypi,3-model-b-plus >> + - raspberrypi,3-compute-module >> + - raspberrypi,3-compute-module-lite > Don't you need brcm,bcm2837 here? > > Please run 'dtbs_check' and make sure there aren't warnings (in the root node). thanks, after addressing your comments the root node doesn't have warnings anymore. Beside that there a lot of other warnings: DTC arch/arm/boot/dts/bcm2711-rpi-4-b.dt.yaml CHECK arch/arm/boot/dts/bcm2711-rpi-4-b.dt.yaml /home/stefan/torvalds/arch/arm/boot/dts/bcm2711-rpi-4-b.dt.yaml: arm-pmu: compatible: ['arm,cortex-a72-pmu', 'arm,armv8-pmuv3'] is too long /home/stefan/torvalds/arch/arm/boot/dts/bcm2711-rpi-4-b.dt.yaml: arm-pmu: compatible: Additional items are not allowed ('arm,armv8-pmuv3' was unexpected) I think the schema is a little bit too strict by prohibit a fallback compatible. /home/stefan/torvalds/arch/arm/boot/dts/bcm2711-rpi-4-b.dt.yaml: serial@7e201800: Additional properties are not allowed ('arm,primecell-periphid' was unexpected) In the old txt version this was an allowed property. /home/stefan/torvalds/arch/arm/boot/dts/bcm2711-rpi-4-b.dt.yaml: firmware: $nodename:0: 'firmware' does not match '^(bus|soc|axi|ahb|apb)(@[0-9a-f]+)?$' /home/stefan/torvalds/arch/arm/boot/dts/bcm2711-rpi-4-b.dt.yaml: firmware: '#address-cells' is a required property /home/stefan/torvalds/arch/arm/boot/dts/bcm2711-rpi-4-b.dt.yaml: firmware: '#size-cells' is a required property /home/stefan/torvalds/arch/arm/boot/dts/bcm2711-rpi-4-b.dt.yaml: firmware: 'ranges' is a required property I suggest to fix this by removing the "simple-bus". /home/stefan/torvalds/arch/arm/boot/dts/bcm2711-rpi-4-b.dt.yaml: serial@7e201a00: Additional properties are not allowed ('arm,primecell-periphid' was unexpected) /home/stefan/torvalds/arch/arm/boot/dts/bcm2711-rpi-4-b.dt.yaml: gpio@7e200000: 'pinctrl-0' is a dependency of 'pinctrl-names' This could be fixed by removing pinctrl-names. /home/stefan/torvalds/arch/arm/boot/dts/bcm2711-rpi-4-b.dt.yaml: serial@7e201600: Additional properties are not allowed ('arm,primecell-periphid' was unexpected) /home/stefan/torvalds/arch/arm/boot/dts/bcm2711-rpi-4-b.dt.yaml: gic400@40041000: $nodename:0: 'gic400@40041000' does not match '^interrupt-controller(@[0-9a-f,]+)*$' I will rename gic400 to interrupt-controller. /home/stefan/torvalds/arch/arm/boot/dts/bcm2711-rpi-4-b.dt.yaml: serial@7e201400: Additional properties are not allowed ('arm,primecell-periphid' was unexpected) /home/stefan/torvalds/arch/arm/boot/dts/bcm2711-rpi-4-b.dt.yaml: serial@7e201000: compatible: ['brcm,bcm2835-pl011', 'arm,pl011', 'arm,primecell'] is not valid under any of the given schemas /home/stefan/torvalds/arch/arm/boot/dts/bcm2711-rpi-4-b.dt.yaml: serial@7e201000: Additional properties are not allowed ('bluetooth', 'arm,primecell-periphid' were unexpected) /home/stefan/torvalds/arch/arm/boot/dts/bcm2711-rpi-4-b.dt.yaml: sd_io_1v8_reg: states:0: [1800000, 1, 3300000, 0] is too long /home/stefan/torvalds/arch/arm/boot/dts/bcm2711-rpi-4-b.dt.yaml: sd_io_1v8_reg: states:0: Additional items are not allowed (3300000, 0 were unexpected) No idea what is wrong here /home/stefan/torvalds/arch/arm/boot/dts/bcm2711-rpi-4-b.dt.yaml: clocks: #size-cells:0:0: 0 is not one of [1, 2] /home/stefan/torvalds/arch/arm/boot/dts/bcm2711-rpi-4-b.dt.yaml: clocks: $nodename:0: 'clocks' does not match '^(bus|soc|axi|ahb|apb)(@[0-9a-f]+)?$' /home/stefan/torvalds/arch/arm/boot/dts/bcm2711-rpi-4-b.dt.yaml: clocks: clock@3:reg:0: [3] is too short /home/stefan/torvalds/arch/arm/boot/dts/bcm2711-rpi-4-b.dt.yaml: clocks: clock@4:reg:0: [4] is too short /home/stefan/torvalds/arch/arm/boot/dts/bcm2711-rpi-4-b.dt.yaml: clocks: 'ranges' is a required property /home/stefan/torvalds/arch/arm/boot/dts/bcm2711-rpi-4-b.dt.yaml: clock@3: 'reg' does not match any of the regexes: 'pinctrl-[0-9]+' /home/stefan/torvalds/arch/arm/boot/dts/bcm2711-rpi-4-b.dt.yaml: clock@4: 'reg' does not match any of the regexes: 'pinctrl-[0-9]+' This could be fixed by avoiding a simple-bus for the fixed clocks. Stefan > > Rob > > _______________________________________________ > linux-arm-kernel mailing list > linux-arm-kernel@xxxxxxxxxxxxxxxxxxx > http://lists.infradead.org/mailman/listinfo/linux-arm-kernel