diff options
author | Benet Clark <benetc@codeaurora.org> | 2016-04-01 10:45:46 -0700 |
---|---|---|
committer | Jeevan Shriram <jshriram@codeaurora.org> | 2016-05-20 19:23:44 -0700 |
commit | 474828cd364aeec55aec204e95e0b552ba12514d (patch) | |
tree | aa6119568c1dc661bd62605f7372479babcea952 /drivers/video/fbdev | |
parent | b1dd9f0c4c618723a85e799fd38bf4ce9885ba32 (diff) |
msm: mdss: Add newly supported writeback formats to MDP driver
Writeback display now supports more MDP formats. This change adds
the definitions for those formats.
CRs-Fixed: 978785
Change-Id: I72fc29a8d7b286b0766c0483ba69d6e02d29b661
Signed-off-by: Benet Clark <benetc@codeaurora.org>
Diffstat (limited to 'drivers/video/fbdev')
-rw-r--r-- | drivers/video/fbdev/msm/mdss_mdp_formats.h | 72 |
1 files changed, 62 insertions, 10 deletions
diff --git a/drivers/video/fbdev/msm/mdss_mdp_formats.h b/drivers/video/fbdev/msm/mdss_mdp_formats.h index 1865720ead06..a3a3434c9044 100644 --- a/drivers/video/fbdev/msm/mdss_mdp_formats.h +++ b/drivers/video/fbdev/msm/mdss_mdp_formats.h @@ -306,17 +306,26 @@ static struct mdss_mdp_format_params mdss_mdp_format_map[] = { VALID_MDP_WB_INTF_FORMAT | VALID_MDP_CURSOR_FORMAT, 0, C3_ALPHA, C2_R_Cr, C0_G_Y, C1_B_Cb), FMT_RGB_8888(MDP_ARGB_8888, MDSS_MDP_FETCH_LINEAR, VALID_ROT_WB_FORMAT | - VALID_MDP_CURSOR_FORMAT, 1, C3_ALPHA, C2_R_Cr, C0_G_Y, C1_B_Cb), + VALID_MDP_CURSOR_FORMAT | VALID_MDP_WB_INTF_FORMAT, + 1, C3_ALPHA, C2_R_Cr, C0_G_Y, C1_B_Cb), + FMT_RGB_8888(MDP_ABGR_8888, MDSS_MDP_FETCH_LINEAR, VALID_ROT_WB_FORMAT | + VALID_MDP_WB_INTF_FORMAT, 1, + C3_ALPHA, C1_B_Cb, C0_G_Y, C2_R_Cr), FMT_RGB_8888(MDP_RGBA_8888, MDSS_MDP_FETCH_LINEAR, VALID_ROT_WB_FORMAT | - VALID_MDP_CURSOR_FORMAT, 1, C2_R_Cr, C0_G_Y, C1_B_Cb, C3_ALPHA), + VALID_MDP_CURSOR_FORMAT | VALID_MDP_WB_INTF_FORMAT, 1, + C2_R_Cr, C0_G_Y, C1_B_Cb, C3_ALPHA), FMT_RGB_8888(MDP_RGBX_8888, MDSS_MDP_FETCH_LINEAR, VALID_ROT_WB_FORMAT | VALID_MDP_WB_INTF_FORMAT, 0, C2_R_Cr, C0_G_Y, C1_B_Cb, C3_ALPHA), FMT_RGB_8888(MDP_BGRA_8888, MDSS_MDP_FETCH_LINEAR, VALID_ROT_WB_FORMAT | - VALID_MDP_CURSOR_FORMAT, 1, C1_B_Cb, C0_G_Y, C2_R_Cr, C3_ALPHA), + VALID_MDP_CURSOR_FORMAT | VALID_MDP_WB_INTF_FORMAT, + 1, C1_B_Cb, C0_G_Y, C2_R_Cr, C3_ALPHA), FMT_RGB_8888(MDP_BGRX_8888, MDSS_MDP_FETCH_LINEAR, VALID_ROT_WB_FORMAT | VALID_MDP_WB_INTF_FORMAT, 0, C1_B_Cb, C0_G_Y, C2_R_Cr, C3_ALPHA), + FMT_RGB_8888(MDP_XBGR_8888, MDSS_MDP_FETCH_LINEAR, VALID_ROT_WB_FORMAT | + VALID_MDP_WB_INTF_FORMAT, 0, C3_ALPHA, C1_B_Cb, C0_G_Y, + C2_R_Cr), FMT_RGB_8888(MDP_RGBA_8888_TILE, MDSS_MDP_FETCH_TILE, VALID_ROT_WB_FORMAT, 1, C2_R_Cr, C0_G_Y, C1_B_Cb, C3_ALPHA), FMT_RGB_8888(MDP_ARGB_8888_TILE, MDSS_MDP_FETCH_TILE, @@ -341,11 +350,14 @@ static struct mdss_mdp_format_params mdss_mdp_format_map[] = { FMT_YUV_PSEUDO(MDP_Y_CRCB_H2V1, MDSS_MDP_FETCH_LINEAR, MDSS_MDP_CHROMA_H2V1, VALID_ROT_WB_FORMAT, C2_R_Cr, C1_B_Cb), FMT_YUV_PSEUDO(MDP_Y_CBCR_H2V1, MDSS_MDP_FETCH_LINEAR, - MDSS_MDP_CHROMA_H2V1, VALID_ROT_WB_FORMAT, C1_B_Cb, C2_R_Cr), + MDSS_MDP_CHROMA_H2V1, VALID_ROT_WB_FORMAT | + VALID_MDP_WB_INTF_FORMAT, C1_B_Cb, C2_R_Cr), FMT_YUV_PSEUDO(MDP_Y_CRCB_H1V2, MDSS_MDP_FETCH_LINEAR, - MDSS_MDP_CHROMA_H1V2, VALID_ROT_WB_FORMAT, C2_R_Cr, C1_B_Cb), + MDSS_MDP_CHROMA_H1V2, VALID_ROT_WB_FORMAT | + VALID_MDP_WB_INTF_FORMAT, C2_R_Cr, C1_B_Cb), FMT_YUV_PSEUDO(MDP_Y_CBCR_H1V2, MDSS_MDP_FETCH_LINEAR, - MDSS_MDP_CHROMA_H1V2, VALID_ROT_WB_FORMAT, C1_B_Cb, C2_R_Cr), + MDSS_MDP_CHROMA_H1V2, VALID_ROT_WB_FORMAT | + VALID_MDP_WB_INTF_FORMAT, C1_B_Cb, C2_R_Cr), FMT_YUV_PSEUDO(MDP_Y_CRCB_H2V2, MDSS_MDP_FETCH_LINEAR, MDSS_MDP_CHROMA_420, VALID_ROT_WB_FORMAT | VALID_MDP_WB_INTF_FORMAT, C2_R_Cr, C1_B_Cb), @@ -398,6 +410,7 @@ static struct mdss_mdp_format_params mdss_mdp_format_map[] = { }, { FMT_YUV_COMMON(MDP_YCBYCR_H2V1), + .flag = VALID_MDP_WB_INTF_FORMAT, .fetch_planes = MDSS_MDP_PLANE_INTERLEAVED, .chroma_sample = MDSS_MDP_CHROMA_H2V1, .unpack_count = 4, @@ -405,14 +418,53 @@ static struct mdss_mdp_format_params mdss_mdp_format_map[] = { .fetch_mode = MDSS_MDP_FETCH_LINEAR, .element = { C2_R_Cr, C0_G_Y, C1_B_Cb, C0_G_Y }, }, + { + FMT_YUV_COMMON(MDP_CRYCBY_H2V1), + .fetch_planes = MDSS_MDP_PLANE_INTERLEAVED, + .chroma_sample = MDSS_MDP_CHROMA_H2V1, + .unpack_count = 4, + .bpp = 2, + .fetch_mode = MDSS_MDP_FETCH_LINEAR, + .element = { C0_G_Y, C1_B_Cb, C0_G_Y, C2_R_Cr }, + }, FMT_RGB_1555(MDP_RGBA_5551, 1, VALID_ROT_WB_FORMAT | - VALID_MDP_CURSOR_FORMAT, C3_ALPHA, C1_B_Cb, C0_G_Y, C2_R_Cr), + VALID_MDP_CURSOR_FORMAT | VALID_MDP_WB_INTF_FORMAT, + C3_ALPHA, C1_B_Cb, C0_G_Y, C2_R_Cr), FMT_RGB_1555(MDP_ARGB_1555, 1, VALID_ROT_WB_FORMAT | - VALID_MDP_CURSOR_FORMAT, C1_B_Cb, C0_G_Y, C2_R_Cr, C3_ALPHA), + VALID_MDP_CURSOR_FORMAT | VALID_MDP_WB_INTF_FORMAT, + C1_B_Cb, C0_G_Y, C2_R_Cr, C3_ALPHA), + FMT_RGB_1555(MDP_ABGR_1555, 1, VALID_ROT_WB_FORMAT | + VALID_MDP_WB_INTF_FORMAT, C2_R_Cr, C0_G_Y, C1_B_Cb, C3_ALPHA), + FMT_RGB_1555(MDP_BGRA_5551, 1, VALID_ROT_WB_FORMAT | + VALID_MDP_WB_INTF_FORMAT, C3_ALPHA, C2_R_Cr, C0_G_Y, C1_B_Cb), + FMT_RGB_1555(MDP_BGRX_5551, 0, VALID_ROT_WB_FORMAT | + VALID_MDP_WB_INTF_FORMAT, C3_ALPHA, C2_R_Cr, C0_G_Y, C1_B_Cb), + FMT_RGB_1555(MDP_RGBX_5551, 0, VALID_ROT_WB_FORMAT | + VALID_MDP_WB_INTF_FORMAT, C3_ALPHA, C1_B_Cb, C0_G_Y, C2_R_Cr), + FMT_RGB_1555(MDP_XBGR_1555, 0, VALID_ROT_WB_FORMAT | + VALID_MDP_WB_INTF_FORMAT, C2_R_Cr, C0_G_Y, C1_B_Cb, C3_ALPHA), + FMT_RGB_1555(MDP_XRGB_1555, 0, VALID_ROT_WB_FORMAT | + VALID_MDP_WB_INTF_FORMAT, C1_B_Cb, C0_G_Y, C2_R_Cr, C3_ALPHA), + FMT_RGB_4444(MDP_ABGR_4444, 1, VALID_ROT_WB_FORMAT | + VALID_MDP_WB_INTF_FORMAT, C2_R_Cr, C0_G_Y, C1_B_Cb, C3_ALPHA), + FMT_RGB_4444(MDP_BGRA_4444, 1, VALID_ROT_WB_FORMAT | + VALID_MDP_CURSOR_FORMAT | VALID_MDP_WB_INTF_FORMAT, + C3_ALPHA, C2_R_Cr, C0_G_Y, C1_B_Cb), + FMT_RGB_4444(MDP_BGRX_4444, 0, VALID_ROT_WB_FORMAT | + VALID_MDP_WB_INTF_FORMAT, C3_ALPHA, C2_R_Cr, C0_G_Y, C1_B_Cb), + FMT_RGB_4444(MDP_RGBX_4444, 0, VALID_ROT_WB_FORMAT | + VALID_MDP_WB_INTF_FORMAT, C3_ALPHA, C1_B_Cb, C0_G_Y, C2_R_Cr), + FMT_RGB_4444(MDP_XBGR_4444, 0, VALID_ROT_WB_FORMAT | + VALID_MDP_WB_INTF_FORMAT, C2_R_Cr, C0_G_Y, C1_B_Cb, C3_ALPHA), + FMT_RGB_4444(MDP_XRGB_4444, 0, VALID_ROT_WB_FORMAT | + VALID_MDP_WB_INTF_FORMAT, C1_B_Cb, C0_G_Y, C2_R_Cr, C3_ALPHA), + FMT_RGB_4444(MDP_RGBA_4444, 1, VALID_ROT_WB_FORMAT | - VALID_MDP_CURSOR_FORMAT, C3_ALPHA, C1_B_Cb, C0_G_Y, C2_R_Cr), + VALID_MDP_CURSOR_FORMAT | VALID_MDP_WB_INTF_FORMAT, + C3_ALPHA, C1_B_Cb, C0_G_Y, C2_R_Cr), FMT_RGB_4444(MDP_ARGB_4444, 1, VALID_ROT_WB_FORMAT | - VALID_MDP_CURSOR_FORMAT, C1_B_Cb, C0_G_Y, C2_R_Cr, C3_ALPHA), + VALID_MDP_CURSOR_FORMAT | VALID_MDP_WB_INTF_FORMAT, + C1_B_Cb, C0_G_Y, C2_R_Cr, C3_ALPHA), FMT_RGB_2101010(MDP_RGBA_1010102, MDSS_MDP_FETCH_LINEAR, VALID_ROT_WB_FORMAT | VALID_MDP_WB_INTF_FORMAT, 1, |