If we are not using MDP composition, and the pmem allocation fails,
try allocating the surface memory from the ashmem region, if a PMEM
surface is not explicitly requested.
Change-Id: I528cd6b31cc84fb3a4b4611cf197baffe1465ee9
When USE_ASHMEM is set, ASHMEM will be used only for non-MDP composition.
This implementation will force to use PMEM for MDP composition case. This
will allow using ASHMEM or PMEM at run time, depending on the composition
type. USE_ASHMEM would mean that use ASHMEM where possible.
This will also make sure that video works properly when dynamic ASHMEM
feature is enabled on 7x27 / 7x27a / 7x25a targets.
Change-Id: I5860311aad20d33e2d078cd6f0d05e041ff3364a
This reverts commit 80df10595720594cf661b8812507ba75b2bafd1e.
Revert "libgralloc-qsd8k: Set the framebuffer offsets correctly"
This reverts commit 09a31858f42978c29e0c7014713748d413b3c587.
It is no longer a requirement for GPU to be 4k aligned, hence
reverting these 2 changes.
Change-Id: I39e6f6324353a3c19bfdf523f8862408ef9a4093
The offsets for the framebuffer needs to start at a 4K aligned address.
Calculate the additional delta for the yoffset, the virtual address for flipping
as well as the total framebuffer size required to achieve this
Change-Id: Idfd70be10a24ac464ec820494b66d506a03a983b
CRs-fixed: 273888
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
this wouldn't make sense, since the h/w wouldn't be able
to use the buffer. in this case it it better to fail to
let the caller a change to try again with different usage bits.
Change-Id: Ibecaf069b6b58ee9c026affc95a45512660d5881
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