summaryrefslogtreecommitdiffstats
path: root/dts/Bindings/display/bridge/ti,tfp410.yaml
blob: 605831c1e8366eb045b04460cfeaaa4ecec04b87 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
# SPDX-License-Identifier: GPL-2.0-only
%YAML 1.2
---
$id: http://devicetree.org/schemas/display/bridge/ti,tfp410.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: TFP410 DPI to DVI encoder

maintainers:
  - Tomi Valkeinen <tomi.valkeinen@ti.com>
  - Jyri Sarha <jsarha@ti.com>

properties:
  compatible:
    const: ti,tfp410

  reg:
    description: I2C address of the device.
    maxItems: 1

  powerdown-gpios:
    maxItems: 1

  ti,deskew:
    description:
      Data de-skew value in 350ps increments, from 0 to 7, as configured
      through the DK[3:1] pins. The de-skew multiplier is computed as
      (DK[3:1] - 4), so it ranges from -4 to 3.
    $ref: /schemas/types.yaml#/definitions/uint32
    minimum: 0
    maximum: 7

  ports:
    description:
      A node containing input and output port nodes with endpoint
      definitions as documented in
      Documentation/devicetree/bindings/media/video-interfaces.txt
    type: object

    properties:
      port@0:
        description: DPI input port.
        type: object

        properties:
          reg:
            const: 0

          endpoint:
            type: object

            properties:
              pclk-sample:
                description:
                  Endpoint sampling edge.
                enum:
                  - 0  # Falling edge
                  - 1  # Rising edge
                default: 0

              bus-width:
                description:
                  Endpoint bus width.
                enum:
                  - 12  # 12 data lines connected and dual-edge mode
                  - 24  # 24 data lines connected and single-edge mode
                default: 24

      port@1:
        description: DVI output port.
        type: object

        properties:
          reg:
            const: 1

          endpoint:
            type: object

    required:
      - port@0
      - port@1

required:
  - compatible
  - ports

if:
  required:
    - reg
then:
  properties:
    ti,deskew: false
else:
  required:
    - ti,deskew

additionalProperties: false

examples:
  - |
    #include <dt-bindings/gpio/gpio.h>

    tfp410: encoder {
        compatible = "ti,tfp410";
        powerdown-gpios = <&twl_gpio 2 GPIO_ACTIVE_LOW>;
        ti,deskew = <3>;

        ports {
            #address-cells = <1>;
            #size-cells = <0>;

            port@0 {
                reg = <0>;
                tfp410_in: endpoint {
                    pclk-sample = <1>;
                    bus-width = <24>;
                    remote-endpoint = <&dpi_out>;
                };
            };

            port@1 {
                reg = <1>;
                tfp410_out: endpoint {
                    remote-endpoint = <&dvi_connector_in>;
                };
            };
        };
    };

...