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