mediatek,ovl.yaml 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109
  1. # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
  2. %YAML 1.2
  3. ---
  4. $id: http://devicetree.org/schemas/display/mediatek/mediatek,ovl.yaml#
  5. $schema: http://devicetree.org/meta-schemas/core.yaml#
  6. title: Mediatek display overlay
  7. maintainers:
  8. - Chun-Kuang Hu <chunkuang.hu@kernel.org>
  9. - Philipp Zabel <p.zabel@pengutronix.de>
  10. description: |
  11. Mediatek display overlay, namely OVL, can do alpha blending from
  12. the memory.
  13. OVL device node must be siblings to the central MMSYS_CONFIG node.
  14. For a description of the MMSYS_CONFIG binding, see
  15. Documentation/devicetree/bindings/arm/mediatek/mediatek,mmsys.yaml
  16. for details.
  17. properties:
  18. compatible:
  19. oneOf:
  20. - enum:
  21. - mediatek,mt2701-disp-ovl
  22. - mediatek,mt8173-disp-ovl
  23. - mediatek,mt8183-disp-ovl
  24. - mediatek,mt8192-disp-ovl
  25. - mediatek,mt8195-mdp3-ovl
  26. - items:
  27. - enum:
  28. - mediatek,mt7623-disp-ovl
  29. - mediatek,mt2712-disp-ovl
  30. - const: mediatek,mt2701-disp-ovl
  31. - items:
  32. - enum:
  33. - mediatek,mt6795-disp-ovl
  34. - const: mediatek,mt8173-disp-ovl
  35. - items:
  36. - enum:
  37. - mediatek,mt8188-disp-ovl
  38. - mediatek,mt8195-disp-ovl
  39. - const: mediatek,mt8183-disp-ovl
  40. - items:
  41. - enum:
  42. - mediatek,mt8186-disp-ovl
  43. - mediatek,mt8365-disp-ovl
  44. - const: mediatek,mt8192-disp-ovl
  45. reg:
  46. maxItems: 1
  47. interrupts:
  48. maxItems: 1
  49. power-domains:
  50. description: A phandle and PM domain specifier as defined by bindings of
  51. the power controller specified by phandle. See
  52. Documentation/devicetree/bindings/power/power-domain.yaml for details.
  53. clocks:
  54. items:
  55. - description: OVL Clock
  56. iommus:
  57. description:
  58. This property should point to the respective IOMMU block with master port as argument,
  59. see Documentation/devicetree/bindings/iommu/mediatek,iommu.yaml for details.
  60. mediatek,gce-client-reg:
  61. description: The register of client driver can be configured by gce with
  62. 4 arguments defined in this property, such as phandle of gce, subsys id,
  63. register offset and size. Each GCE subsys id is mapping to a client
  64. defined in the header include/dt-bindings/gce/<chip>-gce.h.
  65. $ref: /schemas/types.yaml#/definitions/phandle-array
  66. maxItems: 1
  67. required:
  68. - compatible
  69. - reg
  70. - interrupts
  71. - power-domains
  72. - clocks
  73. - iommus
  74. additionalProperties: false
  75. examples:
  76. - |
  77. #include <dt-bindings/interrupt-controller/arm-gic.h>
  78. #include <dt-bindings/clock/mt8173-clk.h>
  79. #include <dt-bindings/power/mt8173-power.h>
  80. #include <dt-bindings/gce/mt8173-gce.h>
  81. #include <dt-bindings/memory/mt8173-larb-port.h>
  82. soc {
  83. #address-cells = <2>;
  84. #size-cells = <2>;
  85. ovl0: ovl@1400c000 {
  86. compatible = "mediatek,mt8173-disp-ovl";
  87. reg = <0 0x1400c000 0 0x1000>;
  88. interrupts = <GIC_SPI 180 IRQ_TYPE_LEVEL_LOW>;
  89. power-domains = <&scpsys MT8173_POWER_DOMAIN_MM>;
  90. clocks = <&mmsys CLK_MM_DISP_OVL0>;
  91. iommus = <&iommu M4U_PORT_DISP_OVL0>;
  92. mediatek,gce-client-reg = <&gce SUBSYS_1400XXXX 0xc000 0x1000>;
  93. };
  94. };