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 7f5a98bfeSMaxime Ripardtitle: Allwinner A10 Display Engine Pipeline Device Tree Bindings 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 65f5a98bfeSMaxime Ripard - allwinner,sun50i-a64-display-engine 66f5a98bfeSMaxime Ripard - allwinner,sun50i-h6-display-engine 67f5a98bfeSMaxime Ripard 68f5a98bfeSMaxime Ripard allwinner,pipelines: 693d21a460SRob Herring $ref: /schemas/types.yaml#/definitions/phandle-array 703d21a460SRob Herring minItems: 1 71f5a98bfeSMaxime Ripard maxItems: 2 72f5a98bfeSMaxime Ripard description: | 73f5a98bfeSMaxime Ripard Available display engine frontends (DE 1.0) or mixers (DE 74f5a98bfeSMaxime Ripard 2.0/3.0) available. 75f5a98bfeSMaxime Ripard 76f5a98bfeSMaxime Ripardrequired: 77f5a98bfeSMaxime Ripard - compatible 78f5a98bfeSMaxime Ripard - allwinner,pipelines 79f5a98bfeSMaxime Ripard 80f5a98bfeSMaxime RipardadditionalProperties: false 81f5a98bfeSMaxime Ripard 82f5a98bfeSMaxime Ripardif: 83f5a98bfeSMaxime Ripard properties: 84f5a98bfeSMaxime Ripard compatible: 85f5a98bfeSMaxime Ripard contains: 86f5a98bfeSMaxime Ripard enum: 87f5a98bfeSMaxime Ripard - allwinner,sun4i-a10-display-engine 88f5a98bfeSMaxime Ripard - allwinner,sun6i-a31-display-engine 89f5a98bfeSMaxime Ripard - allwinner,sun6i-a31s-display-engine 90f5a98bfeSMaxime Ripard - allwinner,sun7i-a20-display-engine 91f5a98bfeSMaxime Ripard - allwinner,sun8i-a83t-display-engine 92f5a98bfeSMaxime Ripard - allwinner,sun8i-r40-display-engine 93f5a98bfeSMaxime Ripard - allwinner,sun9i-a80-display-engine 94f5a98bfeSMaxime Ripard - allwinner,sun50i-a64-display-engine 95f5a98bfeSMaxime Ripard 96f5a98bfeSMaxime Ripardthen: 97f5a98bfeSMaxime Ripard properties: 98f5a98bfeSMaxime Ripard allwinner,pipelines: 99f5a98bfeSMaxime Ripard minItems: 2 100f5a98bfeSMaxime Ripard 101f5a98bfeSMaxime Ripardelse: 102f5a98bfeSMaxime Ripard properties: 103f5a98bfeSMaxime Ripard allwinner,pipelines: 104f5a98bfeSMaxime Ripard maxItems: 1 105f5a98bfeSMaxime Ripard 106f5a98bfeSMaxime Ripardexamples: 107f5a98bfeSMaxime Ripard - | 108f5a98bfeSMaxime Ripard de: display-engine { 109f5a98bfeSMaxime Ripard compatible = "allwinner,sun4i-a10-display-engine"; 110f5a98bfeSMaxime Ripard allwinner,pipelines = <&fe0>, <&fe1>; 111f5a98bfeSMaxime Ripard }; 112f5a98bfeSMaxime Ripard 113f5a98bfeSMaxime Ripard... 114