xref: /freebsd/sys/contrib/device-tree/Bindings/media/i2c/techwell,tw9900.yaml (revision 01950c46b8155250f64374fb72fc11faa44bf099)
18d13bc63SEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
28d13bc63SEmmanuel Vadot%YAML 1.2
38d13bc63SEmmanuel Vadot---
48d13bc63SEmmanuel Vadot$id: http://devicetree.org/schemas/media/i2c/techwell,tw9900.yaml#
58d13bc63SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
68d13bc63SEmmanuel Vadot
78d13bc63SEmmanuel Vadottitle: Techwell TW9900 NTSC/PAL video decoder
88d13bc63SEmmanuel Vadot
98d13bc63SEmmanuel Vadotmaintainers:
108d13bc63SEmmanuel Vadot  - Mehdi Djait <mehdi.djait@bootlin.com>
118d13bc63SEmmanuel Vadot
128d13bc63SEmmanuel Vadotdescription:
138d13bc63SEmmanuel Vadot  The tw9900 is a multi-standard video decoder, supporting NTSC, PAL standards
148d13bc63SEmmanuel Vadot  with auto-detection features.
158d13bc63SEmmanuel Vadot
168d13bc63SEmmanuel Vadotproperties:
178d13bc63SEmmanuel Vadot  compatible:
188d13bc63SEmmanuel Vadot    const: techwell,tw9900
198d13bc63SEmmanuel Vadot
208d13bc63SEmmanuel Vadot  reg:
218d13bc63SEmmanuel Vadot    maxItems: 1
228d13bc63SEmmanuel Vadot
238d13bc63SEmmanuel Vadot  vdd-supply:
248d13bc63SEmmanuel Vadot    description: VDD power supply
258d13bc63SEmmanuel Vadot
268d13bc63SEmmanuel Vadot  reset-gpios:
278d13bc63SEmmanuel Vadot    description: GPIO descriptor for the RESET input pin
288d13bc63SEmmanuel Vadot    maxItems: 1
298d13bc63SEmmanuel Vadot
308d13bc63SEmmanuel Vadot  powerdown-gpios:
318d13bc63SEmmanuel Vadot    description: GPIO descriptor for the POWERDOWN input pin
328d13bc63SEmmanuel Vadot    maxItems: 1
338d13bc63SEmmanuel Vadot
348d13bc63SEmmanuel Vadot  ports:
358d13bc63SEmmanuel Vadot    $ref: /schemas/graph.yaml#/properties/ports
368d13bc63SEmmanuel Vadot
378d13bc63SEmmanuel Vadot    properties:
388d13bc63SEmmanuel Vadot      port@0:
39*01950c46SEmmanuel Vadot        $ref: /schemas/graph.yaml#/properties/port
408d13bc63SEmmanuel Vadot        description: Analog input port
418d13bc63SEmmanuel Vadot
428d13bc63SEmmanuel Vadot        properties:
438d13bc63SEmmanuel Vadot          endpoint@0:
448d13bc63SEmmanuel Vadot            $ref: /schemas/graph.yaml#/properties/endpoint
458d13bc63SEmmanuel Vadot            description: CVBS over MUX0
468d13bc63SEmmanuel Vadot
478d13bc63SEmmanuel Vadot          endpoint@1:
488d13bc63SEmmanuel Vadot            $ref: /schemas/graph.yaml#/properties/endpoint
498d13bc63SEmmanuel Vadot            description: CVBS over MUX1
508d13bc63SEmmanuel Vadot
518d13bc63SEmmanuel Vadot          endpoint@2:
528d13bc63SEmmanuel Vadot            $ref: /schemas/graph.yaml#/properties/endpoint
538d13bc63SEmmanuel Vadot            description: Chroma over CIN0 and Y over MUX0
548d13bc63SEmmanuel Vadot
558d13bc63SEmmanuel Vadot          endpoint@3:
568d13bc63SEmmanuel Vadot            $ref: /schemas/graph.yaml#/properties/endpoint
578d13bc63SEmmanuel Vadot            description: Chroma over CIN0 and Y over MUX1
588d13bc63SEmmanuel Vadot
598d13bc63SEmmanuel Vadot        oneOf:
608d13bc63SEmmanuel Vadot          - required:
618d13bc63SEmmanuel Vadot              - endpoint@0
628d13bc63SEmmanuel Vadot          - required:
638d13bc63SEmmanuel Vadot              - endpoint@1
648d13bc63SEmmanuel Vadot          - required:
658d13bc63SEmmanuel Vadot              - endpoint@2
668d13bc63SEmmanuel Vadot          - required:
678d13bc63SEmmanuel Vadot              - endpoint@3
688d13bc63SEmmanuel Vadot
698d13bc63SEmmanuel Vadot      port@1:
708d13bc63SEmmanuel Vadot        $ref: /schemas/graph.yaml#/properties/port
718d13bc63SEmmanuel Vadot        description: Video port for the decoder output.
728d13bc63SEmmanuel Vadot
738d13bc63SEmmanuel Vadot
748d13bc63SEmmanuel Vadot    required:
758d13bc63SEmmanuel Vadot      - port@0
768d13bc63SEmmanuel Vadot      - port@1
778d13bc63SEmmanuel Vadot
788d13bc63SEmmanuel Vadotrequired:
798d13bc63SEmmanuel Vadot  - compatible
808d13bc63SEmmanuel Vadot  - ports
818d13bc63SEmmanuel Vadot  - reg
828d13bc63SEmmanuel Vadot  - vdd-supply
838d13bc63SEmmanuel Vadot
848d13bc63SEmmanuel VadotadditionalProperties: false
858d13bc63SEmmanuel Vadot
868d13bc63SEmmanuel Vadotexamples:
878d13bc63SEmmanuel Vadot  - |
888d13bc63SEmmanuel Vadot    #include <dt-bindings/display/sdtv-standards.h>
898d13bc63SEmmanuel Vadot    #include <dt-bindings/gpio/gpio.h>
908d13bc63SEmmanuel Vadot
918d13bc63SEmmanuel Vadot    composite_connector {
928d13bc63SEmmanuel Vadot        compatible = "composite-video-connector";
938d13bc63SEmmanuel Vadot        label = "tv";
948d13bc63SEmmanuel Vadot        sdtv-standards = <(SDTV_STD_PAL | SDTV_STD_NTSC)>;
958d13bc63SEmmanuel Vadot
968d13bc63SEmmanuel Vadot        port {
978d13bc63SEmmanuel Vadot            composite_to_tw9900: endpoint {
988d13bc63SEmmanuel Vadot                remote-endpoint = <&tw9900_to_composite>;
998d13bc63SEmmanuel Vadot            };
1008d13bc63SEmmanuel Vadot        };
1018d13bc63SEmmanuel Vadot    };
1028d13bc63SEmmanuel Vadot
1038d13bc63SEmmanuel Vadot    i2c {
1048d13bc63SEmmanuel Vadot        #address-cells = <1>;
1058d13bc63SEmmanuel Vadot        #size-cells = <0>;
1068d13bc63SEmmanuel Vadot
1078d13bc63SEmmanuel Vadot        video-decoder@44 {
1088d13bc63SEmmanuel Vadot            compatible = "techwell,tw9900";
1098d13bc63SEmmanuel Vadot            reg = <0x44>;
1108d13bc63SEmmanuel Vadot
1118d13bc63SEmmanuel Vadot            vdd-supply = <&tw9900_supply>;
1128d13bc63SEmmanuel Vadot            reset-gpios = <&gpio2 5 GPIO_ACTIVE_LOW>;
1138d13bc63SEmmanuel Vadot
1148d13bc63SEmmanuel Vadot            ports {
1158d13bc63SEmmanuel Vadot                #address-cells = <1>;
1168d13bc63SEmmanuel Vadot                #size-cells = <0>;
1178d13bc63SEmmanuel Vadot
1188d13bc63SEmmanuel Vadot                port@0 {
1198d13bc63SEmmanuel Vadot                    #address-cells = <1>;
1208d13bc63SEmmanuel Vadot                    #size-cells = <0>;
1218d13bc63SEmmanuel Vadot
1228d13bc63SEmmanuel Vadot                    reg = <0>;
1238d13bc63SEmmanuel Vadot                    tw9900_to_composite: endpoint@0 {
1248d13bc63SEmmanuel Vadot                        reg = <0>;
1258d13bc63SEmmanuel Vadot                        remote-endpoint = <&composite_to_tw9900>;
1268d13bc63SEmmanuel Vadot                    };
1278d13bc63SEmmanuel Vadot                };
1288d13bc63SEmmanuel Vadot
1298d13bc63SEmmanuel Vadot                port@1 {
1308d13bc63SEmmanuel Vadot                    reg = <1>;
1318d13bc63SEmmanuel Vadot                    endpoint {
1328d13bc63SEmmanuel Vadot                        remote-endpoint = <&cif_in>;
1338d13bc63SEmmanuel Vadot                    };
1348d13bc63SEmmanuel Vadot                };
1358d13bc63SEmmanuel Vadot            };
1368d13bc63SEmmanuel Vadot        };
1378d13bc63SEmmanuel Vadot    };
138