[PATCH 1/2] dt-bindings: display: Turn lvds.yaml into a generic schema
Rob Herring
robh at kernel.org
Thu Nov 18 22:49:54 UTC 2021
On Tue, Nov 16, 2021 at 03:35:02PM +0100, Maxime Ripard wrote:
> The lvds.yaml file so far was both defining the generic LVDS properties
> (such as data-mapping) that could be used for any LVDS sink, but also
> the panel-lvds binding.
>
> That last binding was to describe LVDS panels simple enough, and had a
> number of other bindings using it as a base to specialise it further.
>
> However, this situation makes it fairly hard to extend and reuse both
> the generic parts, and the panel-lvds itself.
>
> Let's remove the panel-lvds parts and leave only the generic LVDS
> properties.
>
> Signed-off-by: Maxime Ripard <maxime at cerno.tech>
> ---
> .../display/panel/advantech,idk-1110wr.yaml | 17 ++++++++++-
> .../display/panel/innolux,ee101ia-01d.yaml | 21 +++++++++++++-
> .../bindings/display/panel/lvds.yaml | 29 +------------------
> .../display/panel/mitsubishi,aa104xd12.yaml | 17 ++++++++++-
> .../display/panel/mitsubishi,aa121td01.yaml | 17 ++++++++++-
> .../display/panel/sgd,gktw70sdae4se.yaml | 17 ++++++++++-
> 6 files changed, 85 insertions(+), 33 deletions(-)
>
> diff --git a/Documentation/devicetree/bindings/display/panel/advantech,idk-1110wr.yaml b/Documentation/devicetree/bindings/display/panel/advantech,idk-1110wr.yaml
> index 93878c2cd370..f27cd2038636 100644
> --- a/Documentation/devicetree/bindings/display/panel/advantech,idk-1110wr.yaml
> +++ b/Documentation/devicetree/bindings/display/panel/advantech,idk-1110wr.yaml
> @@ -11,13 +11,23 @@ maintainers:
> - Thierry Reding <thierry.reding at gmail.com>
>
> allOf:
> + - $ref: panel-common.yaml#
> - $ref: lvds.yaml#
>
> +select:
> + properties:
> + compatible:
> + contains:
> + const: advantech,idk-1110wr
> +
> + required:
> + - compatible
> +
> properties:
> compatible:
> items:
> - const: advantech,idk-1110wr
> - - {} # panel-lvds, but not listed here to avoid false select
> + - const: panel-lvds
>
> data-mapping:
> const: jeida-24
> @@ -35,6 +45,11 @@ additionalProperties: false
>
> required:
> - compatible
> + - data-mapping
> + - width-mm
> + - height-mm
> + - panel-timing
> + - port
>
> examples:
> - |+
> diff --git a/Documentation/devicetree/bindings/display/panel/innolux,ee101ia-01d.yaml b/Documentation/devicetree/bindings/display/panel/innolux,ee101ia-01d.yaml
> index a69681e724cb..6e06eecac14e 100644
> --- a/Documentation/devicetree/bindings/display/panel/innolux,ee101ia-01d.yaml
> +++ b/Documentation/devicetree/bindings/display/panel/innolux,ee101ia-01d.yaml
> @@ -11,15 +11,26 @@ maintainers:
> - Thierry Reding <thierry.reding at gmail.com>
>
> allOf:
> + - $ref: panel-common.yaml#
> - $ref: lvds.yaml#
>
> +select:
> + properties:
> + compatible:
> + contains:
> + const: innolux,ee101ia-01d
> +
> + required:
> + - compatible
> +
> properties:
> compatible:
> items:
> - const: innolux,ee101ia-01d
> - - {} # panel-lvds, but not listed here to avoid false select
> + - const: panel-lvds
>
> backlight: true
> + data-mapping: true
> enable-gpios: true
> power-supply: true
> width-mm: true
> @@ -27,5 +38,13 @@ properties:
> panel-timing: true
> port: true
>
> +required:
> + - compatible
> + - data-mapping
> + - width-mm
> + - height-mm
> + - panel-timing
> + - port
> +
> additionalProperties: false
> ...
> diff --git a/Documentation/devicetree/bindings/display/panel/lvds.yaml b/Documentation/devicetree/bindings/display/panel/lvds.yaml
> index 49460c9dceea..5281a75c8bb5 100644
> --- a/Documentation/devicetree/bindings/display/panel/lvds.yaml
> +++ b/Documentation/devicetree/bindings/display/panel/lvds.yaml
> @@ -4,7 +4,7 @@
> $id: http://devicetree.org/schemas/display/panel/lvds.yaml#
> $schema: http://devicetree.org/meta-schemas/core.yaml#
>
> -title: LVDS Display Panel
> +title: LVDS Display Common Properties
>
> maintainers:
> - Laurent Pinchart <laurent.pinchart+renesas at ideasonboard.com>
> @@ -26,18 +26,7 @@ description: |+
> Device compatible with those specifications have been marketed under the
> FPD-Link and FlatLink brands.
>
> -allOf:
> - - $ref: panel-common.yaml#
> -
I think you can leave this instead of adding everywhere you include
lvds.yaml. Either way,
Reviewed-by: Rob Herring <robh at kernel.org>
More information about the dri-devel
mailing list