On Fri, Jun 9, 2023 at 7:38 AM Shawn Guo <shawnguo@xxxxxxxxxx> wrote: > > On Tue, Jun 06, 2023 at 08:26:52AM -0700, Tim Harvey wrote: > > Update the imx8mp-venice-gw74xx for revB: > > - add CAN1 > > - add TIS-TPM on SPI2 > > - add FAN controller > > - fix PMIC I2C bus (revA PMIC I2C was non-functional so no need for > > backward compatible option) > > - M2 socket GPIO's moved > > > > Signed-off-by: Tim Harvey <tharvey@xxxxxxxxxxxxx> > > ../arch/arm64/boot/dts/freescale/imx8mp-venice-gw74xx.dts:402.4-17: Warning (reg_format): /soc@0/bus@30800000/i2c@30a20000/gsc@20/fan-controller@a:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1) > arch/arm64/boot/dts/freescale/imx8mp-venice-gw74xx.dtb: Warning (pci_device_reg): Failed prerequisite 'reg_format' > arch/arm64/boot/dts/freescale/imx8mp-venice-gw74xx.dtb: Warning (pci_device_bus_num): Failed prerequisite 'reg_format' > arch/arm64/boot/dts/freescale/imx8mp-venice-gw74xx.dtb: Warning (i2c_bus_reg): Failed prerequisite 'reg_format' > arch/arm64/boot/dts/freescale/imx8mp-venice-gw74xx.dtb: Warning (spi_bus_reg): Failed prerequisite 'reg_format' > ../arch/arm64/boot/dts/freescale/imx8mp-venice-gw74xx.dts:400.20-403.5: Warning (avoid_default_addr_size): /soc@0/bus@30800000/i2c@30a20000/gsc@20/fan-controller@a: Relying on default #address-cells value > ../arch/arm64/boot/dts/freescale/imx8mp-venice-gw74xx.dts:400.20-403.5: Warning (avoid_default_addr_size): /soc@0/bus@30800000/i2c@30a20000/gsc@20/fan-controller@a: Relying on default #size-cells value > Shawn, Looks like I'm missing an '#address-cells' and '#size-cells' in the gsc node. I will send a v3. How do you filter through all the known (and ignored?) warnings that are failing dtbs_check because various dt-binding yamls which are either missing or need updates such as the following: /usr/src/venice/linux-master/arch/arm64/boot/dts/freescale/imx8mp-venice-gw74xx.dtb: timer@302d0000: compatible: 'oneOf' conditional failed, one must be fixed: ['fsl,imx8mp-gpt', 'fsl,imx6dl-gpt'] is too long 'fsl,imx1-gpt' was expected 'fsl,imx21-gpt' was expected 'fsl,imx27-gpt' was expected 'fsl,imx31-gpt' was expected 'fsl,imx8mp-gpt' is not one of ['fsl,imx25-gpt', 'fsl,imx50-gpt', 'fsl,imx51-gpt', 'fsl,imx53-gpt', 'fsl,imx6q-gpt'] 'fsl,imx6dl-gpt' was expected 'fsl,imx8mp-gpt' is not one of ['fsl,imx6sl-gpt', 'fsl,imx6sx-gpt', 'fsl,imxrt1050-gpt', 'fsl,imxrt1170-gpt'] >From schema: /usr/src/venice/linux-master/Documentation/devicetree/bindings/timer/fsl,imxgpt.yaml ^^^ get this for all the imx gpt timers arch/arm64/boot/dts/freescale/imx8mp-venice-gw74xx.dtb: /soc@0/bus@30800000/spba-bus@30800000/spi@30820000/tpm@0: failed to match any schema with compatible: ['tcg,tpm_tis-spi'] /usr/src/venice/linux-master/arch/arm64/boot/dts/freescale/imx8mp-venice-gw74xx.dtb: accelerometer@19: 'interrupt-names' does not match any of the regexes: 'pinctrl-[0-9]+' >From schema: /usr/src/venice/linux-master/Documentation/devicetree/bindings/iio/st,st-sensors.yaml ^^^ is 'interrupt-names = "INT1"' really invalid here? /usr/src/venice/linux-master/arch/arm64/boot/dts/freescale/imx8mp-venice-gw74xx.dtb: switch@5f: Unevaluated properties are not allowed ('interrupt-parent', 'interrupts' were unexpected) >From schema: /usr/src/venice/linux-master/Documentation/devicetree/bindings/net/dsa/microchip,ksz.yaml ^^^ microchip,ksz.yaml doesn't describe interrupts yet the driver uses them /usr/src/venice/linux-master/arch/arm64/boot/dts/freescale/imx8mp-venice-gw74xx.dtb: wifi@0: compatible: 'oneOf' conditional failed, one must be fixed: ['cypress,cyw4373-fmac'] is too short 'cypress,cyw4373-fmac' is not one of ['brcm,bcm4329-fmac', 'pci14e4,43dc', 'pci14e4,4464', 'pci14e4,4488', 'pci14e4,4425', 'pci14e4,4433'] >From schema: /usr/src/venice/linux-master/Documentation/devicetree/bindings/net/wireless/brcm,bcm4329-fmac.yaml ^^^ This one I don't understand at all - brcm,bcm4329-fmac.yaml defines 'cypress,cyw4373-fmac under oneOf/items/enum but not oneOf/enum??? /usr/src/venice/linux-master/arch/arm64/boot/dts/freescale/imx8mp-venice-gw74xx.dtb: pcie@33800000: Unevaluated properties are not allowed ('assigned-clock-parents', 'assigned-clock-rates', 'assigned-clocks' were unexpected) >From schema: /usr/src/venice/linux-master/Documentation/devicetree/bindings/pci/fsl,imx6q-pcie.yaml ^^^ we get this on all imx with pcie /usr/src/venice/linux-master/arch/arm64/boot/dts/freescale/imx8mp-venice-gw74xx.dtb: usb@32f10100: usb@38100000: Unevaluated properties are not allowed ('connector' was unexpected) >From schema: /usr/src/venice/linux-master/Documentation/devicetree/bindings/usb/fsl,imx8mp-dwc3.yaml /usr/src/venice/linux-master/arch/arm64/boot/dts/freescale/imx8mp-venice-gw74xx.dtb: usb@38100000: Unevaluated properties are not allowed ('connector' was unexpected) >From schema: /usr/src/venice/linux-master/Documentation/devicetree/bindings/usb/snps,dwc3.yaml ^^^ fsl,imx8mp-dwc3.yaml doesn't document connector nodes arch/arm64/boot/dts/freescale/imx8mp-venice-gw74xx.dtb: /pps: failed to match any schema with compatible: ['pps-gpio'] ^^^ need a pps-gpio.yaml Is there a way to skip certain schemas or some multi-line grep -v pattern you are using? I've noticed a lot of contributors putting time into dt-bindings to pass schema checks and things are getting cleaned up fairly quickly. Best Regards, Tim