devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Rob Herring <robh@kernel.org>
To: Andre Przywara <andre.przywara@arm.com>
Cc: Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>,
	Liviu Dudau <liviu.dudau@arm.com>,
	Robin Murphy <robin.murphy@arm.com>,
	devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
	David Airlie <airlied@linux.ie>, Daniel Vetter <daniel@ffwll.ch>,
	dri-devel@lists.freedesktop.org
Subject: Re: [PATCH 09/11] dt-bindings: display: convert Arm HDLCD to DT schema
Date: Wed, 27 Apr 2022 14:39:02 -0500	[thread overview]
Message-ID: <Ymmb1p6rAIDtpc/X@robh.at.kernel.org> (raw)
In-Reply-To: <20220427112528.4097815-10-andre.przywara@arm.com>

On Wed, Apr 27, 2022 at 12:25:26PM +0100, Andre Przywara wrote:
> The Arm HDLCD is a display controller that scans out a framebuffer and
> hands a signal to a digital encoder to generate a DVI or HDMI signal.
> 
> Convert the existing DT binding to DT schema.
> 
> Signed-off-by: Andre Przywara <andre.przywara@arm.com>
> ---
>  .../devicetree/bindings/display/arm,hdlcd.txt | 79 ----------------
>  .../bindings/display/arm,hdlcd.yaml           | 91 +++++++++++++++++++
>  2 files changed, 91 insertions(+), 79 deletions(-)
>  delete mode 100644 Documentation/devicetree/bindings/display/arm,hdlcd.txt
>  create mode 100644 Documentation/devicetree/bindings/display/arm,hdlcd.yaml
> 
> diff --git a/Documentation/devicetree/bindings/display/arm,hdlcd.txt b/Documentation/devicetree/bindings/display/arm,hdlcd.txt
> deleted file mode 100644
> index 78bc24296f3e4..0000000000000
> --- a/Documentation/devicetree/bindings/display/arm,hdlcd.txt
> +++ /dev/null
> @@ -1,79 +0,0 @@
> -ARM HDLCD
> -
> -This is a display controller found on several development platforms produced
> -by ARM Ltd and in more modern of its' Fast Models. The HDLCD is an RGB
> -streamer that reads the data from a framebuffer and sends it to a single
> -digital encoder (DVI or HDMI).
> -
> -Required properties:
> -  - compatible: "arm,hdlcd"
> -  - reg: Physical base address and length of the controller's registers.
> -  - interrupts: One interrupt used by the display controller to notify the
> -    interrupt controller when any of the interrupt sources programmed in
> -    the interrupt mask register have activated.
> -  - clocks: A list of phandle + clock-specifier pairs, one for each
> -    entry in 'clock-names'.
> -  - clock-names: A list of clock names. For HDLCD it should contain:
> -      - "pxlclk" for the clock feeding the output PLL of the controller.
> -
> -Required sub-nodes:
> -  - port: The HDLCD connection to an encoder chip. The connection is modeled
> -    using the OF graph bindings specified in
> -    Documentation/devicetree/bindings/graph.txt.
> -
> -Optional properties:
> -  - memory-region: phandle to a node describing memory (see
> -    Documentation/devicetree/bindings/reserved-memory/reserved-memory.txt) to be
> -    used for the framebuffer; if not present, the framebuffer may be located
> -    anywhere in memory.
> -
> -
> -Example:
> -
> -/ {
> -	...
> -
> -	hdlcd@2b000000 {
> -		compatible = "arm,hdlcd";
> -		reg = <0 0x2b000000 0 0x1000>;
> -		interrupts = <GIC_SPI 85 IRQ_TYPE_LEVEL_HIGH>;
> -		clocks = <&oscclk5>;
> -		clock-names = "pxlclk";
> -		port {
> -			hdlcd_output: endpoint@0 {
> -				remote-endpoint = <&hdmi_enc_input>;
> -			};
> -		};
> -	};
> -
> -	/* HDMI encoder on I2C bus */
> -	i2c@7ffa0000 {
> -		....
> -		hdmi-transmitter@70 {
> -			compatible = ".....";
> -			reg = <0x70>;
> -			port@0 {
> -				hdmi_enc_input: endpoint {
> -					remote-endpoint = <&hdlcd_output>;
> -				};
> -
> -				hdmi_enc_output: endpoint {
> -					remote-endpoint = <&hdmi_1_port>;
> -				};
> -			};
> -		};
> -
> -	};
> -
> -	hdmi1: connector@1 {
> -		compatible = "hdmi-connector";
> -		type = "a";
> -		port {
> -			hdmi_1_port: endpoint {
> -				remote-endpoint = <&hdmi_enc_output>;
> -			};
> -		};
> -	};
> -
> -	...
> -};
> diff --git a/Documentation/devicetree/bindings/display/arm,hdlcd.yaml b/Documentation/devicetree/bindings/display/arm,hdlcd.yaml
> new file mode 100644
> index 0000000000000..1fe8e07334152
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/display/arm,hdlcd.yaml
> @@ -0,0 +1,91 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/display/arm,hdlcd.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Arm HDLCD display controller binding
> +
> +maintainers:
> +  - Liviu Dudau <Liviu.Dudau@arm.com>
> +  - Andre Przywara <andre.przywara@arm.com>
> +
> +description: |+
> +  The Arm HDLCD is a display controller found on several development platforms
> +  produced by ARM Ltd and in more modern of its Fast Models. The HDLCD is an
> +  RGB streamer that reads the data from a framebuffer and sends it to a single
> +  digital encoder (DVI or HDMI).
> +
> +properties:
> +  compatible:
> +    const: arm,hdlcd
> +
> +  reg:
> +    maxItems: 1
> +
> +  interrupts:
> +    maxItems: 1
> +
> +  clock-names:
> +    const: pxlclk
> +
> +  clocks:
> +    maxItems: 1
> +    description: The input reference for the pixel clock.
> +
> +  memory-region:
> +    maxItems: 1
> +    description:
> +      Phandle to a node describing memory to be used for the framebuffer.
> +      If not present, the framebuffer may be located anywhere in memory.
> +
> +  iommus:
> +    maxItems: 1
> +
> +  port:
> +    $ref: /schemas/graph.yaml#/$defs/port-base

