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