Revert "Add support for allocating YUV formats"
This reverts commit 7b1f00a95490552131d06a13b78c279f6c779a1a.
This commit is contained in:
parent
71b0030f5a
commit
f239678637
38
gralloc.cpp
38
gralloc.cpp
@ -338,10 +338,6 @@ try_ashmem:
|
||||
|
||||
/*****************************************************************************/
|
||||
|
||||
static inline size_t ALIGN(size_t x, size_t align) {
|
||||
return (x + align-1) & (align-1);
|
||||
}
|
||||
|
||||
static int gralloc_alloc(alloc_device_t* dev,
|
||||
int w, int h, int format, int usage,
|
||||
buffer_handle_t* pHandle, int* pStride)
|
||||
@ -351,47 +347,27 @@ static int gralloc_alloc(alloc_device_t* dev,
|
||||
|
||||
size_t size, alignedw, alignedh;
|
||||
|
||||
alignedw = ALIGN(w, 32);
|
||||
alignedh = ALIGN(h, 32);
|
||||
alignedw = (w + 31) & ~31;
|
||||
alignedh = (h + 31) & ~31;
|
||||
int bpp = 0;
|
||||
switch (format) {
|
||||
case HAL_PIXEL_FORMAT_RGBA_8888:
|
||||
case HAL_PIXEL_FORMAT_RGBX_8888:
|
||||
case HAL_PIXEL_FORMAT_BGRA_8888:
|
||||
size = alignedw * alignedh * 4;
|
||||
bpp = 4;
|
||||
break;
|
||||
case HAL_PIXEL_FORMAT_RGB_888:
|
||||
size = alignedw * alignedh * 3;
|
||||
bpp = 3;
|
||||
break;
|
||||
case HAL_PIXEL_FORMAT_RGB_565:
|
||||
case HAL_PIXEL_FORMAT_RGBA_5551:
|
||||
case HAL_PIXEL_FORMAT_RGBA_4444:
|
||||
size = alignedw * alignedh * 2;
|
||||
bpp = 2;
|
||||
break;
|
||||
|
||||
// adreno formats
|
||||
case HAL_PIXEL_FORMAT_YCrCb_420_SP: // NV21
|
||||
size = ALIGN(alignedw*alignedh, 4096);
|
||||
size += ALIGN(2 * ALIGN(w/2, 32) * ALIGN(h/2, 32), 4096);
|
||||
break;
|
||||
case HAL_PIXEL_FORMAT_YCbCr_422_I: // YUYV
|
||||
case HAL_PIXEL_FORMAT_CbYCrY_422_I: // UYVY
|
||||
size = ALIGN(alignedw*alignedh*2, 4096);
|
||||
break;
|
||||
case HAL_PIXEL_FORMAT_YCrCb_422_P: // YV12
|
||||
size = ALIGN(alignedw*alignedh, 4096);
|
||||
size += ALIGN(2 * ALIGN(w/2, 32) * ALIGN(h, 32), 4096) * 2;
|
||||
break;
|
||||
case HAL_PIXEL_FORMAT_YCbCr_420_SP_TILED: // NV12
|
||||
case HAL_PIXEL_FORMAT_YCrCb_420_SP_TILED: // NV21
|
||||
// The chroma plane is subsampled,
|
||||
// but the pitch in bytes is unchanged
|
||||
size = ALIGN( ALIGN(w, 128) * alignedh, 4096);
|
||||
size += ALIGN( ALIGN(w, 128) * ALIGN(h/2, 32), 4096);
|
||||
break;
|
||||
|
||||
default:
|
||||
return -EINVAL;
|
||||
}
|
||||
size = alignedw * alignedh * bpp;
|
||||
|
||||
if ((ssize_t)size <= 0)
|
||||
return -EINVAL;
|
||||
|
Loading…
x
Reference in New Issue
Block a user