summaryrefslogtreecommitdiff
path: root/dts/upstream/Bindings/display/imx/fsl,imx8qxp-dc-blit-engine.yaml
blob: 45db6da39e20e05303dd45afa797f4832c58c8f9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/display/imx/fsl,imx8qxp-dc-blit-engine.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Freescale i.MX8qxp Display Controller Blit Engine

description: |
  A blit operation (block based image transfer) reads up to 3 source images
  from memory and computes one destination image from it, which is written
  back to memory. The following basic operations are supported:

  * Buffer Fill
    Fills a buffer with constant color

  * Buffer Copy
    Copies one source to a destination buffer.

  * Image Blend
    Combines two source images by a blending equation and writes result to
    destination (which can be one of the sources).

  * Image Rop2/3
    Combines up to three source images by a logical equation (raster operation)
    and writes result to destination (which can be one of the sources).

  * Image Flip
    Mirrors the source image in horizontal and/or vertical direction.

  * Format Convert
    Convert between the supported color and buffer formats.

  * Color Transform
    Modify colors by linear or non-linear transformations.

  * Image Scale
    Changes size of the source image.

  * Image Rotate
    Rotates the source image by any angle.

  * Image Filter
    Performs an FIR filter operation on the source image.

  * Image Warp
    Performs a re-sampling of the source image with any pattern. The sample
    point positions are read from a compressed coordinate buffer.

  * Buffer Pack
    Writes an image with color components stored in up to three different
    buffers (planar formats) into a single buffer (packed format).

  * Chroma Resample
    Converts between different YUV formats that differ in chroma sampling rate
    (4:4:4, 4:2:2, 4:2:0).

maintainers:
  - Liu Ying <victor.liu@nxp.com>

properties:
  compatible:
    const: fsl,imx8qxp-dc-blit-engine

  reg:
    maxItems: 2

  reg-names:
    items:
      - const: pec
      - const: cfg

  "#address-cells":
    const: 1

  "#size-cells":
    const: 1

  ranges: true

patternProperties:
  "^blitblend@[0-9a-f]+$":
    type: object
    additionalProperties: true

    properties:
      compatible:
        const: fsl,imx8qxp-dc-blitblend

  "^clut@[0-9a-f]+$":
    type: object
    additionalProperties: true

    properties:
      compatible:
        const: fsl,imx8qxp-dc-clut

  "^fetchdecode@[0-9a-f]+$":
    type: object
    additionalProperties: true

    properties:
      compatible:
        const: fsl,imx8qxp-dc-fetchdecode

  "^fetcheco@[0-9a-f]+$":
    type: object
    additionalProperties: true

    properties:
      compatible:
        const: fsl,imx8qxp-dc-fetcheco

  "^fetchwarp@[0-9a-f]+$":
    type: object
    additionalProperties: true

    properties:
      compatible:
        const: fsl,imx8qxp-dc-fetchwarp

  "^filter@[0-9a-f]+$":
    type: object
    additionalProperties: true

    properties:
      compatible:
        const: fsl,imx8qxp-dc-filter

  "^hscaler@[0-9a-f]+$":
    type: object
    additionalProperties: true

    properties:
      compatible:
        const: fsl,imx8qxp-dc-hscaler

  "^matrix@[0-9a-f]+$":
    type: object
    additionalProperties: true

    properties:
      compatible:
        const: fsl,imx8qxp-dc-matrix

  "^rop@[0-9a-f]+$":
    type: object
    additionalProperties: true

    properties:
      compatible:
        const: fsl,imx8qxp-dc-rop

  "^store@[0-9a-f]+$":
    type: object
    additionalProperties: true

    properties:
      compatible:
        const: fsl,imx8qxp-dc-store

  "^vscaler@[0-9a-f]+$":
    type: object
    additionalProperties: true

    properties:
      compatible:
        const: fsl,imx8qxp-dc-vscaler

required:
  - compatible
  - reg
  - reg-names
  - "#address-cells"
  - "#size-cells"
  - ranges

additionalProperties: false

examples:
  - |
    blit-engine@56180820 {
        compatible = "fsl,imx8qxp-dc-blit-engine";
        reg = <0x56180820 0x13c>, <0x56181000 0x3400>;
        reg-names = "pec", "cfg";
        #address-cells = <1>;
        #size-cells = <1>;
        ranges;

        fetchdecode@56180820 {
            compatible = "fsl,imx8qxp-dc-fetchdecode";
            reg = <0x56180820 0x10>, <0x56181000 0x404>;
            reg-names = "pec", "cfg";
        };

        store@56180940 {
            compatible = "fsl,imx8qxp-dc-store";
            reg = <0x56180940 0x1c>, <0x56184000 0x5c>;
            reg-names = "pec", "cfg";
            interrupt-parent = <&dc0_intc>;
            interrupts = <0>, <1>, <2>;
            interrupt-names = "shdload", "framecomplete", "seqcomplete";
        };
    };