[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <59bf8b02-71f5-45e0-aa2d-d80b6cfe9c55@ixit.cz>
Date: Wed, 15 Oct 2025 23:13:43 +0200
From: David Heidelberg <david@...t.cz>
To: Frank Li <Frank.Li@....com>, Mauro Carvalho Chehab <mchehab@...nel.org>,
Rob Herring <robh@...nel.org>, Krzysztof Kozlowski <krzk+dt@...nel.org>,
Conor Dooley <conor+dt@...nel.org>, Hans Verkuil <hverkuil@...nel.org>,
Laurent Pinchart <laurent.pinchart@...asonboard.com>,
Sakari Ailus <sakari.ailus@...ux.intel.com>,
"open list:MEDIA INPUT INFRASTRUCTURE (V4L/DVB)"
<linux-media@...r.kernel.org>,
"open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS"
<devicetree@...r.kernel.org>, open list <linux-kernel@...r.kernel.org>
Cc: imx@...ts.linux.dev
Subject: Re: [PATCH 1/1] dt-bindings: media: Convert ti,tvp5150.txt to yaml
format.
LGTM
Reviewed-by: David Heidelberg <david@...t.cz>
On 14/10/2025 20:55, Frank Li wrote:
> Convert ti,tvp5150.txt to yaml format.
>
> Signed-off-by: Frank Li <Frank.Li@....com>
> ---
> .../bindings/media/i2c/ti,tvp5150.txt | 157 ------------------
> .../bindings/media/i2c/ti,tvp5150.yaml | 133 +++++++++++++++
> 2 files changed, 133 insertions(+), 157 deletions(-)
> delete mode 100644 Documentation/devicetree/bindings/media/i2c/ti,tvp5150.txt
> create mode 100644 Documentation/devicetree/bindings/media/i2c/ti,tvp5150.yaml
>
> diff --git a/Documentation/devicetree/bindings/media/i2c/ti,tvp5150.txt b/Documentation/devicetree/bindings/media/i2c/ti,tvp5150.txt
> deleted file mode 100644
> index 94b908ace53c8..0000000000000
> --- a/Documentation/devicetree/bindings/media/i2c/ti,tvp5150.txt
> +++ /dev/null
> @@ -1,157 +0,0 @@
> -* Texas Instruments TVP5150 and TVP5151 video decoders
> -
> -The TVP5150 and TVP5151 are video decoders that convert baseband NTSC and PAL
> -(and also SECAM in the TVP5151 case) video signals to either 8-bit 4:2:2 YUV
> -with discrete syncs or 8-bit ITU-R BT.656 with embedded syncs output formats.
> -
> -Required Properties:
> -====================
> -- compatible: Value must be "ti,tvp5150".
> -- reg: I2C slave address.
> -
> -Optional Properties:
> -====================
> -- pdn-gpios: Phandle for the GPIO connected to the PDN pin, if any.
> -- reset-gpios: Phandle for the GPIO connected to the RESETB pin, if any.
> -
> -The device node must contain one 'port' child node per device physical input
> -and output port, in accordance with the video interface bindings defined in
> -Documentation/devicetree/bindings/media/video-interfaces.txt. The port nodes
> -are numbered as follows
> -
> - Name Type Port
> - --------------------------------------
> - AIP1A sink 0
> - AIP1B sink 1
> - Y-OUT src 2
> -
> -The device node must contain at least one sink port and the src port. Each input
> -port must be linked to an endpoint defined in [1]. The port/connector layout is
> -as follows
> -
> -tvp-5150 port@0 (AIP1A)
> - endpoint@0 -----------> Comp0-Con port
> - endpoint@1 ------+----> Svideo-Con port
> -tvp-5150 port@1 (AIP1B) |
> - endpoint@1 ------+
> - endpoint@0 -----------> Comp1-Con port
> -tvp-5150 port@2
> - endpoint (video bitstream output at YOUT[0-7] parallel bus)
> -
> -Required Endpoint Properties for parallel synchronization on output port:
> -=========================================================================
> -
> -- hsync-active: Active state of the HSYNC signal. Must be <1> (HIGH).
> -- vsync-active: Active state of the VSYNC signal. Must be <1> (HIGH).
> -- field-even-active: Field signal level during the even field data
> - transmission. Must be <0>.
> -
> -Note: Do not specify any of these properties if you want to use the embedded
> - BT.656 synchronization.
> -
> -Optional Connector Properties:
> -==============================
> -
> -- sdtv-standards: Set the possible signals to which the hardware tries to lock
> - instead of using the autodetection mechanism. Please look at
> - [1] for more information.
> -
> -[1] Documentation/devicetree/bindings/display/connector/analog-tv-connector.yaml.
> -
> -Example - three input sources:
> -#include <dt-bindings/display/sdtv-standards.h>
> -
> -comp_connector_0 {
> - compatible = "composite-video-connector";
> - label = "Composite0";
> - sdtv-standards = <SDTV_STD_PAL_M>; /* limit to pal-m signals */
> -
> - port {
> - composite0_to_tvp5150: endpoint {
> - remote-endpoint = <&tvp5150_to_composite0>;
> - };
> - };
> -};
> -
> -comp_connector_1 {
> - compatible = "composite-video-connector";
> - label = "Composite1";
> - sdtv-standards = <SDTV_STD_NTSC_M>; /* limit to ntsc-m signals */
> -
> - port {
> - composite1_to_tvp5150: endpoint {
> - remote-endpoint = <&tvp5150_to_composite1>;
> - };
> - };
> -};
> -
> -svideo_connector {
> - compatible = "svideo-connector";
> - label = "S-Video";
> -
> - port {
> - #address-cells = <1>;
> - #size-cells = <0>;
> -
> - svideo_luma_to_tvp5150: endpoint@0 {
> - reg = <0>;
> - remote-endpoint = <&tvp5150_to_svideo_luma>;
> - };
> -
> - svideo_chroma_to_tvp5150: endpoint@1 {
> - reg = <1>;
> - remote-endpoint = <&tvp5150_to_svideo_chroma>;
> - };
> - };
> -};
> -
> -&i2c2 {
> - tvp5150@5c {
> - compatible = "ti,tvp5150";
> - reg = <0x5c>;
> - pdn-gpios = <&gpio4 30 GPIO_ACTIVE_LOW>;
> - reset-gpios = <&gpio6 7 GPIO_ACTIVE_LOW>;
> - #address-cells = <1>;
> - #size-cells = <0>;
> -
> - port@0 {
> - #address-cells = <1>;
> - #size-cells = <0>;
> - reg = <0>;
> -
> - tvp5150_to_composite0: endpoint@0 {
> - reg = <0>;
> - remote-endpoint = <&composite0_to_tvp5150>;
> - };
> -
> - tvp5150_to_svideo_luma: endpoint@1 {
> - reg = <1>;
> - remote-endpoint = <&svideo_luma_to_tvp5150>;
> - };
> - };
> -
> - port@1 {
> - #address-cells = <1>;
> - #size-cells = <0>;
> - reg = <1>;
> -
> - tvp5150_to_composite1: endpoint@0 {
> - reg = <0>;
> - remote-endpoint = <&composite1_to_tvp5150>;
> - };
> -
> - tvp5150_to_svideo_chroma: endpoint@1 {
> - reg = <1>;
> - remote-endpoint = <&svideo_chroma_to_tvp5150>;
> - };
> - };
> -
> - port@2 {
> - reg = <2>;
> -
> - tvp5150_1: endpoint {
> - remote-endpoint = <&ccdc_ep>;
> - };
> - };
> - };
> -};
> diff --git a/Documentation/devicetree/bindings/media/i2c/ti,tvp5150.yaml b/Documentation/devicetree/bindings/media/i2c/ti,tvp5150.yaml
> new file mode 100644
> index 0000000000000..4869ba7ca0763
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/media/i2c/ti,tvp5150.yaml
> @@ -0,0 +1,133 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/media/i2c/ti,tvp5150.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Texas Instruments TVP5150 and TVP5151 video decoders
> +
> +maintainers:
> + - Frank Li <Frank.Li@....com>
> +
> +description:
> + The TVP5150 and TVP5151 are video decoders that convert baseband NTSC and PAL
> + (and also SECAM in the TVP5151 case) video signals to either 8-bit 4:2:2 YUV
> + with discrete syncs or 8-bit ITU-R BT.656 with embedded syncs output formats.
> +
> +properties:
> + compatible:
> + const: ti,tvp5150
> +
> + reg:
> + maxItems: 1
> +
> + pdn-gpios:
> + maxItems: 1
> +
> + reset-gpios:
> + maxItems: 1
> +
> + '#address-cells':
> + const: 1
> +
> + '#size-cells':
> + const: 0
> +
> + port@0:
> + $ref: /schemas/graph.yaml#/$defs/port-base
> + unevaluatedProperties: false
> + description:
> + sink port node, AIP1A
> +
> + properties:
> + endpoint:
> + $ref: /schemas/media/video-interfaces.yaml#
> + unevaluatedProperties: false
> +
> + port@1:
> + $ref: /schemas/graph.yaml#/$defs/port-base
> + unevaluatedProperties: false
> + description:
> + sink port node, AIP1B
> +
> + properties:
> + endpoint:
> + $ref: /schemas/media/video-interfaces.yaml#
> + unevaluatedProperties: false
> +
> + port@2:
> + $ref: /schemas/graph.yaml#/$defs/port-base
> + unevaluatedProperties: false
> + description:
> + source port node, Y-OUT
> +
> + properties:
> + endpoint:
> + $ref: /schemas/media/video-interfaces.yaml#
> + unevaluatedProperties: false
> +
> +required:
> + - compatible
> + - reg
> + - port@2
> +
> +additionalProperties: false
> +
> +examples:
> + - |
> + #include <dt-bindings/display/sdtv-standards.h>
> + #include <dt-bindings/gpio/gpio.h>
> +
> + i2c {
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + bridge@5c {
> + compatible = "ti,tvp5150";
> + reg = <0x5c>;
> + pdn-gpios = <&gpio4 30 GPIO_ACTIVE_LOW>;
> + reset-gpios = <&gpio6 7 GPIO_ACTIVE_LOW>;
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + port@0 {
> + #address-cells = <1>;
> + #size-cells = <0>;
> + reg = <0>;
> +
> + endpoint@0 {
> + reg = <0>;
> + remote-endpoint = <&composite0_to_tvp5150>;
> + };
> +
> + endpoint@1 {
> + reg = <1>;
> + remote-endpoint = <&svideo_luma_to_tvp5150>;
> + };
> + };
> +
> + port@1 {
> + #address-cells = <1>;
> + #size-cells = <0>;
> + reg = <1>;
> +
> + endpoint@0 {
> + reg = <0>;
> + remote-endpoint = <&composite1_to_tvp5150>;
> + };
> +
> + endpoint@1 {
> + reg = <1>;
> + remote-endpoint = <&svideo_chroma_to_tvp5150>;
> + };
> + };
> +
> + port@2 {
> + reg = <2>;
> +
> + endpoint {
> + remote-endpoint = <&ccdc_ep>;
> + };
> + };
> + };
> + };
--
David Heidelberg
Powered by blists - more mailing lists