Re: [PATCH v2 1/2] dt-bindings: display: imx: Describe drm binding for fsl,imx-lcdc

From: Krzysztof Kozlowski
Date: Fri Dec 16 2022 - 05:41:49 EST


On 14/12/2022 12:59, Uwe Kleine-König wrote:
> Modify the existing (fb-like) binding to support the drm-like binding in
> parallel.

Aren't you now adding two compatibles to the same hardware, just for two
Linux drivers? One hardware should have one compatible, regardless of
Linux display implementation.

>
> Signed-off-by: Uwe Kleine-König <u.kleine-koenig@xxxxxxxxxxxxxx>
> ---
> .../bindings/display/imx/fsl,imx-lcdc.yaml | 45 ++++++++++++++++++-
> 1 file changed, 44 insertions(+), 1 deletion(-)
>
> diff --git a/Documentation/devicetree/bindings/display/imx/fsl,imx-lcdc.yaml b/Documentation/devicetree/bindings/display/imx/fsl,imx-lcdc.yaml
> index 35a8fff036ca..2a8225b10890 100644
> --- a/Documentation/devicetree/bindings/display/imx/fsl,imx-lcdc.yaml
> +++ b/Documentation/devicetree/bindings/display/imx/fsl,imx-lcdc.yaml
> @@ -21,6 +21,9 @@ properties:
> - fsl,imx25-fb
> - fsl,imx27-fb
> - const: fsl,imx21-fb
> + - items:
> + - const: fsl,imx25-lcdc
> + - const: fsl,imx21-lcdc
>
> clocks:
> maxItems: 3
> @@ -31,6 +34,9 @@ properties:
> - const: ahb
> - const: per
>
> + port:
> + $ref: /schemas/graph.yaml#/properties/port
> +
> display:
> $ref: /schemas/types.yaml#/definitions/phandle
>
> @@ -59,17 +65,54 @@ properties:
> description:
> LCDC Sharp Configuration Register value.
>
> +if:

Put it under allOf. It grows pretty often so this would avoid future
re-indents.

> + properties:
> + compatible:
> + contains:
> + enum:
> + - fsl,imx1-lcdc
> + - fsl,imx21-lcdc
> +then:
> + properties:
> + display: false
> + fsl,dmacr: false
> + fsl,lpccr: false
> + fsl,lscr1: false
> +
> + required:
> + - port
> +
> +else:
> + properties:
> + port: false
> +
> + required:
> + - display
> +
> required:
> - compatible
> - clocks
> - clock-names
> - - display
> - interrupts
> - reg
>
> additionalProperties: false
>
> examples:
> + - |
> + lcdc@53fbc000 {
> + compatible = "fsl,imx25-lcdc", "fsl,imx21-lcdc";
> + reg = <0x53fbc000 0x4000>;
> + interrupts = <39>;
> + clocks = <&clks 103>, <&clks 66>, <&clks 49>;
> + clock-names = "ipg", "ahb", "per";
> +
> + port {
> + parallel_out: endpoint {
> + remote-endpoint = <&panel_in>;
> + };
> + };
> + };
> - |
> imxfb: fb@10021000 {
> compatible = "fsl,imx21-fb";

Best regards,
Krzysztof