Some makefiles didn’t specify libui but included
headers from it directly, and they didn’t even
need them.
It works because these headers are on the global
include path. With this change, though, rect.h
is not anymore (albeit exported from libui).
Test: built and booted device
Bug: 35164655
Change-Id: Ib2de5e5a2f86bd857e12861bb6fc5e4739ff185a
The libc++ defines this (wrapped in ifndef, like this should have
been), so including a libc++ header and then defining this results in
a werror failure. Define this in common.mk so we can be sure it does
get defined, but also that it gets defined early enough that anyone
defining this in source wrapped with ifndef doesn't get broken.
Test: mma # on angler
Bug: http://b/34740564
Change-Id: Id7d70a6ad5e530390eb8b37e5e618312d1d7e6dc
Define binder interface setViewFrame to set view frame information
of a display by surfaceflinger when projection for that display
changes.
Change-Id: If737b51ae0f04303a1a29c91a9703f64354b61fb
Source Split layers always if the driver indicates so by setting
the src_split_always in the capabilities sysfs node.
This is applicable to layers whose width > mixer's width, since
MDP clk rate is dependent on max(mixer_width, layer_width).
This feature can be enabled if the panel height is more than a
certain empirically derived value. Splitting always in those
cases can help with a lower voltage.
Change-Id: If9b33f11ca4132eb77416c26819f7473c65d3b08
For panels that cannot accept commands in both the interfaces, we cannot
send two ROI's (for each half). We merge them into single ROI and split
them across lSplit for MDP mixer use. The ROI's will be merged again
finally before updating the panel in the driver.
- Reads panel property of dual control path.
- If dual control path not supported, merge ROI's before
analysing for composition strategies.
Change-Id: I67e361a299dc5d1adb28b180900e24633eefc4a8
Extends partial frame update support for split displays by calculating
changing region(ROI) independently for each half of the screen. In case of
only one half updating, display driver shuts down the DSI/MDP mixer control
of the non updating half.
Maintains two ROI's for each display. In case of Non-split
displays, only left ROI is updated.
Change-Id: I8a67fe40aac665a48b6f8a46beffb9f8027851b2
To comply with multi-arch build system changes for 64-bit support,
LOCAL_MODULE_RELATIVE_PATH needs to be used.
Drop explicit use of LOCAL_MODULE_PATH as its not needed, and
causes build system to overwrite one of multi-arch library
variants with the other arch variant.
Change-Id: I882de72ad2003f1e2bcc93fb63bad7377a84d31d
Rely on panel info shared by driver and enable
partial update if it says as supported. Use the
existing property to disable partial update if
required for debugging.
Change-Id: I75d5dcbbfea08515d17150054ca91367319b929c
Some of the definitions may not be present on AOSP builds while
other may. Check each definition to be sure.
Change-Id: Ia3cf8f024a3a6b6633a3be4646579f6cde0d5580
In term of Linux manual, mmap() returns MAP_FAILED in case of
error, so current checking against NULL is not valid.
Change-Id: Iee6920b6478843a0c1cd62bdbe3e4b652a39c583
Clang gives a warning:
invalid suffix on literal; C++11 requires a space between literal
and identifier [-Wreserved-user-defined-literal]
Change-Id: I5ef54e5a8ac4d329cbe7900bc543cdb69ad6d462
- Add utility function for 8x16
- Add internal function to identify if RGB doesn't
support scaling that is read from capabilities node.
- If UI layer needs scaling and RGB pipe doesn't
support scalar, request a VG pipe
- On 8x16, request DMA pipe for WFD
Change-Id: I94e8e0371bb10fcad53fddd2b7c45bc9b2594a4d
Targets in which VPU interacts with display through HWC are no
longer supported.
Change-Id: I65a5348a375ad0c193a8659d0cdfb37c2db6f38e
Conflicts:
msm8226/libhwcomposer/hwc_utils.cpp
Move aspect ratio helper function to qdutils so it can be used
as a utility function in libvirtual and libexternal without
introducing a circular dependency.
Change-Id: Ib295c1d9f78bc8898b1aac9a443cdacf53150551