diff options
author | David 'Digit' Turner <digit@google.com> | 2011-01-17 14:57:46 -0800 |
---|---|---|
committer | Android Git Automerger <android-git-automerger@android.com> | 2011-01-17 14:57:46 -0800 |
commit | 3629275560f4a952cedd69c76b7b96b3b490f6f6 (patch) | |
tree | 6207f3d020cd4d3afd9ec881734cb141556c4df1 | |
parent | f540c44fc218bffcdfbc226187d3cdc08e213c32 (diff) | |
parent | 25b68b5c24e443c326af73a33cea6dc45e845254 (diff) | |
download | libhardware-3629275560f4a952cedd69c76b7b96b3b490f6f6.tar.gz |
am 25b68b5c: gralloc: Add support for 32-bit framebuffers.
* commit '25b68b5c24e443c326af73a33cea6dc45e845254':
gralloc: Add support for 32-bit framebuffers.
-rw-r--r-- | modules/gralloc/framebuffer.cpp | 18 |
1 files changed, 4 insertions, 14 deletions
diff --git a/modules/gralloc/framebuffer.cpp b/modules/gralloc/framebuffer.cpp index 59c5001f..e1323c2f 100644 --- a/modules/gralloc/framebuffer.cpp +++ b/modules/gralloc/framebuffer.cpp @@ -177,19 +177,6 @@ int mapFrameBufferLocked(struct private_module_t* module) info.activate = FB_ACTIVATE_NOW; /* - * 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; - - /* * Request NUM_BUFFERS screens (at lest 2 for page flipping) */ info.yres_virtual = info.yres * NUM_BUFFERS; @@ -352,11 +339,14 @@ int fb_device_open(hw_module_t const* module, const char* name, status = mapFrameBuffer(m); if (status >= 0) { int stride = m->finfo.line_length / (m->info.bits_per_pixel >> 3); + int format = (m->info.bits_per_pixel == 32) + ? HAL_PIXEL_FORMAT_RGBX_8888 + : HAL_PIXEL_FORMAT_RGB_565; 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; const_cast<int&>(dev->device.stride) = stride; - const_cast<int&>(dev->device.format) = HAL_PIXEL_FORMAT_RGB_565; + const_cast<int&>(dev->device.format) = format; const_cast<float&>(dev->device.xdpi) = m->xdpi; const_cast<float&>(dev->device.ydpi) = m->ydpi; const_cast<float&>(dev->device.fps) = m->fps; |