1*b71d3aceSLiu Ying# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2*b71d3aceSLiu Ying%YAML 1.2 3*b71d3aceSLiu Ying--- 4*b71d3aceSLiu Ying$id: http://devicetree.org/schemas/display/imx/fsl,imx8qxp-dc-blit-engine.yaml# 5*b71d3aceSLiu Ying$schema: http://devicetree.org/meta-schemas/core.yaml# 6*b71d3aceSLiu Ying 7*b71d3aceSLiu Yingtitle: Freescale i.MX8qxp Display Controller Blit Engine 8*b71d3aceSLiu Ying 9*b71d3aceSLiu Yingdescription: | 10*b71d3aceSLiu Ying A blit operation (block based image transfer) reads up to 3 source images 11*b71d3aceSLiu Ying from memory and computes one destination image from it, which is written 12*b71d3aceSLiu Ying back to memory. The following basic operations are supported: 13*b71d3aceSLiu Ying 14*b71d3aceSLiu Ying * Buffer Fill 15*b71d3aceSLiu Ying Fills a buffer with constant color 16*b71d3aceSLiu Ying 17*b71d3aceSLiu Ying * Buffer Copy 18*b71d3aceSLiu Ying Copies one source to a destination buffer. 19*b71d3aceSLiu Ying 20*b71d3aceSLiu Ying * Image Blend 21*b71d3aceSLiu Ying Combines two source images by a blending equation and writes result to 22*b71d3aceSLiu Ying destination (which can be one of the sources). 23*b71d3aceSLiu Ying 24*b71d3aceSLiu Ying * Image Rop2/3 25*b71d3aceSLiu Ying Combines up to three source images by a logical equation (raster operation) 26*b71d3aceSLiu Ying and writes result to destination (which can be one of the sources). 27*b71d3aceSLiu Ying 28*b71d3aceSLiu Ying * Image Flip 29*b71d3aceSLiu Ying Mirrors the source image in horizontal and/or vertical direction. 30*b71d3aceSLiu Ying 31*b71d3aceSLiu Ying * Format Convert 32*b71d3aceSLiu Ying Convert between the supported color and buffer formats. 33*b71d3aceSLiu Ying 34*b71d3aceSLiu Ying * Color Transform 35*b71d3aceSLiu Ying Modify colors by linear or non-linear transformations. 36*b71d3aceSLiu Ying 37*b71d3aceSLiu Ying * Image Scale 38*b71d3aceSLiu Ying Changes size of the source image. 39*b71d3aceSLiu Ying 40*b71d3aceSLiu Ying * Image Rotate 41*b71d3aceSLiu Ying Rotates the source image by any angle. 42*b71d3aceSLiu Ying 43*b71d3aceSLiu Ying * Image Filter 44*b71d3aceSLiu Ying Performs an FIR filter operation on the source image. 45*b71d3aceSLiu Ying 46*b71d3aceSLiu Ying * Image Warp 47*b71d3aceSLiu Ying Performs a re-sampling of the source image with any pattern. The sample 48*b71d3aceSLiu Ying point positions are read from a compressed coordinate buffer. 49*b71d3aceSLiu Ying 50*b71d3aceSLiu Ying * Buffer Pack 51*b71d3aceSLiu Ying Writes an image with color components stored in up to three different 52*b71d3aceSLiu Ying buffers (planar formats) into a single buffer (packed format). 53*b71d3aceSLiu Ying 54*b71d3aceSLiu Ying * Chroma Resample 55*b71d3aceSLiu Ying Converts between different YUV formats that differ in chroma sampling rate 56*b71d3aceSLiu Ying (4:4:4, 4:2:2, 4:2:0). 57*b71d3aceSLiu Ying 58*b71d3aceSLiu Yingmaintainers: 59*b71d3aceSLiu Ying - Liu Ying <victor.liu@nxp.com> 60*b71d3aceSLiu Ying 61*b71d3aceSLiu Yingproperties: 62*b71d3aceSLiu Ying compatible: 63*b71d3aceSLiu Ying const: fsl,imx8qxp-dc-blit-engine 64*b71d3aceSLiu Ying 65*b71d3aceSLiu Ying reg: 66*b71d3aceSLiu Ying maxItems: 2 67*b71d3aceSLiu Ying 68*b71d3aceSLiu Ying reg-names: 69*b71d3aceSLiu Ying items: 70*b71d3aceSLiu Ying - const: pec 71*b71d3aceSLiu Ying - const: cfg 72*b71d3aceSLiu Ying 73*b71d3aceSLiu Ying "#address-cells": 74*b71d3aceSLiu Ying const: 1 75*b71d3aceSLiu Ying 76*b71d3aceSLiu Ying "#size-cells": 77*b71d3aceSLiu Ying const: 1 78*b71d3aceSLiu Ying 79*b71d3aceSLiu Ying ranges: true 80*b71d3aceSLiu Ying 81*b71d3aceSLiu YingpatternProperties: 82*b71d3aceSLiu Ying "^blitblend@[0-9a-f]+$": 83*b71d3aceSLiu Ying type: object 84*b71d3aceSLiu Ying additionalProperties: true 85*b71d3aceSLiu Ying 86*b71d3aceSLiu Ying properties: 87*b71d3aceSLiu Ying compatible: 88*b71d3aceSLiu Ying const: fsl,imx8qxp-dc-blitblend 89*b71d3aceSLiu Ying 90*b71d3aceSLiu Ying "^clut@[0-9a-f]+$": 91*b71d3aceSLiu Ying type: object 92*b71d3aceSLiu Ying additionalProperties: true 93*b71d3aceSLiu Ying 94*b71d3aceSLiu Ying properties: 95*b71d3aceSLiu Ying compatible: 96*b71d3aceSLiu Ying const: fsl,imx8qxp-dc-clut 97*b71d3aceSLiu Ying 98*b71d3aceSLiu Ying "^fetchdecode@[0-9a-f]+$": 99*b71d3aceSLiu Ying type: object 100*b71d3aceSLiu Ying additionalProperties: true 101*b71d3aceSLiu Ying 102*b71d3aceSLiu Ying properties: 103*b71d3aceSLiu Ying compatible: 104*b71d3aceSLiu Ying const: fsl,imx8qxp-dc-fetchdecode 105*b71d3aceSLiu Ying 106*b71d3aceSLiu Ying "^fetcheco@[0-9a-f]+$": 107*b71d3aceSLiu Ying type: object 108*b71d3aceSLiu Ying additionalProperties: true 109*b71d3aceSLiu Ying 110*b71d3aceSLiu Ying properties: 111*b71d3aceSLiu Ying compatible: 112*b71d3aceSLiu Ying const: fsl,imx8qxp-dc-fetcheco 113*b71d3aceSLiu Ying 114*b71d3aceSLiu Ying "^fetchwarp@[0-9a-f]+$": 115*b71d3aceSLiu Ying type: object 116*b71d3aceSLiu Ying additionalProperties: true 117*b71d3aceSLiu Ying 118*b71d3aceSLiu Ying properties: 119*b71d3aceSLiu Ying compatible: 120*b71d3aceSLiu Ying const: fsl,imx8qxp-dc-fetchwarp 121*b71d3aceSLiu Ying 122*b71d3aceSLiu Ying "^filter@[0-9a-f]+$": 123*b71d3aceSLiu Ying type: object 124*b71d3aceSLiu Ying additionalProperties: true 125*b71d3aceSLiu Ying 126*b71d3aceSLiu Ying properties: 127*b71d3aceSLiu Ying compatible: 128*b71d3aceSLiu Ying const: fsl,imx8qxp-dc-filter 129*b71d3aceSLiu Ying 130*b71d3aceSLiu Ying "^hscaler@[0-9a-f]+$": 131*b71d3aceSLiu Ying type: object 132*b71d3aceSLiu Ying additionalProperties: true 133*b71d3aceSLiu Ying 134*b71d3aceSLiu Ying properties: 135*b71d3aceSLiu Ying compatible: 136*b71d3aceSLiu Ying const: fsl,imx8qxp-dc-hscaler 137*b71d3aceSLiu Ying 138*b71d3aceSLiu Ying "^matrix@[0-9a-f]+$": 139*b71d3aceSLiu Ying type: object 140*b71d3aceSLiu Ying additionalProperties: true 141*b71d3aceSLiu Ying 142*b71d3aceSLiu Ying properties: 143*b71d3aceSLiu Ying compatible: 144*b71d3aceSLiu Ying const: fsl,imx8qxp-dc-matrix 145*b71d3aceSLiu Ying 146*b71d3aceSLiu Ying "^rop@[0-9a-f]+$": 147*b71d3aceSLiu Ying type: object 148*b71d3aceSLiu Ying additionalProperties: true 149*b71d3aceSLiu Ying 150*b71d3aceSLiu Ying properties: 151*b71d3aceSLiu Ying compatible: 152*b71d3aceSLiu Ying const: fsl,imx8qxp-dc-rop 153*b71d3aceSLiu Ying 154*b71d3aceSLiu Ying "^store@[0-9a-f]+$": 155*b71d3aceSLiu Ying type: object 156*b71d3aceSLiu Ying additionalProperties: true 157*b71d3aceSLiu Ying 158*b71d3aceSLiu Ying properties: 159*b71d3aceSLiu Ying compatible: 160*b71d3aceSLiu Ying const: fsl,imx8qxp-dc-store 161*b71d3aceSLiu Ying 162*b71d3aceSLiu Ying "^vscaler@[0-9a-f]+$": 163*b71d3aceSLiu Ying type: object 164*b71d3aceSLiu Ying additionalProperties: true 165*b71d3aceSLiu Ying 166*b71d3aceSLiu Ying properties: 167*b71d3aceSLiu Ying compatible: 168*b71d3aceSLiu Ying const: fsl,imx8qxp-dc-vscaler 169*b71d3aceSLiu Ying 170*b71d3aceSLiu Yingrequired: 171*b71d3aceSLiu Ying - compatible 172*b71d3aceSLiu Ying - reg 173*b71d3aceSLiu Ying - reg-names 174*b71d3aceSLiu Ying - "#address-cells" 175*b71d3aceSLiu Ying - "#size-cells" 176*b71d3aceSLiu Ying - ranges 177*b71d3aceSLiu Ying 178*b71d3aceSLiu YingadditionalProperties: false 179*b71d3aceSLiu Ying 180*b71d3aceSLiu Yingexamples: 181*b71d3aceSLiu Ying - | 182*b71d3aceSLiu Ying blit-engine@56180820 { 183*b71d3aceSLiu Ying compatible = "fsl,imx8qxp-dc-blit-engine"; 184*b71d3aceSLiu Ying reg = <0x56180820 0x13c>, <0x56181000 0x3400>; 185*b71d3aceSLiu Ying reg-names = "pec", "cfg"; 186*b71d3aceSLiu Ying #address-cells = <1>; 187*b71d3aceSLiu Ying #size-cells = <1>; 188*b71d3aceSLiu Ying ranges; 189*b71d3aceSLiu Ying 190*b71d3aceSLiu Ying fetchdecode@56180820 { 191*b71d3aceSLiu Ying compatible = "fsl,imx8qxp-dc-fetchdecode"; 192*b71d3aceSLiu Ying reg = <0x56180820 0x10>, <0x56181000 0x404>; 193*b71d3aceSLiu Ying reg-names = "pec", "cfg"; 194*b71d3aceSLiu Ying }; 195*b71d3aceSLiu Ying 196*b71d3aceSLiu Ying store@56180940 { 197*b71d3aceSLiu Ying compatible = "fsl,imx8qxp-dc-store"; 198*b71d3aceSLiu Ying reg = <0x56180940 0x1c>, <0x56184000 0x5c>; 199*b71d3aceSLiu Ying reg-names = "pec", "cfg"; 200*b71d3aceSLiu Ying interrupt-parent = <&dc0_intc>; 201*b71d3aceSLiu Ying interrupts = <0>, <1>, <2>; 202*b71d3aceSLiu Ying interrupt-names = "shdload", "framecomplete", "seqcomplete"; 203*b71d3aceSLiu Ying }; 204*b71d3aceSLiu Ying }; 205