Hi both, FWIW, On Fri Dec 3, 2021 at 5:09 PM WET, Laurent Pinchart wrote: > Hi Rob, > > Thank you for the patch. > > On Fri, Dec 03, 2021 at 10:48:28AM -0600, Rob Herring wrote: > > The if/then schema for 'data-lanes' doesn't work as 'compatible' is at a > > different level than 'data-lanes'. To make it work, the if/then schema > > would have to be moved to the top level and then whole hierarchy of > > nodes down to 'data-lanes' created. I don't think it is worth the > > complexity to do that, so let's just drop it. > > > > The error in this schema is masked by a fixup in the tools causing the > > 'allOf' to get overwritten. Removing the fixup as part of moving to > > json-schema draft 2019-09 revealed the issue: > > > > Documentation/devicetree/bindings/media/nxp,imx7-mipi-csi2.example.dt.yaml: mipi-csi@30750000: ports:port@0:endpoint:data-lanes:0: [1] is too short > > From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/media/nxp,imx7-mipi-csi2.yaml > > Documentation/devicetree/bindings/media/nxp,imx7-mipi-csi2.example.dt.yaml: mipi-csi@32e30000: ports:port@0:endpoint:data-lanes:0: [1, 2, 3, 4] is too long > > From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/media/nxp,imx7-mipi-csi2.yaml > > > > The if condition was always true because 'compatible' did not exist in > > 'endpoint' node and a non-existent property is true for json-schema. > > > > Fixes: 85b62ff2cb97 ("media: dt-bindings: media: nxp,imx7-mipi-csi2: Add i.MX8MM support") > > Cc: Rui Miguel Silva <rmfrfs@xxxxxxxxx> > > Cc: Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx> > > Cc: Mauro Carvalho Chehab <mchehab@xxxxxxxxxx> > > Cc: Shawn Guo <shawnguo@xxxxxxxxxx> > > Cc: Sascha Hauer <s.hauer@xxxxxxxxxxxxxx> > > Cc: Pengutronix Kernel Team <kernel@xxxxxxxxxxxxxx> > > Cc: Fabio Estevam <festevam@xxxxxxxxx> > > Cc: NXP Linux Team <linux-imx@xxxxxxx> > > Cc: linux-media@xxxxxxxxxxxxxxx > > Cc: linux-arm-kernel@xxxxxxxxxxxxxxxxxxx > > Signed-off-by: Rob Herring <robh@xxxxxxxxxx> > > Reviewed-by: Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx> Acked-by: Rui Miguel Silva <rmfrfs@xxxxxxxxx> Cheers, Rui > > > --- > > v2: > > - Add note that imx7 only supports 2 lanes > > --- > > .../bindings/media/nxp,imx7-mipi-csi2.yaml | 14 ++------------ > > 1 file changed, 2 insertions(+), 12 deletions(-) > > > > diff --git a/Documentation/devicetree/bindings/media/nxp,imx7-mipi-csi2.yaml b/Documentation/devicetree/bindings/media/nxp,imx7-mipi-csi2.yaml > > index 877183cf4278..1ef849dc74d7 100644 > > --- a/Documentation/devicetree/bindings/media/nxp,imx7-mipi-csi2.yaml > > +++ b/Documentation/devicetree/bindings/media/nxp,imx7-mipi-csi2.yaml > > @@ -79,6 +79,8 @@ properties: > > > > properties: > > data-lanes: > > + description: > > + Note that 'fsl,imx7-mipi-csi2' only supports up to 2 data lines. > > items: > > minItems: 1 > > maxItems: 4 > > @@ -91,18 +93,6 @@ properties: > > required: > > - data-lanes > > > > - allOf: > > - - if: > > - properties: > > - compatible: > > - contains: > > - const: fsl,imx7-mipi-csi2 > > - then: > > - properties: > > - data-lanes: > > - items: > > - maxItems: 2 > > - > > port@1: > > $ref: /schemas/graph.yaml#/properties/port > > description: > > -- > Regards, > > Laurent Pinchart