18a72a2deSVinod Koul# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
28a72a2deSVinod Koul%YAML 1.2
38a72a2deSVinod Koul---
48a72a2deSVinod Koul$id: http://devicetree.org/schemas/display/bridge/lontium,lt9611.yaml#
58a72a2deSVinod Koul$schema: http://devicetree.org/meta-schemas/core.yaml#
68a72a2deSVinod Koul
7*25d7361fSDmitry Baryshkovtitle: Lontium LT9611(UXC) 2 Port MIPI to HDMI Bridge
88a72a2deSVinod Koul
98a72a2deSVinod Koulmaintainers:
108a72a2deSVinod Koul  - Vinod Koul <vkoul@kernel.org>
118a72a2deSVinod Koul
128a72a2deSVinod Kouldescription: |
13*25d7361fSDmitry Baryshkov  The LT9611 and LT9611UXC are bridge devices which convert DSI to HDMI
148a72a2deSVinod Koul
158a72a2deSVinod Koulproperties:
168a72a2deSVinod Koul  compatible:
178a72a2deSVinod Koul    enum:
188a72a2deSVinod Koul      - lontium,lt9611
19*25d7361fSDmitry Baryshkov      - lontium,lt9611uxc
208a72a2deSVinod Koul
218a72a2deSVinod Koul  reg:
228a72a2deSVinod Koul    maxItems: 1
238a72a2deSVinod Koul
248a72a2deSVinod Koul  "#sound-dai-cells":
258a72a2deSVinod Koul    const: 1
268a72a2deSVinod Koul
278a72a2deSVinod Koul  interrupts:
288a72a2deSVinod Koul    maxItems: 1
298a72a2deSVinod Koul
308a72a2deSVinod Koul  reset-gpios:
318a72a2deSVinod Koul    maxItems: 1
328a72a2deSVinod Koul    description: GPIO connected to active high RESET pin.
338a72a2deSVinod Koul
348a72a2deSVinod Koul  vdd-supply:
358a72a2deSVinod Koul    description: Regulator for 1.8V MIPI phy power.
368a72a2deSVinod Koul
378a72a2deSVinod Koul  vcc-supply:
388a72a2deSVinod Koul    description: Regulator for 3.3V IO power.
398a72a2deSVinod Koul
408a72a2deSVinod Koul  ports:
418a72a2deSVinod Koul    type: object
428a72a2deSVinod Koul
438a72a2deSVinod Koul    properties:
448a72a2deSVinod Koul      "#address-cells":
458a72a2deSVinod Koul        const: 1
468a72a2deSVinod Koul
478a72a2deSVinod Koul      "#size-cells":
488a72a2deSVinod Koul        const: 0
498a72a2deSVinod Koul
508a72a2deSVinod Koul      port@0:
518a72a2deSVinod Koul        type: object
528a72a2deSVinod Koul        description: |
538a72a2deSVinod Koul          Primary MIPI port-1 for MIPI input
548a72a2deSVinod Koul
558a72a2deSVinod Koul        properties:
568a72a2deSVinod Koul          reg:
578a72a2deSVinod Koul            const: 0
588a72a2deSVinod Koul
598a72a2deSVinod Koul        patternProperties:
608a72a2deSVinod Koul          "^endpoint(@[0-9])$":
618a72a2deSVinod Koul            type: object
628a72a2deSVinod Koul            additionalProperties: false
638a72a2deSVinod Koul
648a72a2deSVinod Koul            properties:
658a72a2deSVinod Koul              remote-endpoint:
668a72a2deSVinod Koul                $ref: /schemas/types.yaml#/definitions/phandle
678a72a2deSVinod Koul
688a72a2deSVinod Koul        required:
698a72a2deSVinod Koul          - reg
708a72a2deSVinod Koul
718a72a2deSVinod Koul      port@1:
728a72a2deSVinod Koul        type: object
738a72a2deSVinod Koul        description: |
748a72a2deSVinod Koul          Additional MIPI port-2 for MIPI input, used in combination
758a72a2deSVinod Koul          with primary MIPI port-1 to drive higher resolution displays
768a72a2deSVinod Koul
778a72a2deSVinod Koul        properties:
788a72a2deSVinod Koul          reg:
798a72a2deSVinod Koul            const: 1
808a72a2deSVinod Koul
818a72a2deSVinod Koul        patternProperties:
828a72a2deSVinod Koul          "^endpoint(@[0-9])$":
838a72a2deSVinod Koul            type: object
848a72a2deSVinod Koul            additionalProperties: false
858a72a2deSVinod Koul
868a72a2deSVinod Koul            properties:
878a72a2deSVinod Koul              remote-endpoint:
888a72a2deSVinod Koul                $ref: /schemas/types.yaml#/definitions/phandle
898a72a2deSVinod Koul
908a72a2deSVinod Koul        required:
918a72a2deSVinod Koul          - reg
928a72a2deSVinod Koul
938a72a2deSVinod Koul      port@2:
948a72a2deSVinod Koul        type: object
958a72a2deSVinod Koul        description: |
968a72a2deSVinod Koul          HDMI port for HDMI output
978a72a2deSVinod Koul
988a72a2deSVinod Koul        properties:
998a72a2deSVinod Koul          reg:
1008a72a2deSVinod Koul            const: 2
1018a72a2deSVinod Koul
1028a72a2deSVinod Koul        patternProperties:
1038a72a2deSVinod Koul          "^endpoint(@[0-9])$":
1048a72a2deSVinod Koul            type: object
1058a72a2deSVinod Koul            additionalProperties: false
1068a72a2deSVinod Koul
1078a72a2deSVinod Koul            properties:
1088a72a2deSVinod Koul              remote-endpoint:
1098a72a2deSVinod Koul                $ref: /schemas/types.yaml#/definitions/phandle
1108a72a2deSVinod Koul
1118a72a2deSVinod Koul        required:
1128a72a2deSVinod Koul          - reg
1138a72a2deSVinod Koul
1148a72a2deSVinod Koul    required:
1158a72a2deSVinod Koul      - "#address-cells"
1168a72a2deSVinod Koul      - "#size-cells"
1178a72a2deSVinod Koul      - port@0
1188a72a2deSVinod Koul      - port@2
1198a72a2deSVinod Koul
1208a72a2deSVinod Koulrequired:
1218a72a2deSVinod Koul  - compatible
1228a72a2deSVinod Koul  - reg
1238a72a2deSVinod Koul  - interrupts
1248a72a2deSVinod Koul  - vdd-supply
1258a72a2deSVinod Koul  - vcc-supply
1268a72a2deSVinod Koul  - ports
1278a72a2deSVinod Koul
1288a72a2deSVinod KouladditionalProperties: false
1298a72a2deSVinod Koul
1308a72a2deSVinod Koulexamples:
1318a72a2deSVinod Koul  - |
1328a72a2deSVinod Koul    #include <dt-bindings/gpio/gpio.h>
1338a72a2deSVinod Koul    #include <dt-bindings/interrupt-controller/irq.h>
1348a72a2deSVinod Koul
1358a72a2deSVinod Koul    i2c10 {
1368a72a2deSVinod Koul      #address-cells = <1>;
1378a72a2deSVinod Koul      #size-cells = <0>;
1388a72a2deSVinod Koul
1398a72a2deSVinod Koul      hdmi-bridge@3b {
1408a72a2deSVinod Koul        compatible = "lontium,lt9611";
1418a72a2deSVinod Koul        reg = <0x3b>;
1428a72a2deSVinod Koul
1438a72a2deSVinod Koul        reset-gpios = <&tlmm 128 GPIO_ACTIVE_HIGH>;
1448a72a2deSVinod Koul        interrupts-extended = <&tlmm 84 IRQ_TYPE_EDGE_FALLING>;
1458a72a2deSVinod Koul
1468a72a2deSVinod Koul        vdd-supply = <&lt9611_1v8>;
1478a72a2deSVinod Koul        vcc-supply = <&lt9611_3v3>;
1488a72a2deSVinod Koul
1498a72a2deSVinod Koul        ports {
1508a72a2deSVinod Koul          #address-cells = <1>;
1518a72a2deSVinod Koul          #size-cells = <0>;
1528a72a2deSVinod Koul
1538a72a2deSVinod Koul          port@0 {
1548a72a2deSVinod Koul            reg = <0>;
1558a72a2deSVinod Koul            lt9611_a: endpoint {
1568a72a2deSVinod Koul              remote-endpoint = <&dsi0_out>;
1578a72a2deSVinod Koul            };
1588a72a2deSVinod Koul          };
1598a72a2deSVinod Koul
1608a72a2deSVinod Koul          port@1 {
1618a72a2deSVinod Koul            reg = <1>;
1628a72a2deSVinod Koul            lt9611_b: endpoint {
1638a72a2deSVinod Koul              remote-endpoint = <&dsi1_out>;
1648a72a2deSVinod Koul            };
1658a72a2deSVinod Koul          };
1668a72a2deSVinod Koul
1678a72a2deSVinod Koul          port@2 {
1688a72a2deSVinod Koul            reg = <2>;
1698a72a2deSVinod Koul            lt9611_out: endpoint {
1708a72a2deSVinod Koul              remote-endpoint = <&hdmi_con>;
1718a72a2deSVinod Koul            };
1728a72a2deSVinod Koul          };
1738a72a2deSVinod Koul        };
1748a72a2deSVinod Koul      };
1758a72a2deSVinod Koul    };
1768a72a2deSVinod Koul
1778a72a2deSVinod Koul...
178