fsl,ldb.yaml 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132
  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/fsl,ldb.yaml#
  5. $schema: http://devicetree.org/meta-schemas/core.yaml#
  6. title: Freescale i.MX8MP DPI to LVDS bridge chip
  7. maintainers:
  8. - Marek Vasut <marex@denx.de>
  9. description: |
  10. The i.MX8MP mediamix contains two registers which are responsible
  11. for configuring the on-SoC DPI-to-LVDS serializer. This describes
  12. those registers as bridge within the DT.
  13. properties:
  14. compatible:
  15. enum:
  16. - fsl,imx6sx-ldb
  17. - fsl,imx8mp-ldb
  18. - fsl,imx93-ldb
  19. clocks:
  20. maxItems: 1
  21. clock-names:
  22. const: ldb
  23. reg:
  24. maxItems: 2
  25. reg-names:
  26. items:
  27. - const: ldb
  28. - const: lvds
  29. ports:
  30. $ref: /schemas/graph.yaml#/properties/ports
  31. properties:
  32. port@0:
  33. $ref: /schemas/graph.yaml#/properties/port
  34. description: Video port for DPI input.
  35. port@1:
  36. $ref: /schemas/graph.yaml#/properties/port
  37. description: Video port for LVDS Channel-A output (panel or bridge).
  38. port@2:
  39. $ref: /schemas/graph.yaml#/properties/port
  40. description: Video port for LVDS Channel-B output (panel or bridge).
  41. required:
  42. - port@0
  43. - port@1
  44. required:
  45. - compatible
  46. - clocks
  47. - ports
  48. - reg
  49. allOf:
  50. - if:
  51. properties:
  52. compatible:
  53. contains:
  54. enum:
  55. - fsl,imx6sx-ldb
  56. - fsl,imx93-ldb
  57. then:
  58. properties:
  59. ports:
  60. properties:
  61. port@2: false
  62. - if:
  63. not:
  64. properties:
  65. compatible:
  66. contains:
  67. const: fsl,imx6sx-ldb
  68. then:
  69. required:
  70. - reg-names
  71. additionalProperties: false
  72. examples:
  73. - |
  74. #include <dt-bindings/clock/imx8mp-clock.h>
  75. blk-ctrl {
  76. #address-cells = <1>;
  77. #size-cells = <1>;
  78. bridge@5c {
  79. compatible = "fsl,imx8mp-ldb";
  80. clocks = <&clk IMX8MP_CLK_MEDIA_LDB>;
  81. clock-names = "ldb";
  82. reg = <0x5c 0x4>, <0x128 0x4>;
  83. reg-names = "ldb", "lvds";
  84. ports {
  85. #address-cells = <1>;
  86. #size-cells = <0>;
  87. port@0 {
  88. reg = <0>;
  89. ldb_from_lcdif2: endpoint {
  90. remote-endpoint = <&lcdif2_to_ldb>;
  91. };
  92. };
  93. port@1 {
  94. reg = <1>;
  95. ldb_lvds_ch0: endpoint {
  96. remote-endpoint = <&ldb_to_lvdsx4panel>;
  97. };
  98. };
  99. port@2 {
  100. reg = <2>;
  101. ldb_lvds_ch1: endpoint {
  102. };
  103. };
  104. };
  105. };
  106. };