[PATCH v2] dt-bindings: media: nxp,imx7-mipi-csi2: Drop bad if/then schema
Laurent Pinchart
laurent.pinchart at ideasonboard.com
Fri Dec 3 09:09:53 PST 2021
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 at 30750000: ports:port at 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 at 32e30000: ports:port at 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 at gmail.com>
> Cc: Laurent Pinchart <laurent.pinchart at ideasonboard.com>
> Cc: Mauro Carvalho Chehab <mchehab at kernel.org>
> Cc: Shawn Guo <shawnguo at kernel.org>
> Cc: Sascha Hauer <s.hauer at pengutronix.de>
> Cc: Pengutronix Kernel Team <kernel at pengutronix.de>
> Cc: Fabio Estevam <festevam at gmail.com>
> Cc: NXP Linux Team <linux-imx at nxp.com>
> Cc: linux-media at vger.kernel.org
> Cc: linux-arm-kernel at lists.infradead.org
> Signed-off-by: Rob Herring <robh at kernel.org>
Reviewed-by: Laurent Pinchart <laurent.pinchart at ideasonboard.com>
> ---
> 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 at 1:
> $ref: /schemas/graph.yaml#/properties/port
> description:
--
Regards,
Laurent Pinchart
More information about the linux-arm-kernel
mailing list