liboverlay: Update format translation.
Update format translation from HAL to MDP.
Add support for RGB_888, YCbCr_444_SP, YCrCb_444_SP formats.
Change-Id: Ic3f0ff96a8f587feaa82b5dd80fb52aa53199495
Acked-by: Saurabh Shah <saurshah@codeaurora.org>
diff --git a/liboverlay/overlayUtils.cpp b/liboverlay/overlayUtils.cpp
index ce18174..161f05c 100644
--- a/liboverlay/overlayUtils.cpp
+++ b/liboverlay/overlayUtils.cpp
@@ -149,31 +149,50 @@
}
//--------------------------------------------------------
-
+//Refer to graphics.h, gralloc_priv.h, msm_mdp.h
int getMdpFormat(int format) {
switch (format) {
+ //From graphics.h
case HAL_PIXEL_FORMAT_RGBA_8888 :
return MDP_RGBA_8888;
- case HAL_PIXEL_FORMAT_BGRA_8888:
- return MDP_BGRA_8888;
- case HAL_PIXEL_FORMAT_RGB_565:
- return MDP_RGB_565;
case HAL_PIXEL_FORMAT_RGBX_8888:
return MDP_RGBX_8888;
- case HAL_PIXEL_FORMAT_YCbCr_422_SP:
- return MDP_Y_CBCR_H2V1;
- case HAL_PIXEL_FORMAT_YCrCb_422_SP:
- return MDP_Y_CRCB_H2V1;
- case HAL_PIXEL_FORMAT_YCbCr_420_SP:
- return MDP_Y_CBCR_H2V2;
- case HAL_PIXEL_FORMAT_YCrCb_420_SP:
- return MDP_Y_CRCB_H2V2;
- case HAL_PIXEL_FORMAT_YCbCr_420_SP_TILED:
- return MDP_Y_CBCR_H2V2_TILE;
+ case HAL_PIXEL_FORMAT_RGB_888:
+ return MDP_RGB_888;
+ case HAL_PIXEL_FORMAT_RGB_565:
+ return MDP_RGB_565;
+ case HAL_PIXEL_FORMAT_BGRA_8888:
+ return MDP_BGRA_8888;
case HAL_PIXEL_FORMAT_YV12:
return MDP_Y_CR_CB_H2V2;
+ case HAL_PIXEL_FORMAT_YCbCr_422_SP:
+ return MDP_Y_CBCR_H2V1;
+ case HAL_PIXEL_FORMAT_YCrCb_420_SP:
+ return MDP_Y_CRCB_H2V2;
+
+ //From gralloc_priv.h
+ case HAL_PIXEL_FORMAT_YCbCr_420_SP_TILED:
+ return MDP_Y_CBCR_H2V2_TILE;
+ case HAL_PIXEL_FORMAT_YCbCr_420_SP:
+ return MDP_Y_CBCR_H2V2;
+ case HAL_PIXEL_FORMAT_YCrCb_422_SP:
+ return MDP_Y_CRCB_H2V1;
+ case HAL_PIXEL_FORMAT_YCbCr_444_SP:
+ return MDP_Y_CBCR_H1V1;
+ case HAL_PIXEL_FORMAT_YCrCb_444_SP:
+ return MDP_Y_CRCB_H1V1;
+
default:
- ALOGE("Error getMdpFormat format=0x%x", format);
+ //Unsupported by MDP
+ //---graphics.h--------
+ //HAL_PIXEL_FORMAT_RGBA_5551
+ //HAL_PIXEL_FORMAT_RGBA_4444
+ //HAL_PIXEL_FORMAT_YCbCr_422_I
+ //---gralloc_priv.h-----
+ //HAL_PIXEL_FORMAT_YCrCb_420_SP_ADRENO = 0x7FA30C01
+ //HAL_PIXEL_FORMAT_R_8 = 0x10D
+ //HAL_PIXEL_FORMAT_RG_88 = 0x10E
+ ALOGE("%s: Unsupported format = 0x%x", __func__, format);
return -1;
}
// not reached