diff options
author | Jean-Baptiste Queru <jbq@google.com> | 2011-04-05 11:27:14 -0700 |
---|---|---|
committer | Android Git Automerger <android-git-automerger@android.com> | 2011-04-05 11:27:14 -0700 |
commit | c9881d8c5631faa85ff24668df9cb82921528d69 (patch) | |
tree | e445b18e064b748d51bcca08760b1a29f06ae57a /modules | |
parent | 54f9dd032dfbd336ca90e3b44047373f0297c3a5 (diff) | |
parent | cb4ea7ac8af7ac0732f480dc4938e62566bd5550 (diff) | |
download | hardware_libhardware-c9881d8c5631faa85ff24668df9cb82921528d69.zip hardware_libhardware-c9881d8c5631faa85ff24668df9cb82921528d69.tar.gz hardware_libhardware-c9881d8c5631faa85ff24668df9cb82921528d69.tar.bz2 |
am cb4ea7ac: am 7b584867: am cd347fdf: Allow to force 16bpp when 32bpp has problems
* commit 'cb4ea7ac8af7ac0732f480dc4938e62566bd5550':
Allow to force 16bpp when 32bpp has problems
Diffstat (limited to 'modules')
-rw-r--r-- | modules/gralloc/Android.mk | 3 | ||||
-rw-r--r-- | modules/gralloc/framebuffer.cpp | 18 |
2 files changed, 21 insertions, 0 deletions
diff --git a/modules/gralloc/Android.mk b/modules/gralloc/Android.mk index 9360dbd..1e1e05f 100644 --- a/modules/gralloc/Android.mk +++ b/modules/gralloc/Android.mk @@ -32,5 +32,8 @@ LOCAL_CFLAGS:= -DLOG_TAG=\"gralloc\" ifeq ($(BOARD_NO_PAGE_FLIPPING),true) LOCAL_CFLAGS += -DNO_PAGE_FLIPPING endif +ifeq ($(BOARD_NO_32BPP),true) +LOCAL_CFLAGS += -DNO_32BPP +endif include $(BUILD_SHARED_LIBRARY) diff --git a/modules/gralloc/framebuffer.cpp b/modules/gralloc/framebuffer.cpp index e1323c2..fe57a8a 100644 --- a/modules/gralloc/framebuffer.cpp +++ b/modules/gralloc/framebuffer.cpp @@ -176,6 +176,21 @@ int mapFrameBufferLocked(struct private_module_t* module) info.yoffset = 0; info.activate = FB_ACTIVATE_NOW; +#if defined(NO_32BPP) + /* + * Explicitly request 5/6/5 + */ + info.bits_per_pixel = 16; + info.red.offset = 11; + info.red.length = 5; + info.green.offset = 5; + info.green.length = 6; + info.blue.offset = 0; + info.blue.length = 5; + info.transp.offset = 0; + info.transp.length = 0; +#endif + /* * Request NUM_BUFFERS screens (at lest 2 for page flipping) */ @@ -342,6 +357,9 @@ int fb_device_open(hw_module_t const* module, const char* name, int format = (m->info.bits_per_pixel == 32) ? HAL_PIXEL_FORMAT_RGBX_8888 : HAL_PIXEL_FORMAT_RGB_565; +#ifdef NO_32BPP + format = HAL_PIXEL_FORMAT_RGB_565; +#endif const_cast<uint32_t&>(dev->device.flags) = 0; const_cast<uint32_t&>(dev->device.width) = m->info.xres; const_cast<uint32_t&>(dev->device.height) = m->info.yres; |