qdutils: Don't assume we support overlay without version info.

If we can't determine the version we shouldn't assume that overlay is
supported. If it is still needed there should be a config to force
overlay support.

Change-Id: Ic1000fdcd5ffefc517782eca605fc63b88f47602
hwcomposer : Disable bypass, when connected to external display

disable bypass, when connected to external display

Change-Id: I57edc8fc1b9254b3c60c229aabb2515f320c9de4
display : Do not use copybit for composition when YUV layer is present.

Do not use copybit for composition when YUV layer is present only in
overlay targets & use copybit in non-overlay targets.

CRs-Fixed : 385992
Change-Id: I671bc5f37b924160e32e900207fb81634dee0929
(cherry picked from commit 1f05b5ef18723bc73a21259ca7c5f112228a5c85)
hwc: Unlock prev. buffers in N+1th draw round.

Unlock previously locked overlay buferrs in N+1th draw round, rather than N+2th.
This is now possible because of wait for PAN.
Provides an opportunity to improve genlock behavior and makes it more ICS like.

(cherry picked from commit b3a4cd7944397565388b4e940fb41d2af8882687)

Change-Id: I48f937b77d59b31f3bf04c5a2eb35500bd5d76d6
Merge "qdutils: Don't assume we support overlay without version info." into jellybean
qdutils: Add MDP v3.0.2 detection.

Change-Id: I22ad1f7fe3c2c03518e192b44f8f0f7018d8ff34
hwc: Enable MDP_BACKEND_COMPOSITION

 * Add MDP_BACKEND_COMPOSITION flag to resolve flicker

Change-Id: I3dfa680e0c74ccbac69f40dc15e014153ce0b530
libqdutils::Use qcomuiClearRegion for dynamic composition

Change-Id: I7483f6967c6f712af15031c386fb08c8fdae0808
Add support for PIP, picture in picture feature

Add a new state and required implementation in new overlay to support playback
of two videos using overlay.
Add a new class VideoPIP to handle the pip feature.

Change-Id: Ibce7044bc1216cba77bd952e191aed5472ed6737
libcopybit: fix YUV buffer alignments as per gralloc

buffer alignment in copybit should be in sync with
gralloc allignments while allocating buffer.

CRs-fixed: 377051
Change-Id: Ib2ae64e368ea3c92d3494c71da605197ccb4a9a5

Conflicts:

	libcopybit/copybit_c2d.cpp
libgralloc: Allocate buffer Fix.

Fix to allocate buffer of size defined by the client using
NATIVE_WINDOW_SET_BUFFER_SIZE property function.

Change-Id: I29f3e7e85c2f8dd7c11149d78b2681e6478cef78
overlay: Remove OVASSERT from getFormatString utility

Remove OVASSERT from getFormatString utility. OVASSERTS should happen only from
critically wrong states of overlay.
Just failing in this utility method would allow a fall back to GPU.

Change-Id: I4467a750574ee90aee4fa2e0fbb041e7f386a63b
hwcomposer : Use system property to set DYN composition threshold

Change-Id: I15c82d46ec846ff2bff7a1fc7a924bb7fcf844f9
hwc: Set premultiplied alpha flag appropriately

Change-Id: I516dc5c6d3bb4f02c98b4add5e818ae88d08eba4
hwc: Correct default value of dynThreshold

Change-Id: I18aefe755334cb62e43fc2c39cc42fb0fcbadef1
hwc: Call swap buffers even on NULL lists

Swap buffers and UI mirroring must be done even on NULL lists
which are composed by SurfaceFlinger.

Change-Id: I6c840e3dd02dfa447c10bf3f4798114fc74536ee
Merge remote-tracking branch 'upstream/jellybean' into rukin5197

Conflicts:
	libhwcomposer/hwc.cpp

Change-Id: I99cb7b9fe7fc55d5ad016204cc1f34082478bf66