xref: /linux/Documentation/devicetree/bindings/display/bridge/nxp,tda998x.yaml (revision db4a3f0fbedb0398f77b9047e8b8bb2b49f355bb)
1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/display/bridge/nxp,tda998x.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: NXP TDA998x HDMI transmitter
8
9maintainers:
10  - Russell King <linux@armlinux.org.uk>
11
12properties:
13  compatible:
14    const: nxp,tda998x
15
16  reg:
17    maxItems: 1
18
19  interrupts:
20    maxItems: 1
21
22  video-ports:
23    $ref: /schemas/types.yaml#/definitions/uint32
24    default: 0x230145
25    maximum: 0xffffff
26    description:
27      24 bits value which defines how the video controller output is wired to
28      the TDA998x input.
29
30  audio-ports:
31    description:
32      Array of 2 values per DAI (Documentation/sound/soc/dai.rst).
33      The implementation allows one or two DAIs.
34      If two DAIs are defined, they must be of different type.
35    $ref: /schemas/types.yaml#/definitions/uint32-matrix
36    minItems: 1
37    maxItems: 2
38    items:
39      items:
40        - description: |
41            The first value defines the DAI type: TDA998x_SPDIF or TDA998x_I2S
42            (see include/dt-bindings/display/tda998x.h).
43          enum: [ 1, 2 ]
44        - description:
45            The second value defines the tda998x AP_ENA reg content when the
46            DAI in question is used.
47          maximum: 0xff
48
49  '#sound-dai-cells':
50    enum: [ 0, 1 ]
51
52  nxp,calib-gpios:
53    maxItems: 1
54    description:
55      Calibration GPIO, which must correspond with the gpio used for the
56      TDA998x interrupt pin.
57
58  port:
59    $ref: /schemas/graph.yaml#/properties/port
60    description: Parallel input port
61
62  ports:
63    $ref: /schemas/graph.yaml#/properties/ports
64
65    properties:
66      port@0:
67        type: object
68        description: Parallel input port
69
70      port@1:
71        type: object
72        description: HDMI output port
73
74required:
75  - compatible
76  - reg
77
78oneOf:
79  - required:
80      - port
81  - required:
82      - ports
83
84allOf:
85  - $ref: /schemas/sound/dai-common.yaml#
86
87unevaluatedProperties: false
88
89examples:
90  - |
91    #include <dt-bindings/display/tda998x.h>
92    #include <dt-bindings/interrupt-controller/irq.h>
93
94    i2c {
95        #address-cells = <1>;
96        #size-cells = <0>;
97
98        tda998x: hdmi-encoder@70 {
99            compatible = "nxp,tda998x";
100            reg = <0x70>;
101            interrupt-parent = <&gpio0>;
102            interrupts = <27 IRQ_TYPE_EDGE_FALLING>;
103            video-ports = <0x230145>;
104
105            #sound-dai-cells = <1>;
106                         /* DAI-format / AP_ENA reg value */
107            audio-ports = <TDA998x_SPDIF 0x04>,
108                          <TDA998x_I2S 0x03>;
109
110            port {
111                tda998x_in: endpoint {
112                    remote-endpoint = <&lcdc_0>;
113                };
114            };
115        };
116    };
117