If no custom properties in port or endpoint:

$ref: /schemas/graph.yaml#/properties/port

> +    unevaluatedProperties: false
> +    description:
> +      Output endpoint of the controller, connecting the LCD panel signals.
> +
> +additionalProperties: false
> +
> +required:
> +  - compatible
> +  - reg
> +  - interrupts
> +  - clocks
> +  - port
> +
> +examples:
> +  - |
> +    hdlcd@2b000000 {
> +            compatible = "arm,hdlcd";
> +            reg = <0x2b000000 0x1000>;
> +            interrupts = <0 85 4>;
> +            clocks = <&oscclk5>;
> +            clock-names = "pxlclk";
> +            port {
> +                    hdlcd_output: endpoint {
> +                            remote-endpoint = <&hdmi_enc_input>;
> +                    };
> +            };
> +    };
> +
> +    /* HDMI encoder on I2C bus */
> +    i2c {
> +            #address-cells = <1>;
> +            #size-cells = <0>;
> +            hdmi-transmitter@70 {
> +                    compatible = "nxp,tda998x";
> +                    reg = <0x70>;
> +                    port {
> +                            hdmi_enc_input: endpoint {
> +                                    remote-endpoint = <&hdlcd_output>;
> +                            };
> +                    };
> +            };
> +
> +    };
> +
> +...
> -- 
> 2.25.1
> 
> 

  reply	other threads:[~2022-04-27 19:41 UTC|newest]

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-04-27 11:25 [PATCH 00/11] dt-bindings: convert various Arm Ltd. IP to DT schema Andre Przywara
2022-04-27 11:25 ` [PATCH 01/11] dt-bindings: iommu: arm,smmu-v3: make PRI IRQ optional Andre Przywara
2022-04-27 12:04   ` Robin Murphy
2022-04-28  6:56   ` Krzysztof Kozlowski
2022-04-28  9:23     ` Robin Murphy
2022-04-28  9:25       ` Krzysztof Kozlowski
2022-05-06 15:19     ` Andre Przywara
2022-04-27 11:25 ` [PATCH 02/11] dt-bindings: arm: spe-pmu: convert to DT schema Andre Przywara
2022-04-28  6:57   ` Krzysztof Kozlowski
2022-04-27 11:25 ` [PATCH 03/11] dt-bindings: arm: sp810: " Andre Przywara
2022-04-28  7:01   ` Krzysztof Kozlowski
2022-04-27 11:25 ` [PATCH 04/11] dt-bindings: sound: add Arm PL041 AACI " Andre Przywara
2022-04-27 11:41   ` Mark Brown
2022-04-27 13:33     ` Andre Przywara
2022-04-27 13:39       ` Mark Brown
2022-04-27 13:32   ` Mark Brown
2022-04-27 13:52     ` Andre Przywara
2022-04-27 14:11       ` Mark Brown
2022-04-28  7:06   ` Krzysztof Kozlowski
2022-04-27 11:25 ` [PATCH 05/11] dt-bindings: serio: add Arm PL050 " Andre Przywara
2022-04-28  7:07   ` Krzysztof Kozlowski
2022-04-28 17:27     ` Andre Przywara
2022-04-29  6:29       ` Krzysztof Kozlowski
2022-04-29  6:35         ` Krzysztof Kozlowski
2022-04-29 10:06           ` Andre Przywara
2022-04-27 11:25 ` [PATCH 06/11] dt-bindings: arm: convert vexpress-sysregs to " Andre Przywara
2022-04-27 19:33   ` Rob Herring
2022-04-27 11:25 ` [PATCH 07/11] dt-bindings: arm: convert vexpress-config " Andre Przywara
2022-04-27 19:37   ` Rob Herring
2022-04-27 11:25 ` [PATCH 08/11] dt-bindings: display: convert PL110/PL111 " Andre Przywara
2022-04-27 11:25 ` [PATCH 09/11] dt-bindings: display: convert Arm HDLCD " Andre Przywara
2022-04-27 19:39   ` Rob Herring [this message]
2022-04-27 11:25 ` [PATCH 10/11] dt-bindings: display: convert Arm Mali-DP " Andre Przywara
2022-04-27 19:39   ` Rob Herring
2022-04-27 11:25 ` [PATCH 11/11] dt-bindings: display: convert Arm Komeda " Andre Przywara
2022-04-27 19:29 ` [PATCH 00/11] dt-bindings: convert various Arm Ltd. IP " Rob Herring

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=Ymmb1p6rAIDtpc/X@robh.at.kernel.org \
    --to=robh@kernel.org \
    --cc=airlied@linux.ie \
    --cc=andre.przywara@arm.com \
    --cc=daniel@ffwll.ch \
    --cc=devicetree@vger.kernel.org \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=krzysztof.kozlowski+dt@linaro.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=liviu.dudau@arm.com \
    --cc=robin.murphy@arm.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).