hc
2024-05-10 10ebd8556b7990499c896a550e3d416b444211e6
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>;
                };
            };
        };
    };
 
...