msm7k: Add support for non-cached blit

Add support for the userspace to make MDP
avoid flushing the source image buffer
This change is needed if we are using
cached video buffers. Since the MDP driver
used to flush the entire source buffer before
the blit, it was a huge overhead in terms of CPU
usage for cases where the entire buffer didn't
really need flushing. Any clients that modify
the video buffers with CPU should now ensure that
they flush the region that they modified (if the
memory is cached)

Change-Id: I94572644ed5aefac3184b45df05d10be0f2c7660
This commit is contained in:
Naseer Ahmed 2011-07-14 20:49:56 +05:30
parent cce3908c50
commit 4e3b559b23
2 changed files with 3 additions and 1 deletions

View File

@ -311,6 +311,7 @@ struct private_handle_t {
PRIV_FLAGS_USES_PMEM_ADSP = 0x00000004,
PRIV_FLAGS_NEEDS_FLUSH = 0x00000008,
PRIV_FLAGS_USES_ASHMEM = 0x00000010,
PRIV_FLAGS_DO_NOT_FLUSH = 0x00000020,
};
enum {

View File

@ -354,7 +354,8 @@ int gralloc_perform(struct gralloc_module_t const* module,
hnd->magic = private_handle_t::sMagic;
hnd->fd = fd;
hnd->flags = (memoryFlags == GRALLOC_USAGE_PRIVATE_PMEM) ?
private_handle_t::PRIV_FLAGS_USES_PMEM :
private_handle_t::PRIV_FLAGS_USES_PMEM |
private_handle_t::PRIV_FLAGS_DO_NOT_FLUSH:
private_handle_t::PRIV_FLAGS_USES_ASHMEM;
hnd->size = size;
hnd->offset = offset;