nvidia,tegra20-dc.yaml 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182
  1. # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
  2. %YAML 1.2
  3. ---
  4. $id: http://devicetree.org/schemas/display/tegra/nvidia,tegra20-dc.yaml#
  5. $schema: http://devicetree.org/meta-schemas/core.yaml#
  6. title: NVIDIA Tegra Display Controller
  7. maintainers:
  8. - Thierry Reding <thierry.reding@gmail.com>
  9. - Jon Hunter <jonathanh@nvidia.com>
  10. properties:
  11. $nodename:
  12. pattern: "^dc@[0-9a-f]+$"
  13. compatible:
  14. oneOf:
  15. - enum:
  16. - nvidia,tegra20-dc
  17. - nvidia,tegra30-dc
  18. - nvidia,tegra114-dc
  19. - nvidia,tegra124-dc
  20. - nvidia,tegra210-dc
  21. - items:
  22. - const: nvidia,tegra124-dc
  23. - const: nvidia,tegra132-dc
  24. reg:
  25. maxItems: 1
  26. interrupts:
  27. maxItems: 1
  28. clocks:
  29. minItems: 1
  30. items:
  31. - description: display controller pixel clock
  32. - description: parent clock # optional
  33. clock-names:
  34. minItems: 1
  35. items:
  36. - const: dc
  37. - const: parent # optional
  38. resets:
  39. items:
  40. - description: module reset
  41. reset-names:
  42. items:
  43. - const: dc
  44. interconnect-names: true
  45. interconnects: true
  46. iommus:
  47. maxItems: 1
  48. operating-points-v2: true
  49. power-domains:
  50. items:
  51. - description: phandle to the core power domain
  52. memory-region: true
  53. nvidia,head:
  54. $ref: /schemas/types.yaml#/definitions/uint32
  55. description: The number of the display controller head. This is used to setup the various
  56. types of output to receive video data from the given head.
  57. nvidia,outputs:
  58. $ref: /schemas/types.yaml#/definitions/phandle-array
  59. description: A list of phandles of outputs that this display controller can drive.
  60. rgb:
  61. type: object
  62. allOf:
  63. - if:
  64. properties:
  65. compatible:
  66. contains:
  67. enum:
  68. - nvidia,tegra20-dc
  69. - nvidia,tegra30-dc
  70. - nvidia,tegra114-dc
  71. then:
  72. properties:
  73. interconnects:
  74. items:
  75. - description: window A memory client
  76. - description: window B memory client
  77. - description: window B memory client (vertical filter)
  78. - description: window C memory client
  79. - description: cursor memory client
  80. interconnect-names:
  81. items:
  82. - const: wina
  83. - const: winb
  84. - const: winb-vfilter
  85. - const: winc
  86. - const: cursor
  87. rgb:
  88. description: Each display controller node has a child node, named "rgb", that represents
  89. the RGB output associated with the controller.
  90. type: object
  91. properties:
  92. nvidia,ddc-i2c-bus:
  93. $ref: /schemas/types.yaml#/definitions/phandle
  94. description: phandle of an I2C controller used for DDC EDID probing
  95. nvidia,hpd-gpio:
  96. description: specifies a GPIO used for hotplug detection
  97. maxItems: 1
  98. nvidia,edid:
  99. $ref: /schemas/types.yaml#/definitions/uint8-array
  100. description: supplies a binary EDID blob
  101. nvidia,panel:
  102. $ref: /schemas/types.yaml#/definitions/phandle
  103. description: phandle of a display panel
  104. - if:
  105. properties:
  106. compatible:
  107. contains:
  108. enum:
  109. - nvidia,tegra124-dc
  110. then:
  111. properties:
  112. interconnects:
  113. minItems: 4
  114. items:
  115. - description: window A memory client
  116. - description: window B memory client
  117. - description: window C memory client
  118. - description: cursor memory client
  119. - description: window D memory client
  120. - description: window T memory client
  121. interconnect-names:
  122. minItems: 4
  123. items:
  124. - const: wina
  125. - const: winb
  126. - const: winc
  127. - const: cursor
  128. - const: wind
  129. - const: wint
  130. additionalProperties: false
  131. required:
  132. - compatible
  133. - reg
  134. - interrupts
  135. - clocks
  136. - clock-names
  137. - resets
  138. - reset-names
  139. examples:
  140. - |
  141. #include <dt-bindings/clock/tegra20-car.h>
  142. #include <dt-bindings/interrupt-controller/arm-gic.h>
  143. dc@54200000 {
  144. compatible = "nvidia,tegra20-dc";
  145. reg = <0x54200000 0x00040000>;
  146. interrupts = <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>;
  147. clocks = <&tegra_car TEGRA20_CLK_DISP1>;
  148. clock-names = "dc";
  149. resets = <&tegra_car 27>;
  150. reset-names = "dc";
  151. };