diff options
author | Paul Kocialkowski <contact@paulk.fr> | 2013-12-31 18:51:04 +0100 |
---|---|---|
committer | Wolfgang Wiedmeyer <wolfgit@wiedmeyer.de> | 2015-12-15 15:16:51 +0100 |
commit | 841bce366de0ea0a3418476e9b97f2389b96df6c (patch) | |
tree | 700443ad74800991f28a48c3cca951f74075e150 | |
parent | f70bcf58e675cd2b6bf81dd3d51ed017e51c2b00 (diff) | |
download | hardware_libhardware-841bce366de0ea0a3418476e9b97f2389b96df6c.zip hardware_libhardware-841bce366de0ea0a3418476e9b97f2389b96df6c.tar.gz hardware_libhardware-841bce366de0ea0a3418476e9b97f2389b96df6c.tar.bz2 |
gralloc: Correct stride for maguro
Signed-off-by: Paul Kocialkowski <contact@paulk.fr>
-rw-r--r-- | modules/gralloc/Android.mk | 4 | ||||
-rw-r--r-- | modules/gralloc/gralloc.cpp | 9 |
2 files changed, 13 insertions, 0 deletions
diff --git a/modules/gralloc/Android.mk b/modules/gralloc/Android.mk index 092e851..727c99a 100644 --- a/modules/gralloc/Android.mk +++ b/modules/gralloc/Android.mk @@ -33,4 +33,8 @@ ifeq ($(TARGET_USE_PAN_DISPLAY),true) LOCAL_CFLAGS += -DUSE_PAN_DISPLAY=1 endif +ifeq ($(TARGET_DEVICE),maguro) + LOCAL_CFLAGS += -DTARGET_DEVICE_MAGURO +endif + include $(BUILD_SHARED_LIBRARY) diff --git a/modules/gralloc/gralloc.cpp b/modules/gralloc/gralloc.cpp index a9fbc80..892265c 100644 --- a/modules/gralloc/gralloc.cpp +++ b/modules/gralloc/gralloc.cpp @@ -230,6 +230,15 @@ static int gralloc_alloc(alloc_device_t* dev, int err; if (usage & GRALLOC_USAGE_HW_FB) { err = gralloc_alloc_framebuffer(dev, size, usage, pHandle); + +#ifdef TARGET_DEVICE_MAGURO + // PVR requires stride to be a multiple of 32 + // omap kernel drivers set line_length accordingly + // so we need to correct the stride here + // in case framebuffer width is not a multiple of 32 + stride += (31); + stride &= ~(31); +#endif } else { err = gralloc_alloc_buffer(dev, size, usage, pHandle); } |