summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorLiu Ying <victor.liu@nxp.com>2019-09-17 09:44:58 +0800
committerLiu Ying <victor.liu@nxp.com>2019-09-20 10:13:25 +0800
commite9aa21938cdaf64cc049fb8fabb5bdf4c007ca75 (patch)
treeda1be2b539264e90296d88c635e556e773222ba6 /include
parente29c03d06c5890dd5cffdb256791c0d36c33d344 (diff)
MLK-22600-5 drm/imx: dpu: plane: Support multiple pixel blend modes
This patch adds mulitple pixel blend modes for DPU plane. The modes are "None", "Pre-multiplied" and "Coverage". Signed-off-by: Liu Ying <victor.liu@nxp.com> (cherry picked from commit 1259fedbcf2a54f58b47e8531a09b35cc60a43f7)
Diffstat (limited to 'include')
-rw-r--r--include/video/dpu.h11
1 files changed, 8 insertions, 3 deletions
diff --git a/include/video/dpu.h b/include/video/dpu.h
index 1fc5b2c200dd..a1bd1f217304 100644
--- a/include/video/dpu.h
+++ b/include/video/dpu.h
@@ -477,7 +477,9 @@ struct dpu_fetchunit_ops {
void (*set_fmt)(struct dpu_fetchunit *fu, u32 fmt, bool deinterlace);
- void (*set_pixel_blend_mode)(struct dpu_fetchunit *fu, u32 fb_format);
+ void (*set_pixel_blend_mode)(struct dpu_fetchunit *fu,
+ unsigned int pixel_blend_mode, u16 alpha,
+ u32 fb_format);
void (*enable_src_buf)(struct dpu_fetchunit *fu);
void (*disable_src_buf)(struct dpu_fetchunit *fu);
@@ -680,7 +682,8 @@ void layerblend_shden(struct dpu_layerblend *lb, bool enable);
void layerblend_shdtoksel(struct dpu_layerblend *lb, lb_shadow_sel_t sel);
void layerblend_shdldsel(struct dpu_layerblend *lb, lb_shadow_sel_t sel);
void layerblend_control(struct dpu_layerblend *lb, lb_mode_t mode);
-void layerblend_blendcontrol(struct dpu_layerblend *lb, unsigned int zpos);
+void layerblend_blendcontrol(struct dpu_layerblend *lb, unsigned int zpos,
+ unsigned int pixel_blend_mode, u16 alpha);
void layerblend_position(struct dpu_layerblend *lb, int x, int y);
struct dpu_layerblend *dpu_lb_get(struct dpu_soc *dpu, int id);
void dpu_lb_put(struct dpu_layerblend *lb);
@@ -792,7 +795,9 @@ void fetchunit_set_src_stride(struct dpu_fetchunit *fu,
unsigned int width, unsigned int x_offset,
unsigned int mt_w, int bpp, unsigned int stride,
dma_addr_t baddr, bool use_prefetch);
-void fetchunit_set_pixel_blend_mode(struct dpu_fetchunit *fu, u32 fb_format);
+void fetchunit_set_pixel_blend_mode(struct dpu_fetchunit *fu,
+ unsigned int pixel_blend_mode, u16 alpha,
+ u32 fb_format);
void fetchunit_enable_src_buf(struct dpu_fetchunit *fu);
void fetchunit_disable_src_buf(struct dpu_fetchunit *fu);
bool fetchunit_is_enabled(struct dpu_fetchunit *fu);