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>
main
Tobias Jakobi 2015-02-24 16:29:38 +01:00 committed by Emil Velikov
parent 81b71e48e7
commit 0d48697e7c
2 changed files with 5 additions and 0 deletions

View File

@ -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,

View File

@ -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,