Layer buffer handles that fail gralloc validation must be removed
from hwcomposer's register of previous bypass and overlay handles.
(cherry picked from commit 18c7f1951018b6632bd6e1a4957194c01423b6ee)
Change-Id: Idaaf3557b05adb5b3e938e9cd46dac5b104b729e
CRs-Fixed: 347157
Add support for external-only display. Layer buffers
marked with GRALLOC_USAGE_EXTERNAL_ONLY will be
displayed on external panel only, if available.
In addition if the layer buffer also has the flag
GRALLOC_USAGE_EXTERNAL_BLOCK then only that layer
will be displayed on external (During suspend).
When this mode is on, the default mirror mode for
external is stopped.
Conflicts:
libhwcomposer/hwcomposer.cpp
Change-Id: I8ea2920384c5b68311ee3fe00707d01ab6568b52
For secure content the MM heap should never be
mapped in userspace. Add a flag to avoid
doing this for rotator which does not need
userspace mapping.
(cherry picked from commit 8d9f2fa336564d5a021dd932f5619b5f389d5fad)
Change-Id: I17d1faa40859e261518d928089f2ce86084d31fd
CRs-fixed: 332402
- HDMI has priority over Wifi display, if HDMI is connected during
Wifi, close the session for Wifi and start one for HDMI.
- the enableHDMIOutput parameter externaltype - HDMI/WIFI/OFF
Change-Id: If2cd9143fc7a953db49f38a6c166f9425ba5266e
Conflicts:
libqcomui/qcom_ui.cpp
This reverts commit f2dbabe786.
This change is not needed any more because we are caching the MDP pipe
contents when closing the channel. So no need to wait for postFB finish.
Change-Id: Ia6f01c33953762cb7a97e0b2b795d9afeb60d2d9
(cherry picked from commit 441f1824593bb12a97508b426b597a16b35091e6)
Validate the previous overlay and bypass handles before unlocking
the buffers. The reason for doing this, is that in certain use cases,
after the previous handles are stored, the buffer gets destroyed and the
handle is now invalid. The HWC however doesn't know that the handle is
invalid and tries to unlock the handle, resulting in a failure.
CRs-fixed: 323614
Change-Id: I0f0c8506e7e22f9fc01eb28af0270f9c4587c787
Since composition bypass uses MDP overlays, which
need physically contiguous memory, we cannot use
bypass in cases where the buffers are using ashmem
or other virtual memory. Hence, avoid bypass in
such cases.
Change-Id: I5c6d20e68e15719295373a1b0f3b930536336c43
Synchronize turning off of composition bypass with display,
so that close happens only after FB content is displayed.
This fixes blinks observed when bypass needs to be turned off,
for reasons other than video content.
Change-Id: Id98bddd0cb2a89ea8729a188934ae1cd947cf305
Add HAL_PIXEL_FORMAT_NV12_ENCODEABLE which is the encoder specific
format.
Remove unused OEM formats from the gralloc.
Change-Id: I787203cd96b597c881f0acc10b60ea2ab2ffe1ab
Add libgenlock which is a cross-process buffer locking API. libgenlock
provides the ability to create, attach, release locks. It also provides
a mechanism to lock and unlock buffers for read/write purposes.
Change-Id: I5172a82539b83bcb1226e3fd4f7b80a5c7f31016