hwc: Return an error in eventControl when blanked

We cannot enable or disable vsync on a blanked display.

Related-to-bug: 8968732
Change-Id: Id3ec37128d527e3a512e1305bc0673a5789ac2d0
Signed-off-by: Iliyan Malchev <malchev@google.com>
hwc: Unblank primary display on bootup.

SurfaceFlinger assumes that the primary is unblanked on bootup.

Bug: 8968732
Change-Id: I8eafa40829aa774d4c1625d927eb500b49e6dded
Signed-off-by: Iliyan Malchev <malchev@google.com>

Conflicts:
	libhwcomposer/hwc_utils.cpp
libhwcomposer: Remove the QCOM_BSP restriction on QClient::screenRefresh

For CABL evaluation.

Bug: 8956036
Change-Id: I74c9bc10ce5115858e2d07553b742ee92d774035
hwc: Add property to differentiate the input image format

Set different values of property hw.cabl.yuv based on the input
image format, so that mm-pp-daemon can adjust CABL power
saving levels accordingly.

CRs-fixed: 464799
Bug: 8956036
Change-Id: I212035d387a975e61a08749ba118a9da30e18d81
Acked-by: Ping Li <quicpingli@codeaurora.org>
Signed-off-by: Iliyan Malchev <malchev@google.com>
display: Remove libmm-abl dependency

This lib no longer needs to be linked to any component in the
display HAL.

Change-Id: Id332d3cb22fc35e16f655d4c6127d6f1891330b0

Conflicts:
	common.mk
Add support for white LEDs

Bug: 9079860
Change-Id: Icc981682a274546c1414bd7c0b0045b1293575bf
hwc: Clear rotator map if overlay allocation fails

This fixes the GPU fallback path in case overlay set fails.

Bug: 9322550
Change-Id: I515204f41169debd8428b4fc48be392ecdd9ff48
Signed-off-by: Iliyan Malchev <malchev@google.com>
overlay: Add tolerance to downscale factor

In certain corner cases for 1080p panels, round doesn't get us
the right downscale factor resulting in MDP attempting to go into
blt mode. Add a tolerance for failure.

Bug: 9322550
Change-Id: I2be4715955d9e248fc63e408dc4a2cdf493152f6
Signed-off-by: Iliyan Malchev <malchev@google.com>
hwc: Add support for smooth streaming feature.

Update the source video width and height set by the video decoder
for the secure video smooth streaming usecase from the gralloc
metadata.

Change-Id: I73a3804d90557034604142481a232787dbc08f23
Acked-by: Ramkumar Radhakrishnan <ramkumar@codeaurora.org>
Signed-off-by: Lajos Molnar <lajos@google.com>
Bug: 9533458

Conflicts:
	libhwcomposer/hwc_fbupdate.cpp
	libqdutils/qdMetaData.cpp
	libqdutils/qdMetaData.h
hwc: Add support to enable CABL for video use case only

Set property "persist.qcom.cabl.video_only" to 1 to enable this
feature. With this feature, CABL will be turned on only during video
play cases. CABL will turn off for UI cases.

Bug: 9414907
Acked-by: Ping Li <quicpingli@codeaurora.org>
Change-Id: I7dee9e03685bdf8e5f69ad5004e63f15dd028333
Signed-off-by: Iliyan Malchev <malchev@google.com>

Conflicts:
	libhwcomposer/hwc_utils.h
hwc: Punt video layers with plane alpha

This fixes a transition issue when exiting youtube while the
video is playing.

Bug: 9486278
Change-Id: I0259b2dc9ccbf302b13d8ae40e62765820d94860
Signed-off-by: Iliyan Malchev <malchev@google.com>

Conflicts:
	libhwcomposer/hwc_mdpcomp.cpp
hwc: Get the retire fence from the MDP driver

Get the retire fence separately instead of duplicating the
release fence.

Bug: 9319776
Change-Id: Iacb773c2d94f635e27a7b355d399cb2e36dac2a5
Signed-off-by: Iliyan Malchev <malchev@google.com>

Conflicts:
	libhwcomposer/hwc_utils.cpp
hwc: Ignore SIGPIPE error when communicating with ppd

This avoids a potential crash in HWC if a SIGPIPE is thrown due
to failure communicating with the other end.

Bug: 9414907
Change-Id: I7f1de4f2ff0f287de4cad29dd92a6e964ba50224
Signed-off-by: Iliyan Malchev <malchev@google.com>