hwc: Add type casting to aspect ratio calculations

Type casting to float prevents rounding off errors which could
result in invalid or unexpected results when doing calculations
with integers.

Change-Id: I6d5c233c013322c4e9c7f7db61b5c604f915643c
Merge AU_LINUX_ANDROID_KK_RB1.04.04.00.020.029 on remote branch

Change-Id: I58c97fb953106a6ca5010137b6c9a9f1504bb72a
hqd: Fix validate and prepare frame for virtual displays

Extend validate and prepare frame functionality for
virtual displays.

Change-Id: I266f35d8581ac2de04c5ce22e51b267a48955e46
(cherry picked from commit 0901c04448b339c9e778ea9b857cbed564bd88f9)
display: Disable postprocessing and QCOM_BSP

For bring up disable Qcomm specific display features and
post processing

Change-Id: Idfd2456d5b54df7c45a1fefba987a02da95cbfcd
(cherry picked from commit d9ebb5aa929fb5fe658609bfd408eac86539394c)
hwc: Define QCOM_BSP to enable qcom specific feature.

Define QCOM_BSP under TARGET_USES_QCOM_BSP macro to enable qcom
specific features.

Change-Id: I5db3344a4030b1eef483455880b3adc03f3767ae
display: Update paths to display-caf-new

Change-Id: I288f5a48ad42205f5e89607bcc30377132d402a9
Don't build lights module if vendor supplies it

Change-Id: I63589281961e1120e7536798df6d78b8a7af4304
gralloc: Change loglevel of adreno_utils warning

 * The old version of libadreno_utils is still compatible with
   this code, so don't demolish the logs over it.

Change-Id: I089f46265eebb51f6abdad23057acd318e613a8e
gralloc: Set default value for implementation defined formats

For implementation defined formats which go via HWC, set the
default value to RGBA8888

Change-Id: I7f8c46bc47746dcf1c4a03438b8f93d7bab78bb1
qdutils: Pre-allocate initial buffer for getline().

Some frameworks override malloc() and free() but not getline().
Pre-allocating the buffer avoids heap mismatch on free().

Change-Id: I9bd934f701ad7dbc10ec2aa21967e2a626c496f4
hwc: Do not set a default DPI value

If the driver does not expose primary panel's physical
dimensions, do not assume a default DPI of 160. Instead,
set it to the default value specified in the build property.

Change-Id: If71e721f6a3fa5ece93c307f6e09b45d1ecafed4
h/q/d: Rename property to enable partial update

Rename property to enable partial update to keep within MAX
string length.

Change-Id: I16d09b49500f3cd996c66eb52aa80df3a5f62b27
Additional ifdefs for VPU target

Change-Id: I332ecff16097130b7f04dd0f981936436a71cb89
h/q/d: Optimize framebuffer layer update

While doing mixed mode composition, update only the region of the
framebuffer where layer contents are cached or updated. Avoids
MDP fetch for non-visible contents of FB.

Change-Id: I20997d79e02a6bac60d7333c28c6dde134263197
qdutils: Refactor idletimeout fallback mechanism.

1. Use kernel timer interrupt to signal about the timeout to
   Invalidator thread and fallback to GPU composition.
2. This implementation avoids waking up the Invalidator thread for
   every idletimeout value during continuous update.

Change-Id: I4370f10a0ca06b5cb1e7bdcb047e9c8daec51afb
hwc: mdpcomp: Remove pipe estimation blocks

Pipe estimation was necessary when the unavailability from overlay
led to GPU fallback.
With the new design, hwc uses the next best strategy, so failure
to grab a pipe from overlay is ok.

Change-Id: Id20d2e6fd24aeb5af3ab84ec9dd8c52f6bbbef8b
hwc: Remove bandwidth checks

Bandwidth checks will be done in the driver as part of resource check
which makes the existing checks in hwc redundant.

Change-Id: I39eb7de63618e8ea5981f9e1a1159224831f314a
hwc: Iterative Load based comp

While performing load based mixed composition, iterate from max
stages of mixer to at least 2.
Get rid of modes that preferred GPU or MDP. This new mode will
include both plus the missed out batches.

Change-Id: Ideb06a2332fe2f59968367d28df848be01f4aedc
display: Remove klockwork warnings and errors.

Remove all klockwork warnings and errors for libgralloc,
libhwcomposer, liboverlay, libqdutils, libqservice, libvirtual,
libexternal libraries to avoid buffer overflow and memory leaks.

Change-Id: I078143bcbcf5e4b342156bd8305a644566f7cc4b
common: Do not link to ABL lib

The library is not used in the code. If used in the future, it
can be linked to with dlopen.

Change-Id: I5af0847f0838f26c3c7f39375d3f082b1d3b8a6c