mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-07 19:30:30 +09:00
video/rockchip: rga2: Add src/dst/dst_over blend modes.
Signed-off-by: Yu Qiaowei <cerf.yu@rock-chips.com> Change-Id: If6d46c7e3c9883b7be16ace4e8fd36ab61a7ca67
This commit is contained in:
@@ -1138,8 +1138,12 @@ void RGA_MSG_2_RGA2_MSG(struct rga_req *req_rga, struct rga2_req *req)
|
||||
case 0: //dst = 0
|
||||
break;
|
||||
case 1: //dst = src
|
||||
req->alpha_mode_0 = 0x0A1A;
|
||||
req->alpha_mode_1 = 0x0A1A;
|
||||
break;
|
||||
case 2: //dst = dst
|
||||
req->alpha_mode_0 = 0x1A0A;
|
||||
req->alpha_mode_1 = 0x1A0A;
|
||||
break;
|
||||
case 3: //dst = (256*sc + (256 - sa)*dc) >> 8
|
||||
if((req_rga->alpha_rop_mode & 3) == 0) {
|
||||
@@ -1162,6 +1166,8 @@ void RGA_MSG_2_RGA2_MSG(struct rga_req *req_rga, struct rga2_req *req)
|
||||
req->alpha_mode_1 = alpha_mode_1;
|
||||
break;
|
||||
case 4: //dst = (sc*(256-da) + 256*dc) >> 8
|
||||
req->alpha_mode_0 = 0x1232;
|
||||
req->alpha_mode_1 = 0x1232;
|
||||
break;
|
||||
case 5: //dst = (da*sc) >> 8
|
||||
break;
|
||||
@@ -1348,8 +1354,12 @@ void RGA_MSG_2_RGA2_MSG_32(struct rga_req_32 *req_rga, struct rga2_req *req)
|
||||
case 0: //dst = 0
|
||||
break;
|
||||
case 1: //dst = src
|
||||
req->alpha_mode_0 = 0x0A1A;
|
||||
req->alpha_mode_1 = 0x0A1A;
|
||||
break;
|
||||
case 2: //dst = dst
|
||||
req->alpha_mode_0 = 0x1A0A;
|
||||
req->alpha_mode_1 = 0x1A0A;
|
||||
break;
|
||||
case 3: //dst = (256*sc + (256 - sa)*dc) >> 8
|
||||
if((req_rga->alpha_rop_mode & 3) == 0) {
|
||||
@@ -1372,6 +1382,8 @@ void RGA_MSG_2_RGA2_MSG_32(struct rga_req_32 *req_rga, struct rga2_req *req)
|
||||
req->alpha_mode_1 = alpha_mode_1;
|
||||
break;
|
||||
case 4: //dst = (sc*(256-da) + 256*dc) >> 8
|
||||
req->alpha_mode_0 = 0x1232;
|
||||
req->alpha_mode_1 = 0x1232;
|
||||
break;
|
||||
case 5: //dst = (da*sc) >> 8
|
||||
break;
|
||||
|
||||
Reference in New Issue
Block a user