Merge "msm: sde: Updating linear format definition for v4l2 rotator" into msm-4.8
diff --git a/drivers/media/platform/msm/sde/rotator/sde_rotator_dev.c b/drivers/media/platform/msm/sde/rotator/sde_rotator_dev.c
index ef3194a..3f463ef 100644
--- a/drivers/media/platform/msm/sde/rotator/sde_rotator_dev.c
+++ b/drivers/media/platform/msm/sde/rotator/sde_rotator_dev.c
@@ -90,10 +90,42 @@
.pixelformat = SDE_PIX_FMT_BGRX_8888,
},
{
+ .description = "SDE/XBGR_8888",
+ .pixelformat = SDE_PIX_FMT_XBGR_8888,
+ },
+ {
.description = "RGBA_5551",
.pixelformat = SDE_PIX_FMT_RGBA_5551,
},
{
+ .description = "ARGB_1555",
+ .pixelformat = SDE_PIX_FMT_ARGB_1555,
+ },
+ {
+ .description = "ABGR_1555",
+ .pixelformat = SDE_PIX_FMT_ABGR_1555,
+ },
+ {
+ .description = "BGRA_5551",
+ .pixelformat = SDE_PIX_FMT_BGRA_5551,
+ },
+ {
+ .description = "BGRX_5551",
+ .pixelformat = SDE_PIX_FMT_BGRX_5551,
+ },
+ {
+ .description = "RGBX_5551",
+ .pixelformat = SDE_PIX_FMT_RGBX_5551,
+ },
+ {
+ .description = "XBGR_1555",
+ .pixelformat = SDE_PIX_FMT_XBGR_1555,
+ },
+ {
+ .description = "XRGB_1555",
+ .pixelformat = SDE_PIX_FMT_XRGB_1555,
+ },
+ {
.description = "ARGB_4444",
.pixelformat = SDE_PIX_FMT_ARGB_4444,
},
@@ -102,6 +134,30 @@
.pixelformat = SDE_PIX_FMT_RGBA_4444,
},
{
+ .description = "BGRA_4444",
+ .pixelformat = SDE_PIX_FMT_BGRA_4444,
+ },
+ {
+ .description = "ABGR_4444",
+ .pixelformat = SDE_PIX_FMT_ABGR_4444,
+ },
+ {
+ .description = "RGBX_4444",
+ .pixelformat = SDE_PIX_FMT_RGBX_4444,
+ },
+ {
+ .description = "XRGB_4444",
+ .pixelformat = SDE_PIX_FMT_XRGB_4444,
+ },
+ {
+ .description = "BGRX_4444",
+ .pixelformat = SDE_PIX_FMT_BGRX_4444,
+ },
+ {
+ .description = "XBGR_4444",
+ .pixelformat = SDE_PIX_FMT_XBGR_4444,
+ },
+ {
.description = "RGB_888",
.pixelformat = SDE_PIX_FMT_RGB_888,
},
diff --git a/drivers/media/platform/msm/sde/rotator/sde_rotator_formats.c b/drivers/media/platform/msm/sde/rotator/sde_rotator_formats.c
index 8e57933..5318c9d 100644
--- a/drivers/media/platform/msm/sde/rotator/sde_rotator_formats.c
+++ b/drivers/media/platform/msm/sde/rotator/sde_rotator_formats.c
@@ -318,6 +318,10 @@
SDE_PIX_FMT_BGRX_8888, SDE_MDP_FMT_LINEAR,
VALID_ROT_WB_ALL | VALID_MDP_WB_INTF_FORMAT,
0, C1_B_Cb, C0_G_Y, C2_R_Cr, C3_ALPHA, SDE_MDP_COMPRESS_NONE),
+ FMT_RGB_8888(
+ SDE_PIX_FMT_XBGR_8888, SDE_MDP_FMT_LINEAR,
+ VALID_ROT_WB_ALL | VALID_MDP_WB_INTF_FORMAT,
+ 0, C3_ALPHA, C1_B_Cb, C0_G_Y, C2_R_Cr, SDE_MDP_COMPRESS_NONE),
FMT_YUV_PSEUDO(SDE_PIX_FMT_Y_CRCB_H2V1, SDE_MDP_FMT_LINEAR,
SDE_MDP_CHROMA_H2V1, SDE_MDP_PIXEL_NORMAL,
@@ -401,10 +405,36 @@
},
FMT_RGB_1555(SDE_PIX_FMT_RGBA_5551, 1, VALID_ROT_WB_ALL,
C3_ALPHA, C1_B_Cb, C0_G_Y, C2_R_Cr),
+ FMT_RGB_1555(SDE_PIX_FMT_ARGB_1555, 1, VALID_ROT_WB_ALL,
+ C1_B_Cb, C0_G_Y, C2_R_Cr, C3_ALPHA),
+ FMT_RGB_1555(SDE_PIX_FMT_ABGR_1555, 1, VALID_ROT_WB_ALL,
+ C2_R_Cr, C0_G_Y, C1_B_Cb, C3_ALPHA),
+ FMT_RGB_1555(SDE_PIX_FMT_BGRA_5551, 1, VALID_ROT_WB_ALL,
+ C3_ALPHA, C2_R_Cr, C0_G_Y, C1_B_Cb),
+ FMT_RGB_1555(SDE_PIX_FMT_BGRX_5551, 0, VALID_ROT_WB_ALL,
+ C3_ALPHA, C2_R_Cr, C0_G_Y, C1_B_Cb),
+ FMT_RGB_1555(SDE_PIX_FMT_RGBX_5551, 0, VALID_ROT_WB_ALL,
+ C3_ALPHA, C1_B_Cb, C0_G_Y, C2_R_Cr),
+ FMT_RGB_1555(SDE_PIX_FMT_XBGR_1555, 0, VALID_ROT_WB_ALL,
+ C2_R_Cr, C0_G_Y, C1_B_Cb, C3_ALPHA),
+ FMT_RGB_1555(SDE_PIX_FMT_XRGB_1555, 0, VALID_ROT_WB_ALL,
+ C1_B_Cb, C0_G_Y, C2_R_Cr, C3_ALPHA),
FMT_RGB_4444(SDE_PIX_FMT_RGBA_4444, 1, VALID_ROT_WB_ALL,
C3_ALPHA, C1_B_Cb, C0_G_Y, C2_R_Cr),
FMT_RGB_4444(SDE_PIX_FMT_ARGB_4444, 1, VALID_ROT_WB_ALL,
C1_B_Cb, C0_G_Y, C2_R_Cr, C3_ALPHA),
+ FMT_RGB_4444(SDE_PIX_FMT_BGRA_4444, 1, VALID_ROT_WB_ALL,
+ C3_ALPHA, C2_R_Cr, C0_G_Y, C1_B_Cb),
+ FMT_RGB_4444(SDE_PIX_FMT_ABGR_4444, 1, VALID_ROT_WB_ALL,
+ C2_R_Cr, C0_G_Y, C1_B_Cb, C3_ALPHA),
+ FMT_RGB_4444(SDE_PIX_FMT_RGBX_4444, 0, VALID_ROT_WB_ALL,
+ C3_ALPHA, C1_B_Cb, C0_G_Y, C2_R_Cr),
+ FMT_RGB_4444(SDE_PIX_FMT_XRGB_4444, 0, VALID_ROT_WB_ALL,
+ C1_B_Cb, C0_G_Y, C2_R_Cr, C3_ALPHA),
+ FMT_RGB_4444(SDE_PIX_FMT_BGRX_4444, 0, VALID_ROT_WB_ALL,
+ C3_ALPHA, C2_R_Cr, C0_G_Y, C1_B_Cb),
+ FMT_RGB_4444(SDE_PIX_FMT_XBGR_4444, 0, VALID_ROT_WB_ALL,
+ C2_R_Cr, C0_G_Y, C1_B_Cb, C3_ALPHA),
FMT_RGB_1010102(SDE_PIX_FMT_RGBA_1010102, SDE_MDP_FMT_LINEAR,
VALID_ROT_R3_WB_FORMAT | VALID_MDP_WB_INTF_FORMAT,
1, C2_R_Cr, C0_G_Y, C1_B_Cb, C3_ALPHA, SDE_MDP_COMPRESS_NONE),
diff --git a/include/uapi/media/msm_sde_rotator.h b/include/uapi/media/msm_sde_rotator.h
index d80512c..ce62e25 100644
--- a/include/uapi/media/msm_sde_rotator.h
+++ b/include/uapi/media/msm_sde_rotator.h
@@ -13,9 +13,23 @@
#define SDE_PIX_FMT_BGRA_8888 V4L2_PIX_FMT_ARGB32
#define SDE_PIX_FMT_RGBX_8888 v4l2_fourcc('X', 'B', '2', '4')
#define SDE_PIX_FMT_BGRX_8888 V4L2_PIX_FMT_XRGB32
+#define SDE_PIX_FMT_XBGR_8888 v4l2_fourcc('R', 'X', '2', '4')
#define SDE_PIX_FMT_RGBA_5551 v4l2_fourcc('R', 'A', '1', '5')
+#define SDE_PIX_FMT_ARGB_1555 V4L2_PIX_FMT_ARGB555
+#define SDE_PIX_FMT_ABGR_1555 v4l2_fourcc('A', 'B', '1', '5')
+#define SDE_PIX_FMT_BGRA_5551 v4l2_fourcc('B', 'A', '1', '5')
+#define SDE_PIX_FMT_BGRX_5551 v4l2_fourcc('B', 'X', '1', '5')
+#define SDE_PIX_FMT_RGBX_5551 v4l2_fourcc('R', 'X', '1', '5')
+#define SDE_PIX_FMT_XBGR_1555 v4l2_fourcc('X', 'B', '1', '5')
+#define SDE_PIX_FMT_XRGB_1555 V4L2_PIX_FMT_XRGB555
#define SDE_PIX_FMT_ARGB_4444 V4L2_PIX_FMT_ARGB444
#define SDE_PIX_FMT_RGBA_4444 v4l2_fourcc('R', 'A', '1', '2')
+#define SDE_PIX_FMT_BGRA_4444 v4l2_fourcc('B', 'A', '1', '2')
+#define SDE_PIX_FMT_ABGR_4444 v4l2_fourcc('A', 'B', '1', '2')
+#define SDE_PIX_FMT_RGBX_4444 v4l2_fourcc('R', 'X', '1', '2')
+#define SDE_PIX_FMT_XRGB_4444 V4L2_PIX_FMT_XRGB444
+#define SDE_PIX_FMT_BGRX_4444 v4l2_fourcc('B', 'X', '1', '2')
+#define SDE_PIX_FMT_XBGR_4444 v4l2_fourcc('X', 'B', '1', '2')
#define SDE_PIX_FMT_RGB_888 V4L2_PIX_FMT_RGB24
#define SDE_PIX_FMT_BGR_888 V4L2_PIX_FMT_BGR24
#define SDE_PIX_FMT_RGB_565 V4L2_PIX_FMT_RGB565