1f5a98bfeSMaxime Ripard# SPDX-License-Identifier: GPL-2.0
2f5a98bfeSMaxime Ripard%YAML 1.2
3f5a98bfeSMaxime Ripard---
4f5a98bfeSMaxime Ripard$id: http://devicetree.org/schemas/display/allwinner,sun4i-a10-display-engine.yaml#
5f5a98bfeSMaxime Ripard$schema: http://devicetree.org/meta-schemas/core.yaml#
6f5a98bfeSMaxime Ripard
7*dd3cb467SAndrew Lunntitle: Allwinner A10 Display Engine Pipeline
8f5a98bfeSMaxime Ripard
9f5a98bfeSMaxime Ripardmaintainers:
10f5a98bfeSMaxime Ripard  - Chen-Yu Tsai <wens@csie.org>
11f5a98bfeSMaxime Ripard  - Maxime Ripard <mripard@kernel.org>
12f5a98bfeSMaxime Ripard
13f5a98bfeSMaxime Riparddescription: |
14f5a98bfeSMaxime Ripard  The display engine pipeline (and its entry point, since it can be
15f5a98bfeSMaxime Ripard  either directly the backend or the frontend) is represented as an
16f5a98bfeSMaxime Ripard  extra node.
17f5a98bfeSMaxime Ripard
18f5a98bfeSMaxime Ripard  The Allwinner A10 Display pipeline is composed of several components
19f5a98bfeSMaxime Ripard  that are going to be documented below:
20f5a98bfeSMaxime Ripard
21f5a98bfeSMaxime Ripard  For all connections between components up to the TCONs in the
22f5a98bfeSMaxime Ripard  display pipeline, when there are multiple components of the same
23f5a98bfeSMaxime Ripard  type at the same depth, the local endpoint ID must be the same as
24f5a98bfeSMaxime Ripard  the remote component's index. For example, if the remote endpoint is
25f5a98bfeSMaxime Ripard  Frontend 1, then the local endpoint ID must be 1.
26f5a98bfeSMaxime Ripard
27f5a98bfeSMaxime Ripard  Frontend 0  [0] ------- [0]  Backend 0  [0] ------- [0]  TCON 0
28f5a98bfeSMaxime Ripard              [1] --   -- [1]             [1] --   -- [1]
29f5a98bfeSMaxime Ripard                    \ /                         \ /
30f5a98bfeSMaxime Ripard                     X                           X
31f5a98bfeSMaxime Ripard                    / \                         / \
32f5a98bfeSMaxime Ripard              [0] --   -- [0]             [0] --   -- [0]
33f5a98bfeSMaxime Ripard  Frontend 1  [1] ------- [1]  Backend 1  [1] ------- [1]  TCON 1
34f5a98bfeSMaxime Ripard
35f5a98bfeSMaxime Ripard  For a two pipeline system such as the one depicted above, the lines
36f5a98bfeSMaxime Ripard  represent the connections between the components, while the numbers
37f5a98bfeSMaxime Ripard  within the square brackets corresponds to the ID of the local endpoint.
38f5a98bfeSMaxime Ripard
39f5a98bfeSMaxime Ripard  The same rule also applies to DE 2.0 mixer-TCON connections:
40f5a98bfeSMaxime Ripard
41f5a98bfeSMaxime Ripard  Mixer 0  [0] ----------- [0]  TCON 0
42f5a98bfeSMaxime Ripard           [1] ----   ---- [1]
43f5a98bfeSMaxime Ripard                   \ /
44f5a98bfeSMaxime Ripard                    X
45f5a98bfeSMaxime Ripard                   / \
46f5a98bfeSMaxime Ripard           [0] ----   ---- [0]
47f5a98bfeSMaxime Ripard  Mixer 1  [1] ----------- [1]  TCON 1
48f5a98bfeSMaxime Ripard
49f5a98bfeSMaxime Ripardproperties:
50f5a98bfeSMaxime Ripard  compatible:
51f5a98bfeSMaxime Ripard    enum:
52f5a98bfeSMaxime Ripard      - allwinner,sun4i-a10-display-engine
53f5a98bfeSMaxime Ripard      - allwinner,sun5i-a10s-display-engine
54f5a98bfeSMaxime Ripard      - allwinner,sun5i-a13-display-engine
55f5a98bfeSMaxime Ripard      - allwinner,sun6i-a31-display-engine
56f5a98bfeSMaxime Ripard      - allwinner,sun6i-a31s-display-engine
57f5a98bfeSMaxime Ripard      - allwinner,sun7i-a20-display-engine
58f5a98bfeSMaxime Ripard      - allwinner,sun8i-a23-display-engine
59f5a98bfeSMaxime Ripard      - allwinner,sun8i-a33-display-engine
60f5a98bfeSMaxime Ripard      - allwinner,sun8i-a83t-display-engine
61f5a98bfeSMaxime Ripard      - allwinner,sun8i-h3-display-engine
62f5a98bfeSMaxime Ripard      - allwinner,sun8i-r40-display-engine
63f5a98bfeSMaxime Ripard      - allwinner,sun8i-v3s-display-engine
64f5a98bfeSMaxime Ripard      - allwinner,sun9i-a80-display-engine
65ae5a5d26SSamuel Holland      - allwinner,sun20i-d1-display-engine
66f5a98bfeSMaxime Ripard      - allwinner,sun50i-a64-display-engine
67f5a98bfeSMaxime Ripard      - allwinner,sun50i-h6-display-engine
68f5a98bfeSMaxime Ripard
69f5a98bfeSMaxime Ripard  allwinner,pipelines:
703d21a460SRob Herring    $ref: /schemas/types.yaml#/definitions/phandle-array
713d21a460SRob Herring    minItems: 1
72f5a98bfeSMaxime Ripard    maxItems: 2
7339bd2b6aSRob Herring    items:
7439bd2b6aSRob Herring      maxItems: 1
75f5a98bfeSMaxime Ripard    description: |
76f5a98bfeSMaxime Ripard      Available display engine frontends (DE 1.0) or mixers (DE
77f5a98bfeSMaxime Ripard      2.0/3.0) available.
78f5a98bfeSMaxime Ripard
79f5a98bfeSMaxime Ripardrequired:
80f5a98bfeSMaxime Ripard  - compatible
81f5a98bfeSMaxime Ripard  - allwinner,pipelines
82f5a98bfeSMaxime Ripard
83f5a98bfeSMaxime RipardadditionalProperties: false
84f5a98bfeSMaxime Ripard
85f5a98bfeSMaxime Ripardif:
86f5a98bfeSMaxime Ripard  properties:
87f5a98bfeSMaxime Ripard    compatible:
88f5a98bfeSMaxime Ripard      contains:
89f5a98bfeSMaxime Ripard        enum:
90f5a98bfeSMaxime Ripard          - allwinner,sun4i-a10-display-engine
91f5a98bfeSMaxime Ripard          - allwinner,sun6i-a31-display-engine
92f5a98bfeSMaxime Ripard          - allwinner,sun6i-a31s-display-engine
93f5a98bfeSMaxime Ripard          - allwinner,sun7i-a20-display-engine
94f5a98bfeSMaxime Ripard          - allwinner,sun8i-a83t-display-engine
95f5a98bfeSMaxime Ripard          - allwinner,sun8i-r40-display-engine
96f5a98bfeSMaxime Ripard          - allwinner,sun9i-a80-display-engine
9779471f29SSamuel Holland          - allwinner,sun20i-d1-display-engine
98f5a98bfeSMaxime Ripard          - allwinner,sun50i-a64-display-engine
99f5a98bfeSMaxime Ripard
100f5a98bfeSMaxime Ripardthen:
101f5a98bfeSMaxime Ripard  properties:
102f5a98bfeSMaxime Ripard    allwinner,pipelines:
103f5a98bfeSMaxime Ripard      minItems: 2
104f5a98bfeSMaxime Ripard
105f5a98bfeSMaxime Ripardelse:
106f5a98bfeSMaxime Ripard  properties:
107f5a98bfeSMaxime Ripard    allwinner,pipelines:
108f5a98bfeSMaxime Ripard      maxItems: 1
109f5a98bfeSMaxime Ripard
110f5a98bfeSMaxime Ripardexamples:
111f5a98bfeSMaxime Ripard  - |
112f5a98bfeSMaxime Ripard      de: display-engine {
113f5a98bfeSMaxime Ripard          compatible = "allwinner,sun4i-a10-display-engine";
114f5a98bfeSMaxime Ripard          allwinner,pipelines = <&fe0>, <&fe1>;
115f5a98bfeSMaxime Ripard      };
116f5a98bfeSMaxime Ripard
117f5a98bfeSMaxime Ripard...
118