Check the PMEM_ADSP flag during the terminateBuffer and gralloc_unmap
operations.
CRs-fixed: 296807, 298849, 296817
Change-Id: Ia97aca71935ca3c921f53fc88f5b4f918d7434c0
- Remove unused GRALLOC_USAGE_PRIVATE_PMEM flag. This flag is no
longer used.
- Flush ashmem region cache instead of Invalidating it.
(cherry picked from commit 12254ff74f5a97dcf5ded90f53e9d6fd0fa47b9c)
Change-Id: I92e4dcd8c89eb9ae0c0484f039d152b7bbb28bbe
Whenever there is a change in the buffer geometry, set a flag in the
gralloc handle stating that the buffer geometry has changed.
In the HWC, whenever we encounter an update in the geometry, if the
channel is already open, we just call the necessary ioctls to update
the overlay information and not unnecessarily open/close channels.
Change-Id: I27db8fc497ebc514e262d6b7854739f312644714
The new perform api will update the width, height and
format of the buffer in the gralloc handle.
The GRALLOC_MODULE_PERFORM_DECIDE_PUSH_BUFFER_HANDLING perform
is not longer used in Honeycomb. Remove unused code.
CRs-fixed: 283849
Update the gralloc HAL to match commit:
commit 4d3c9ca6fabf2b0111ef6b567df7d244e124b9c2
Author: Arun Kumar K.R <akkr@codeaurora.org>
Date: Fri Dec 17 13:14:58 2010 -0800
libgralloc-qsd8k: Add support for non-aligned width on HDMI
While creating overlay channel for HDMI consider the aligned
width and set the crop rectangle to the actual width and height.
Change-Id: I8858d71bb10b2be4c57edb605b5da680f53051dc
PRIV_FLAGS_NEEDS_FLUSH will trigger an ioctl call into the PMEM
driver in unlock(), so it makes not sense to set this flag for
non pmem buffers.
Change-Id: Ie1e077c10df86d3689b82fa6ce5d6c856fc95688
The purpose of this change is to add support for allocating gralloc buffers
from either /dev/pmem or /dev/pmem_adsp depending on the usage flags. It does
this by factoring out and abstracting the interactions with the pmem device.
For /dev/pmem allocations, the kernel allocator is not used, so a single master
fd is opened, and all the allocations are sub-allocated from that by gralloc.
For /dev/pmem_adsp the kernel allocator is used, so it simply opens a new fd
for each allocation.
A very basic unit test that can be run on the host is included. It requires
gtest, so to run it on a host system gtest must (currently) be compiled with
BUILD_WITH_ASTL=true.
Change-Id: If2ae0151698fad8107e18e808a3fa012a846263f
make sure to reject incompatible buffers in special function
GRALLOC_MODULE_PERFORM_CREATE_HANDLE_FROM_BUFFER
we use ioctl(PMEM_GET_SIZE) to validate that the given buffer is indeed
a pmem buffer.
add a way to convert a mapped "pushbuffer" buffer to a gralloc handle
which then can be safely used by surfaceflinger
also make sure to not send empty rectangles to the MDP.