hwc: support vsync notification via sysfs

Change-Id: Ie2172b5fb2e8595136f6ccb28abd9f8ce89a526f
hwc: fix timing issue with vsync sysfs loop

Change-Id: I6e0307e0fd5ea84748ddb580062b21f697512603
hwc: Add support for FB scaling and cloning

Patch contains following features
1)Large frame buffer support:
     Transformation matrix for LCD and HDMI added
     to ensure correct composition and renderring
     of all UI layers
     Added support for overlay distrubution based
     on FB size and target display
2)Default HDMI display support
     Support for default HDMI display selection.
     Added HDMI best mode selection on HPD

Rebased from p-ics-mr1:
96ad001 hwc: Add support for FB scaling and cloning

Change-Id: Ia6f06d5e149656c4d79ac2d3983211a253bb3969
Signed-off-by: Lajos Molnar <molnar@ti.com>
Signed-off-by: Muralidhar Dixit <murali.dixit@ti.com>
Signed-off-by: Dandawate Saket <dsaket@ti.com>
hwc: Support HDMI as primary display

This patch disables mirroring/docking logic when HDMI display
is used as primary instead of LCD panel.

Based on patch from Mark Tyler.

Rebased from p-ics-mr1:
9dd8ccd Support HDMI as primary display

Change-Id: Idd239a562bfc486e128b268fa31ced53412bba3a
Signed-off-by: Mykola Ostrovskyy <mykola@ti.com>
Signed-off-by: Muralidhar Dixit <murali.dixit@ti.com>
Signed-off-by: Tony Lofthouse <a0741364@ti.com>
[1/3] omap4xxx: Allow custom DOMX source instead of Google DOMX default

Part 1 of 3 patches: To allow omap4 devices to use custom "domx" source
via a new BoardConfig.mk item:
TI_CUSTOM_DOMX_PATH := device/<manufacturer>/<device-name>/domx

This setting provides for 3 changes during the build:
1. In hardware/ti/omap4xxx this settings stops standard Google domx
source from being built and changes the domx reference for tiutils.
2. In frameworks/base it changes the default openmax references for
frameworks/base/media/jni/mediaeditor/Android.mk to the new location
3. In frameworks/av changes the openmax references in 5 places, and adds
new includes in ACodec.cpp, CameraSource.cpp and OMXCodec.cpp

This commit for hardware/ti/omap4xxx is based on this cherry-pick from
omapzoom (with a more descriptive BoardConfig setting name):
http://www.omapzoom.org/?p=platform/hardware/ti/omap4xxx.git;a=commitdiff;h=040534d546dbcfcff16ff1afff15c01c2822dfcc

Change-Id: I32bf75073278639dc9e4442168c7b35295beb495
Signed-off-by: Hashcode <hashcode0f@gmail.com>
omap4xxx: add flag to allow custom libion

Due to kernel changes I need to stop the omap4xxx/libion via
BOARD_USES_CUSTOM_LIBION flag and instead use a custom libion
in my device trees.

Change-Id: Ic48e8c51456c76dfd9bca00cb59581deb2cfc510
Signed-off-by: Hashcode <hashcode0f@gmail.com>
Merge tag 'android-4.3_r2.1' into cm-10.2

Android 4.3 release 2.1
Fix crash on boot

There is a race condition where the sysfs-vsync thread accesses a value
(in particular a function ptr) that may not have been set yet as this
is done externally.
Also a typo fix

Change-Id: I21d7024c793ab3b8d833c3a8305110128237ba36
Merge branch 'cm-11.0' of https://github.com/CyanogenMod/android_hardware_ti_omap4xxx into HEAD