summaryrefslogtreecommitdiff
path: root/exynos
diff options
context:
space:
mode:
authorTobias Jakobi <tjakobi@math.uni-bielefeld.de>2015-02-24 16:29:38 +0100
committerEmil Velikov <emil.l.velikov@gmail.com>2015-03-10 19:23:49 +0000
commit0d48697e7c10345f940b74de1cd476ec987058bb (patch)
tree6e798bcc555bccfa14bfd6e2252013c650ada848 /exynos
parent81b71e48e753ac3327a86e773f00d4955b6c21ab (diff)
exynos: fimg2d: introduce G2D_OP_INTERPOLATE
This sets up the blending equation in the following way: out = src * src_alpha + dst * (1 - src_alpha) Signed-off-by: Tobias Jakobi <tjakobi@math.uni-bielefeld.de> Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com> Tested-by: Joonyoung Shim <jy0922.shim@samsung.com>
Diffstat (limited to 'exynos')
-rw-r--r--exynos/exynos_fimg2d.c4
-rw-r--r--exynos/fimg2d.h1
2 files changed, 5 insertions, 0 deletions
diff --git a/exynos/exynos_fimg2d.c b/exynos/exynos_fimg2d.c
index 398a8442..697ab16b 100644
--- a/exynos/exynos_fimg2d.c
+++ b/exynos/exynos_fimg2d.c
@@ -87,6 +87,10 @@ static unsigned int g2d_get_blend_op(enum e_g2d_op op)
SET_BF(val, G2D_COEFF_MODE_ONE, 0, 0, 0,
G2D_COEFF_MODE_SRC_ALPHA, 1, 0, 0);
break;
+ case G2D_OP_INTERPOLATE:
+ SET_BF(val, G2D_COEFF_MODE_SRC_ALPHA, 0, 0, 0,
+ G2D_COEFF_MODE_SRC_ALPHA, 1, 0, 0);
+ break;
default:
fprintf(stderr, "Not support operation(%d).\n", op);
SET_BF(val, G2D_COEFF_MODE_ONE, 0, 0, 0, G2D_COEFF_MODE_ZERO,
diff --git a/exynos/fimg2d.h b/exynos/fimg2d.h
index d98f7bc8..c6d67caf 100644
--- a/exynos/fimg2d.h
+++ b/exynos/fimg2d.h
@@ -142,6 +142,7 @@ enum e_g2d_op {
G2D_OP_SRC = 0x01,
G2D_OP_DST = 0x02,
G2D_OP_OVER = 0x03,
+ G2D_OP_INTERPOLATE = 0x04,
G2D_OP_DISJOINT_CLEAR = 0x10,
G2D_OP_DISJOINT_SRC = 0x11,
G2D_OP_DISJOINT_DST = 0x12,