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