| # SPDX-License-Identifier: GPL-2.0 |
| %YAML 1.2 |
| --- |
| $id: http://devicetree.org/schemas/display/allwinner,sun4i-a10-display-engine.yaml# |
| $schema: http://devicetree.org/meta-schemas/core.yaml# |
| |
| title: Allwinner A10 Display Engine Pipeline Device Tree Bindings |
| |
| maintainers: |
| - Chen-Yu Tsai <wens@csie.org> |
| - Maxime Ripard <mripard@kernel.org> |
| |
| description: | |
| The display engine pipeline (and its entry point, since it can be |
| either directly the backend or the frontend) is represented as an |
| extra node. |
| |
| The Allwinner A10 Display pipeline is composed of several components |
| that are going to be documented below: |
| |
| For all connections between components up to the TCONs in the |
| display pipeline, when there are multiple components of the same |
| type at the same depth, the local endpoint ID must be the same as |
| the remote component's index. For example, if the remote endpoint is |
| Frontend 1, then the local endpoint ID must be 1. |
| |
| Frontend 0 [0] ------- [0] Backend 0 [0] ------- [0] TCON 0 |
| [1] -- -- [1] [1] -- -- [1] |
| \ / \ / |
| X X |
| / \ / \ |
| [0] -- -- [0] [0] -- -- [0] |
| Frontend 1 [1] ------- [1] Backend 1 [1] ------- [1] TCON 1 |
| |
| For a two pipeline system such as the one depicted above, the lines |
| represent the connections between the components, while the numbers |
| within the square brackets corresponds to the ID of the local endpoint. |
| |
| The same rule also applies to DE 2.0 mixer-TCON connections: |
| |
| Mixer 0 [0] ----------- [0] TCON 0 |
| [1] ---- ---- [1] |
| \ / |
| X |
| / \ |
| [0] ---- ---- [0] |
| Mixer 1 [1] ----------- [1] TCON 1 |
| |
| properties: |
| compatible: |
| enum: |
| - allwinner,sun4i-a10-display-engine |
| - allwinner,sun5i-a10s-display-engine |
| - allwinner,sun5i-a13-display-engine |
| - allwinner,sun6i-a31-display-engine |
| - allwinner,sun6i-a31s-display-engine |
| - allwinner,sun7i-a20-display-engine |
| - allwinner,sun8i-a23-display-engine |
| - allwinner,sun8i-a33-display-engine |
| - allwinner,sun8i-a83t-display-engine |
| - allwinner,sun8i-h3-display-engine |
| - allwinner,sun8i-r40-display-engine |
| - allwinner,sun8i-v3s-display-engine |
| - allwinner,sun9i-a80-display-engine |
| - allwinner,sun50i-a64-display-engine |
| - allwinner,sun50i-h6-display-engine |
| |
| allwinner,pipelines: |
| $ref: /schemas/types.yaml#/definitions/phandle-array |
| minItems: 1 |
| maxItems: 2 |
| description: | |
| Available display engine frontends (DE 1.0) or mixers (DE |
| 2.0/3.0) available. |
| |
| required: |
| - compatible |
| - allwinner,pipelines |
| |
| additionalProperties: false |
| |
| if: |
| properties: |
| compatible: |
| contains: |
| enum: |
| - allwinner,sun4i-a10-display-engine |
| - allwinner,sun6i-a31-display-engine |
| - allwinner,sun6i-a31s-display-engine |
| - allwinner,sun7i-a20-display-engine |
| - allwinner,sun8i-a83t-display-engine |
| - allwinner,sun8i-r40-display-engine |
| - allwinner,sun9i-a80-display-engine |
| - allwinner,sun50i-a64-display-engine |
| |
| then: |
| properties: |
| allwinner,pipelines: |
| minItems: 2 |
| |
| else: |
| properties: |
| allwinner,pipelines: |
| maxItems: 1 |
| |
| examples: |
| - | |
| de: display-engine { |
| compatible = "allwinner,sun4i-a10-display-engine"; |
| allwinner,pipelines = <&fe0>, <&fe1>; |
| }; |
| |
| ... |