Commit Graph

15 Commits

Author SHA1 Message Date
Naomi Luis
53b841987e libgralloc-qsd8k: Use correct vaddr for clean/invalidate pmem regions
CRs-fixed: 304740
Change-Id: Id72bb9ae874a56be89aec79d23e8d2e79856409d
2011-09-06 13:16:35 -07:00
Naseer Ahmed
4e3b559b23 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
2011-07-15 00:05:26 +05:30
Naseer Ahmed
6af98abbbe gralloc: Add YV12 support
Change-Id: I49da8312dda70b6d7038d9bbc1c8abfcad44f128
2011-07-06 15:42:52 +05:30
Naomi Luis
d314b7c703 libgralloc-qsd8k: Modify perform to use memory region
Modify the GRALLOC_MODULE_PERFORM_CREATE_HANDLE_FROM_BUFFER function
to take into account the memory region that the buffer has been
allocated from.

Change-Id: Ifac7b117956b39e54911b1b7693c0f4b959c630b
CRs-fixed: 284900
2011-05-04 12:45:44 -07:00
Shubhraprakash Das
b33d891cf3 libgralloc-qsd8k: Flush ashmem region cache instead of Invalidating it
ashmem ioctl does not allow the ashmem region to be invalidated
anymore, so we have to flush the ashmem region instead of simply
invalidating it.

Change-Id: I912d2cf293e6ad39d40fb04fd0a1d21700a3907b
2011-03-21 14:48:19 -06:00
Naomi Luis
736092e772 libgralloc-qsd8k: Update the gralloc HAL for Gingerbread
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: I36183bf1fa68e5c8ed80f1efbb5c535a060e0db0
2010-12-20 16:36:01 +05:30
Ajay Dudani
39a41afa0b hardware/msm7k: Initial changes to libgralloc-qsd8k
Change-Id: I59b23aac04b32c5a5ab09b920bdf93fdbbfcd7ce
2010-12-19 01:15:17 -08:00
Mathias Agopian
361e52090e only set the PRIV_FLAGS_NEEDS_FLUSH flag on PMEM buffers
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
2010-08-20 11:47:44 -07:00
Jamie Gennis
253d8b6ec7 Refactor the qsd8k gralloc implementation.
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
2010-07-02 12:57:36 -07:00
Dima Zavin
9df504747b libgralloc-qsd8k: flush SW_WRITE cached pmem regions in unlock
Change-Id: I31d1257f031c6b9b8dae604c2c1a8aa246ce3b84
Signed-off-by: Dima Zavin <dima@android.com>
2010-03-02 15:14:57 -08:00
Mathias Agopian
7c6f96ceee part of fix for [2363506] [Sapphire] Video playback broken
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.
2010-01-20 13:22:35 -08:00
Mathias Agopian
288ce91925 fix[2222341] Soft reset while going back from camcorder settings
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.
2009-10-30 14:52:52 -07:00
Mathias Agopian
173ba48dd3 fix gralloc qsd8k. we actually don't need to use /pmem/gpu1, since the gpu is now able to use regular PMEM.
this module is now closer to the generic gralloc module, although it will have to evolve in the near future.
2009-08-20 15:41:34 -07:00
Mathias Agopian
2c911dc5b8 make gralloc-qsd8k closer to the generic gralloc so it's easier to maintain 2009-08-19 13:14:55 -07:00
Dima Zavin
463408155c qsd8k: add gralloc for 8k
Signed-off-by: Dima Zavin <dima@android.com>
2009-08-13 16:43:18 -07:00