gralloc: backport 1010102 and FP16 support to 8994

Bug: 35677008
Test: cts -m CtsHardwareTestCases -t
      android.hardware.cts.HardwareBufferTest#testCreate
Change-Id: I9fd0344c0f90e0f82191b21248f9f1542f135748
This commit is contained in:
Chia-I Wu 2017-02-24 09:02:36 -08:00
parent d6597f0204
commit 6228228cfc
1 changed files with 9 additions and 0 deletions

View File

@ -147,6 +147,8 @@ bool isUncompressedRgbFormat(int format)
case HAL_PIXEL_FORMAT_RGB_888:
case HAL_PIXEL_FORMAT_RGB_565:
case HAL_PIXEL_FORMAT_BGRA_8888:
case HAL_PIXEL_FORMAT_RGBA_1010102:
case HAL_PIXEL_FORMAT_RGBA_FP16:
case HAL_PIXEL_FORMAT_RGBA_5551:
case HAL_PIXEL_FORMAT_RGBA_4444:
case HAL_PIXEL_FORMAT_R_8:
@ -280,6 +282,9 @@ void AdrenoMemInfo::getGpuAlignedWidthHeight(int width, int height, int format,
int bpp = 4;
switch(format)
{
case HAL_PIXEL_FORMAT_RGBA_FP16:
bpp = 8;
break;
case HAL_PIXEL_FORMAT_RGB_888:
bpp = 3;
break;
@ -487,9 +492,13 @@ unsigned int getSize(int format, int width, int height, int usage,
unsigned int size = 0;
switch (format) {
case HAL_PIXEL_FORMAT_RGBA_FP16:
size = alignedw * alignedh * 8;
break;
case HAL_PIXEL_FORMAT_RGBA_8888:
case HAL_PIXEL_FORMAT_RGBX_8888:
case HAL_PIXEL_FORMAT_BGRA_8888:
case HAL_PIXEL_FORMAT_RGBA_1010102:
size = alignedw * alignedh * 4;
break;
case HAL_PIXEL_FORMAT_RGB_888: