History log of /hardware/intel/img/hwcomposer/common/base/HwcLayerList.cpp
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
0127c89d2fbf729e671497ecd19a76d3837cf042 21-Oct-2014 Lei Zhang <lei.zhang@intel.com> enable hw overlay for video for HDMI 576p/480p mode

Bug: 17592325
BZ: 225376

Change-Id: I5ead5ca495479d2b891a078b5884aa27f91e02db
Signed-off-by: Lei Zhang <lei.zhang@intel.com>
/hardware/intel/img/hwcomposer/common/base/HwcLayerList.cpp
af3bf2227c951a59e2dcc44ab90790d247225375 11-Sep-2014 Andy Qiu <junhai.qiu@intel.com> support 480/576 mode.

Bug: 17391301
BZ: 222162

Change-Id: I96ac2695455723978f5a7c4fb5b5f74c4719580f
Signed-off-by: Andy Qiu <junhai.qiu@intel.com>
/hardware/intel/img/hwcomposer/common/base/HwcLayerList.cpp
a6ca0e98674e3f1b0a7239f6e775cae2f667fe5c 04-Sep-2014 Lei Zhang <lei.zhang@intel.com> hwc: add support for cursor plane.

Bug: 17256663 BZ: 218062

Change-Id: Ib8e2c4c460520fef111966e622a4adf8a7f3e6ee
Signed-off-by: Andy Qiu <junhai.qiu@intel.com>
Signed-off-by: Lei Zhang <lei.zhang@intel.com>
/hardware/intel/img/hwcomposer/common/base/HwcLayerList.cpp
4157ee3f6fb20e0a249b9eedc06f3b16785ba31b 02-Sep-2014 Iliyan Malchev <malchev@google.com> hwc: rename logging macros: TRACE --> LOGTRACE

find . -type f -a \( -name \*.c -o -name \*.cpp -o -name \*.h \) \
-exec sed -r -i -e 's/([ADEITVWX])TRACE/\1LOGTRACE/g' {} \;

In preparation for instrumenting HWC with ATRACE tags.

Change-Id: I172a48bd86a711b67e67d44a8d47da6b8e67b56d
Signed-off-by: Iliyan Malchev <malchev@google.com>
/hardware/intel/img/hwcomposer/common/base/HwcLayerList.cpp
452fbc109a9c585737bcac18f19aff40574c3d79 11-Aug-2014 Jim Bish <jim.bish@intel.com> gfx-hwc: Add support for hardware composer version 1.4

Adds 1.4 interfaces
setPowerMode
getActiveConfig
setActiveConfig
Updates to getDisplayConfigs and getDisplayAttributes
reset active display config on hot plug

Bug: 16990582
BZ: 216310

Change-Id: I31e436fa34545f42e923a24f7d2674e621df0e21
Signed-off-by: Jim Bish <jim.bish@intel.com>
/hardware/intel/img/hwcomposer/common/base/HwcLayerList.cpp
03ec9fafe981e98a32150dfb1ded2da6a84c212d 12-Jul-2014 Andy Qiu <junhai.qiu@intel.com> native RGB overlay support on Annidale

Bug: 16991462
BZ: 216247

Change-Id: Ib0ab025547c727da70591208ca597268c339f3a6
Signed-off-by: Andy Qiu <junhai.qiu@intel.com>
/hardware/intel/img/hwcomposer/common/base/HwcLayerList.cpp
4d4a659f11ba1a141d66c48c84e4a42aa7a3e0e5 25-Jul-2014 Lee, Stanley <stanley.lee@intel.com> Fix mouse cursor disappear issue

The index, mFBLayers.size() - 1, should be traversaled.

Bug: 17035889
BZ: 215341

Change-Id: Id280b37701d3133aedfcb3aa479ad06401fc2213
Signed-off-by: Lee, Stanley <stanley.lee@intel.com>
Signed-off-by: Andy Qiu <junhai.qiu@intel.com>
/hardware/intel/img/hwcomposer/common/base/HwcLayerList.cpp
aca1af6bab5f1aab3a7d2851e1c27253a3ed6b80 22-Jul-2014 Andy Qiu <junhai.qiu@intel.com> remove unused codes and unsupported features

Bug: 16955210

Change-Id: I90ac9bbfc87a4f34a225c65fe58e0470fbd0b3f2
Signed-off-by: Andy Qiu <junhai.qiu@intel.com>
Reviewed-on: https://android.intel.com/220474
Reviewed-by: Imberton, Guilhem <guilhem.imberton@intel.com>
Tested-by: Imberton, Guilhem <guilhem.imberton@intel.com>
Signed-off-by: Andy Qiu <junhai.qiu@intel.com>
/hardware/intel/img/hwcomposer/common/base/HwcLayerList.cpp
cd727f537d5085eec7f1b8f9c1d33922d4de75d4 24-Jul-2014 Prodyut Hazarika <prodyut.hazarika@intel.com> Change license headers to Apache

BZ: 209178

Change-Id: I4933f49129b085ef5a76c28ae4a775cef5b1b636
Signed-off-by: Prodyut Hazarika <prodyut.hazarika@intel.com>
/hardware/intel/img/hwcomposer/common/base/HwcLayerList.cpp
0594c42af26255fd8d3d7d39c0cb0e2da5b8841b 14-Jul-2014 Thierry Strudel <thierry.strudel@intel.com> AOSP: cleanup include paths and warnings

BZ: 209178

Include header file from top of module only
Move makefiles to top of module
Fix all warnings and enable -Werror

Change-Id: I6921b41d5512a81aaeb167383b9392efbae275bf
Signed-off-by: Thierry Strudel <thierry.strudel@intel.com>
Reviewed-on: https://android.intel.com/217843
Reviewed-by: Imberton, Guilhem <guilhem.imberton@intel.com>
Tested-by: Imberton, Guilhem <guilhem.imberton@intel.com>
/hardware/intel/img/hwcomposer/common/base/HwcLayerList.cpp
8add41ef7af1a3c49dfb84bbac108556f3ac6ec2 17-Jun-2014 mahongpe <hongpeng.ma@intel.com> fix index overflow issue of mFBLayers in useAsFrameBufferTarget

BZ:200896

mLayerCount - 1 cannot be used as max index of mFBLayers.
mFBLayers.size() - 1 will be the max index.

Change-Id: Iddc90018cbdf8f40419946ac97afe0c7f2ff9fd6
Signed-off-by: mahongpe <hongpeng.ma@intel.com>
/hardware/intel/img/hwcomposer/common/base/HwcLayerList.cpp
430aa08f577f9aa45b2ea323a79cfd8b3e25f2ca 30-May-2014 Lei Zhang <lei.zhang@intel.com> HWC: update plane again after fall back to GLES

BZ:199735

This patch update plane again if it needs to fall back to
GLES and has plane re-allocated to layers.

Change-Id: I350f3a6a8328e6ed88f7033a9c45e67e2529f1d2
Signed-off-by: Lei Zhang <lei.zhang@intel.com>
/hardware/intel/img/hwcomposer/common/base/HwcLayerList.cpp
3c387b7ee284f3f4e12e89c6270e532057677bf8 08-May-2014 Lei Zhang <lei.zhang@intel.com> hwc: fix last frame flashing on MIPI under ext video mode

BZ:193720

When none FB layers, it does not need to do plane allocation.
This happens when entering ext video mode, or receiving call
with HDMI connected, where layers will be marked as SKIPPED.

Root cause for MIPI DBI FIFO not empty issue after apply this
patch is found and fixed in driver patch 192143.

Change-Id: I4d0601664783e8730782856c5da7db024a8a273c
Signed-off-by: Lei Zhang <lei.zhang@intel.com>
/hardware/intel/img/hwcomposer/common/base/HwcLayerList.cpp
c0529447ae16f023dfab2978ea2b245f368e893b 08-May-2014 Andy Qiu <junhai.qiu@intel.com> Support TTM buffer for overlay plane.

BZ: 198175

TTM buffer support for overlay plane is removed in Annidale. Need
to add it back when rotation is not supported by overlay plane.

Change-Id: Ibe0e8307fbd6258464007b142ed0496674a8f54d
Signed-off-by: Andy Qiu <junhai.qiu@intel.com>
Signed-off-by: Li Zeng <li.zeng@intel.com>
Signed-off-by: Zhu,Tianyang <tianyang.zhu@intel.com>
Signed-off-by: Andy Qiu <junhai.qiu@intel.com>
/hardware/intel/img/hwcomposer/common/base/HwcLayerList.cpp
db3394df25260347af94faa5f6bcc7347a2e407c 15-May-2014 zhuxinglongx <xinglongx.zhu@intel.com> Android R44C-STABLE - Target: MOFD_V0_64 - HwcLayerList --- 2 KW issues

BZ:195313

fix zlayer->hwcLayer and zlayer->plane null pointer

Change-Id: Ia2dd704e74872ae65294eee58dc54061a18482d6
Signed-off-by: zhuxinglongx <xinglongx.zhu@intel.com>
/hardware/intel/img/hwcomposer/common/base/HwcLayerList.cpp
349e264642be6b6efab5085b0a781fd0896400f1 29-Apr-2014 Lei Zhang <lei.zhang@intel.com> HWC:add plane transform capability check

BZ:187142

This patch adds plane transform capability check. Overlay supports
rotation but not flip on annidale. So if trans has FLIP_H/FLIP_V,
it should return false and fall back to GLES to do composition.

Change-Id: I1b2557ea54f2184b7caef4e79752d33257eb8a24
Signed-off-by: Lei Zhang <lei.zhang@intel.com>
/hardware/intel/img/hwcomposer/common/base/HwcLayerList.cpp
9d1d3833469f52dbd2a017702bf0116fddc703bc 29-Mar-2014 Andy Qiu <junhai.qiu@intel.com> Optimization on plane allocation

BZ: 190141

1, allocate overlay to video layer whenever possible
2, allocate overlay A to pipe A and overlay C to pipe C whenever possible
3, allocate as many sprite planes as possible
4, plane allocation happens only when all conditions are met.
5, use rotation buffer provider to produce rotated buffer when needed

Change-Id: I67af25da2ed4dffc17a2b548ee2e8c920a51f127
Signed-off-by: Andy Qiu <junhai.qiu@intel.com>
/hardware/intel/img/hwcomposer/common/base/HwcLayerList.cpp
5eede1cfdff41d9926b01154a183193e8a10795d 04-Apr-2014 Hong Liu <hong.liu@intel.com> [WA]overlay rotation + scaling limitation

BZ: 177222

It seems with overlay rotation and scaling factor >= 3, overlay will
crash and cause "dbi fifo not empty" issue.

Fixed by falling back to GLES in this case.

Change-Id: I4a8c3bca4ddb9cd52b4bdc927803ff5cd26a0b70
Signed-off-by: Hong Liu <hong.liu@intel.com>
/hardware/intel/img/hwcomposer/common/base/HwcLayerList.cpp
466748a6f67ce4d1ad8baa944e68a88cf3c86d26 24-Jan-2014 Austin Hu <austin.hu@intel.com> support display idle control (s0i1)

BZ: 147800

modify hwcomposer to support display idle control (s0i1). The basic idea is to compose
to framebuffer on s0i1 mode and return to normal mode on next prepare.

Change-Id: Idb522e8c544c9720964c111bc61eba232ac1a787
Signed-off-by: fu jin <fu.jin@intel.com>
Signed-off-by: Andy Qiu <junhai.qiu@intel.com>
Signed-off-by: Vinil Cheeramvelil <vinil.cheeramvelil@intel.com>
/hardware/intel/img/hwcomposer/common/base/HwcLayerList.cpp
10e89b1bb0d08ad3d037691125908641a914b58e 07-Feb-2014 lychenx <liy.x.chen@intel.com> Set the blending capability correctly

BZ: 169245

Merrifield constant alpha feature of display hardware can't support the android HWC_BLENDING_PREMULI completely, so
hwcomposer should not set as supported

HWC_BLENDING_PREMULI requirement :
dst_pixel.rgb = src_pixel.rgb * planeAlpha / 255
dst_pixel.a = src_pixel.a * planeAlpha / 255

Merrifield constant alpha implementation :
dst_pixel.rgb = src_pixel.rgb * planeAlpha / 255
dst_pixel.a = planeAlpha

Change-Id: Ic368cfc10adb21e40661870af0823d727225015d
Signed-off-by: lychenx <lix.y.chen@intel.com>
/hardware/intel/img/hwcomposer/common/base/HwcLayerList.cpp
11b44e47e6aa114b144b06cbb6e91de3c0750c69 24-Jan-2014 Andy Qiu <junhai.qiu@intel.com> Flip frame buffer target once in video extended mode

BZ: 150491

First flip of frame buffer target is to blank screen. Subsequent
flip of frame buffer target is skipped such that pipe for the primary
device (pipe 0) can enter idle state (for example DSR mode).

Change-Id: I61e726ec95267a7bcc9a69ccd4a1c51788ed14b8
Signed-off-by: Andy Qiu <junhai.qiu@intel.com>
/hardware/intel/img/hwcomposer/common/base/HwcLayerList.cpp
e24acf1d95bc16160a665a526e5593b22c7d4dfd 28-Jan-2014 Zhu,Tianyang <tianyang.zhu@intel.com> [Workaround] Add a macro to distinguish MERR and MOFD.

BZ: 167139

Here we add a macro "MERR" to distinguish MERR and MOFD.
on MERR, we use "overlay semi-fixed" to solve overlay crash and MIPI off
issue, it make MERR stabler than before.
But this method is not available on MOFD, and cause this bug.
so we add this macro to as a workaround.
And we will continue to investigate this issue for root cause and remove
this patch in the future.

Change-Id: Ie15c25d194aea30169fe6e70b4fe821052d19767
Signed-off-by: Zhu,Tianyang <tianyang.zhu@intel.com>
/hardware/intel/img/hwcomposer/common/base/HwcLayerList.cpp
c8ed4d7c744a7f59864fa5a7db8ae3d0c05a119f 21-Jan-2014 Zhu,Tianyang <tianyang.zhu@intel.com> HWC: Improvement on overlay management

BZ: 165757

Changes in this patch
1) by default overlay A is assigned to pipe A and overlay C is assigned to pipe B
2) reset active input state to true after video playback stops.
This will ensure video is in cloned mode when video playback starts.

Change-Id: If0ae2693750b5d6f97575353270e313149683e83
Signed-off-by: Zhu,Tianyang <tianyang.zhu@intel.com>
/hardware/intel/img/hwcomposer/common/base/HwcLayerList.cpp
3a065d1aa4c880fc06b1cbe2041f8a51322f61ff 09-Jan-2014 mahongpe <hongpeng.ma@intel.com> UI freezes if rotation buffer is not ready when play protected video.

BZ:163810

UI freezes when playing protected video with Widevine if rotation
buffer is not ready. In this case, overlay plane is enable, but
setDataBuffer fails, in commit, invalid overlay context is set to
overlay plane which lead to UI freeze.

Change-Id: I67f9a92bacf434c792003fb9c7e3005f3cf98df3
Signed-off-by: mahongpe <hongpeng.ma@intel.com>
/hardware/intel/img/hwcomposer/common/base/HwcLayerList.cpp
0fd589de3567b56cc3645ce014d5ad84d12fcb8e 09-Jan-2014 Lei Zhang <lei.zhang@intel.com> hwc: add primary/sprite plane const alpha support

BZ:161857

From HWC_DEVICE_API_VERSION_1_2, it needs HWC to support planeAlpha.
Tng HW has the ability to support const plane alpha, and this is the
HWC patch to add primary/sprite plane alpha support.

For overlay plane, our HWC implementation now does not support layers
with HWC_BLENDING_PREMULT/HWC_BLENDING_COVERAGE goes through HW overlay,
so this patch does not add const alpha support for overlay plane.

This patch needs to co-work with kernel patch.

Change-Id: I8fa8ea881203570f3c4c6768caabc2cc7acfe59b
Signed-off-by: Lei Zhang <lei.zhang@intel.com>
/hardware/intel/img/hwcomposer/common/base/HwcLayerList.cpp
f6d5b36e320f093f08855d64fa3d565eacae3c4b 02-Jan-2014 Jackie Li <yaodong.li@intel.com> hwc: updated hwcomposer to support ANN.

BZ: 161970

This is part of a set of patches to enable Moorefield graphics.

Change-Id: Ica32c38871f86bca68c34c7e54e9db2c6b7d4f56
Signed-off-by: Jackie Li <yaodong.li@intel.com>
/hardware/intel/img/hwcomposer/common/base/HwcLayerList.cpp
177b44e0661a92d06f8f37c51e59af86423f7a95 08-Nov-2013 Andy Qiu <junhai.qiu@intel.com> Change video extended mode behavior and implementation based on new requirement

BZ: 153746

1) video needs to be shown on the primary display if it is not full-screen
on any secondary display.

2) input event will turn on primary display in video extended mode, video
and all RGB layers are shown on the primary.

3) input event timeout will turn off primary display in video extended mode

4) use HDMI vsync when HDMI is connected

5) use soft vsync when WiDi is in video extended mode

Change-Id: I55ac9efb5d6c0a545ab57f48981a9f3f40a36817
Signed-off-by: Andy Qiu <junhai.qiu@intel.com>
/hardware/intel/img/hwcomposer/common/base/HwcLayerList.cpp
198b6a9e530c98c4c56d373302ba06e3861fdd6a 24-Dec-2013 hbux <haiyangx.bu@intel.com> Power consumption regressed on ww50.

BZ: 159025

Revert the overlay policy which introduced
by BZ#155089. Streaming needs all layers
go to HWC states.

Change-Id: I42fd048c82592ba389dc801fd1d777ddf9b33e13
Signed-off-by: Bu, Haiyang <haiyangx.bu@intel.com>
/hardware/intel/img/hwcomposer/common/base/HwcLayerList.cpp
4b093a5ae1eb8620462ed4e12832c832b5f5d276 06-Dec-2013 Wang, Yue <yue.a.wang@intel.com> hwcomposer: Use source crop size to calcuate buffer priority
instead of source buffer size

BZ:115492

This priority change makes those buffers which have bigger on-screen
display area go to the overlay, instead of the original calculation
based on allocated buffer size.

Change-Id: If6ae648be6d7cb179b7cc8ae31d52fdedf878f9d
Signed-off-by: Wang, Yue <yue.a.wang@intel.com>
/hardware/intel/img/hwcomposer/common/base/HwcLayerList.cpp
5b656b19cdc369b13cbf33091a98d45972237d19 02-Dec-2013 Lin Xie <lin.xie@intel.com> Bypass smart composition if video layer exists.

BZ: 155089

As the dynamic mode setting may reduce the TV's refresh rate,
rgb layer's flip chance will reduce a lot if smart compostion
takes effect additionally, then artificial visual flicker
will be observed.

Change-Id: I3936b78a91ca77b403440aa7aec3f54f3d48823b
Signed-off-by: Lin Xie <lin.xie@intel.com>
/hardware/intel/img/hwcomposer/common/base/HwcLayerList.cpp
9c6f1c0833269c2622860c4ff5fe116e8c78954f 02-Dec-2013 Zhu,Tianyang <tianyang.zhu@intel.com> Remove "HWC_ROTATION_IN_PROGRESS" checking

BZ: 155606

At Kitkat, this flag is removed from SurfaceFlinger, so HWC needn't to
check it.

Change-Id: I2f8d6a438c9927eeb69db92d6be9691392f4645b
Signed-off-by: Zhu,Tianyang <tianyang.zhu@intel.com>
/hardware/intel/img/hwcomposer/common/base/HwcLayerList.cpp
74710b4ad2ddb93327eb3518d9662a6656d640f8 22-Nov-2013 fu jin <fu.jin@intel.com> For KK, change HWC version to 1.3

BZ:153738

For KK, change HWC version to 1.3

Change-Id: I65e1b71aad0d3486826df1aa2ca2c68189dc57e9
Signed-off-by: fu jin <fu.jin@intel.com>
/hardware/intel/img/hwcomposer/common/base/HwcLayerList.cpp
2b63842651caf789c8c4e1cc9c642afb954d087a 13-Nov-2013 Lin Xie <lin.xie@intel.com> HWC: Fix TOMBSTONE if overlay plane is in use.

BZ: 151714

If the overlay plane is in use, the getPlane will return a null.
Add a check to avoid TOMBSTONE.

Change-Id: I8915a1ce2988cffd4ed8c7a51ac3efb394e82c68
Signed-off-by: Lin Xie <lin.xie@intel.com>
/hardware/intel/img/hwcomposer/common/base/HwcLayerList.cpp
6f9a24e14d03ffe52840350d808c4c5b84272e6b 31-Oct-2013 Jackie Li <yaodong.li@intel.com> hwc: updated plane allocation logic to consider display controller limitations

BZ: 146867

display plane has its limitations on the data buffer size. this patch
updated plane allocation logic, so that we only assign display planes to
the layers with reasonable data buffers.

NOTE: ANR was found after switching sprite D from wallpaper layer to launcher
layer WITH smart composition enabled.

Change-Id: I0ddd9965dfff55b26b0c1b5d4c1800e43f0b0fe4
Signed-off-by: Jackie Li <yaodong.li@intel.com>
Signed-off-by: Andy Qiu <junhai.qiu@intel.com>
/hardware/intel/img/hwcomposer/common/base/HwcLayerList.cpp
4e5d2d69ec3584178ddca1ebc72be54b32cd8c07 11-Nov-2013 Jackie Li <yaodong.li@intel.com> hwc: fixed power regression introduced by smart composition

BZ: 151235

made smart composition changes only happen on fb layers so
that framebuffer target layer won't be impacted during smart
composition setup, otherwise, surface flinger would schedule
3D works if we set framebuffer target layer type to HWC_FRAMEBUFFER.

Change-Id: I8be7ca65cc0d80a647871f481fa5d927fd6cbfc9
Signed-off-by: Jackie Li <yaodong.li@intel.com>
/hardware/intel/img/hwcomposer/common/base/HwcLayerList.cpp
7ec5fdc5a39152f29b75f7cbd9799d4580803715 07-Nov-2013 Lin Xie <lin.xie@intel.com> Fix local video freeze during rotation.

BZ: 150139

Let the local device use the overlay during rotation since the flag
ROTATION_IN_PROGRESS is only feasible for external display device.

Change-Id: Ice7d9ad3a1bfd5125c6ae3e762b4c9bb4f810606
Signed-off-by: Lin Xie <lin.xie@intel.com>
/hardware/intel/img/hwcomposer/common/base/HwcLayerList.cpp
9332f677fa9b02f55ff910ca08a36eb6f23030d6 01-Nov-2013 Andy Qiu <junhai.qiu@intel.com> Continue HWC initialization when AllocDevice is not available.

BZ: 148667

Missing AllocDevice is not a fatal error. Some features such as
HDMI mode setting will fail however.

Change-Id: I24074e09de3446dd26c313ecece142c5ec5022bf
Signed-off-by: Andy Qiu <junhai.qiu@intel.com>
/hardware/intel/img/hwcomposer/common/base/HwcLayerList.cpp
f26a20040c647206ead0ca4edb092687e16457da 31-Oct-2013 Andy Qiu <junhai.qiu@intel.com> Fix "no-video" issue during screen rotation when playing protected video

BZ: 146295

During screen rotation, SF set HWC_ROTATION_IN_PROGRESS flag and hwc skips
rendering protected video. This flag is not cleared after rotation completes,
as a result, video is never rendered.

This is a workaround patch. Need to remove HWC_ROTATION_IN_PROGRESS hack in
surface flinger.

Change-Id: Ifeb39984cba391b41254b30c237603ea458779d0
Signed-off-by: Andy Qiu <junhai.qiu@intel.com>
/hardware/intel/img/hwcomposer/common/base/HwcLayerList.cpp
44a5ea98c04f31097ac55e20481abf54f21f4936 28-Oct-2013 Lin Xie <lin.xie@intel.com> HWC: The video layer updated flag should be always true.

BZ: 147430

Sometimes, the handle of video buffer is not changed when VPP is on.
For video case, we have to mark the updated flag always be true.
So that if it fall back to ST, the smart composition won't be enabled
and the video won't be freezed.

Change-Id: I8623f4ae0edac53aea66c7aaf874634c12351355
Signed-off-by: Lin Xie <lin.xie@intel.com>
/hardware/intel/img/hwcomposer/common/base/HwcLayerList.cpp
27d326d9847a49fa448e370686280db92043ef77 29-Oct-2013 Andy Qiu <junhai.qiu@intel.com> change (de)initialization order of buffer manager and plane manager

BZ: 147858

plane manager has dependency on buffer manager, so create buffer manager
first during initialization, and destroy it later during de-initialization.

Change-Id: I293bc1caa909b1f8676dd1ad8b2219fa758f173b
Signed-off-by: Andy Qiu <junhai.qiu@intel.com>
/hardware/intel/img/hwcomposer/common/base/HwcLayerList.cpp
cb517c831dd10f9bf5a027b27754a3386f5fd710 22-Oct-2013 Jackie Li <yaodong.li@intel.com> hwc: improved plane allocation logic to reclaim primary plane on demand

BZ: 143927

patch 2/2 to reduce display DDR bandwidth during video playback

updated plane allocation logics to don't attach primary plane when all
layers were handled by display planes.

Change-Id: I07d8105a1514c7c4f55ee484632f8835e71c1360
Signed-off-by: Jackie Li <yaodong.li@intel.com>
/hardware/intel/img/hwcomposer/common/base/HwcLayerList.cpp
93d8b1eff292888eeb8bf47299a766185a4fc8b0 15-Oct-2013 Andy Qiu <junhai.qiu@intel.com> enable smart composition

BZ: 133634

If all RGB layers are not updated, composition type of these
layers can be set to HWC_OVERLAY to skip composition.

Change-Id: I35b3dd3bbb86c0131b001691d0b2792ae32f6195
Signed-off-by: Andy Qiu <junhai.qiu@intel.com>
Reviewed-on: http://android.intel.com:8080/138402
Reviewed-by: Patel, Hitesh K <hitesh.k.patel@intel.com>
Tested-by: Patel, Hitesh K <hitesh.k.patel@intel.com>
Reviewed-by: cactus <cactus@intel.com>
Tested-by: cactus <cactus@intel.com>
/hardware/intel/img/hwcomposer/common/base/HwcLayerList.cpp
bd4ddc897d2cca5e26ba3ab5aaa72206217580bc 30-Sep-2013 Jackie Li <yaodong.li@intel.com> hwc: native fence support

BZ: 143498

patch 3/3 of native fence enabling

updated HWC to support acquire fence and release fence.

Change-Id: I89ea629307b9f6ccefc24b56d701b2c5e94e1c4e
Signed-off-by: Jackie Li <yaodong.li@intel.com>
Reviewed-on: http://android.intel.com:8080/135194
Reviewed-by: Qiu, Junhai <junhai.qiu@intel.com>
Reviewed-by: Patel, Hitesh K <hitesh.k.patel@intel.com>
Tested-by: Patel, Hitesh K <hitesh.k.patel@intel.com>
Reviewed-by: cactus <cactus@intel.com>
Tested-by: cactus <cactus@intel.com>
/hardware/intel/img/hwcomposer/common/base/HwcLayerList.cpp
51779bcebdb675fefc8a23f17e4e1070590f85a0 27-Sep-2013 Andy Qiu <junhai.qiu@intel.com> Fix one klockwork issue.

BZ: 141535

Fix one klockwork issue.
Replace ETRACE with WTRACE for non-critical error.

Change-Id: I87223a280422650cd493336cc0679f728a8a0266
Signed-off-by: Andy Qiu <junhai.qiu@intel.com>
Reviewed-on: http://android.intel.com:8080/134734
Reviewed-by: Jin, Fu <fu.jin@intel.com>
Reviewed-by: Hu, Austin <austin.hu@intel.com>
Reviewed-by: Patel, Hitesh K <hitesh.k.patel@intel.com>
Tested-by: Patel, Hitesh K <hitesh.k.patel@intel.com>
Reviewed-by: cactus <cactus@intel.com>
Tested-by: cactus <cactus@intel.com>
/hardware/intel/img/hwcomposer/common/base/HwcLayerList.cpp
6a56bd739af22a3c34067426edbb3082504d8e03 13-Sep-2013 Andy Qiu <junhai.qiu@intel.com> [hwc] enhance overlay management

BZ: 140456

This patch enables dynamic overlay assignment to different pipe. When
overlay is assigned to a different pipe, HWC will first mark overlay
is "disabled pending" and then query kernel whether it is fully disabled
subsequently. Overlay can be re-enabled only when it is fully disabled,
to avoid "overlay crash" issue.

Change-Id: I26d3e94bc47770877aadf19992ea90e6c968e017
Signed-off-by: Andy Qiu <junhai.qiu@intel.com>
Reviewed-on: http://android.intel.com:8080/131833
Reviewed-by: Patel, Hitesh K <hitesh.k.patel@intel.com>
Tested-by: Patel, Hitesh K <hitesh.k.patel@intel.com>
Reviewed-by: cactus <cactus@intel.com>
Tested-by: cactus <cactus@intel.com>
/hardware/intel/img/hwcomposer/common/base/HwcLayerList.cpp
d191dc7a785f312ede10d711720d8ca32a71b44c 30-Jul-2013 Jackie Li <yaodong.li@intel.com> hwc: optimized plane allocation

BZ: 127803

patch 2/2 of z order setting and plane allocation optimization.

optimized plane allocation algorithm to try to achieve following goals:

1) attach display planes to large layers which need more GPU power to do
composition.
2) attach display planes to layers which contain protected content as
much as possible
3) scalability to support different z order configure restrictions
of different hardware platforms
4) allocate as much display planes as possible

remain issues:
1) flickering was observed rarely when doing manual stress tests, which
root caused by turning on sw layer support. will fix it in another
RGX patch.
2) found an issue that buffer crop may be incorrect, which can be fixed
by patch http://android.intel.com:8080/#/c/124022/

Conflicts:

common/base/HwcLayerList.cpp

Change-Id: I0fbef3b8cda227ed3aaf75775330ae136c2b5298
Signed-off-by: Jackie Li <yaodong.li@intel.com>
Signed-off-by: Austin Hu <austin.hu@intel.com>
Signed-off-by: Jackie Li <yaodong.li@intel.com>
Signed-off-by: Austin Hu <austin.hu@intel.com>
Signed-off-by: Jackie Li <yaodong.li@intel.com>
Reviewed-on: http://android.intel.com:8080/122669
Reviewed-by: Qiu, Junhai <junhai.qiu@intel.com>
Reviewed-by: Dai, Yu <yu.dai@intel.com>
Tested-by: Dai, Yu <yu.dai@intel.com>
Reviewed-by: cactus <cactus@intel.com>
Tested-by: cactus <cactus@intel.com>
/hardware/intel/img/hwcomposer/common/base/HwcLayerList.cpp
284336b37affb07241f38c899722c25c1c0343b2 23-Aug-2013 fu jin <fu.jin@intel.com> Workaround: always relate overlay A to pipe A and overlay C to pipe B

BZ:129253

Overlay plane may crash on pipe switch. The workaround always relate overlay A to pipe A and
overlay C to pipe B. But the root cause still needs to be investigated.

Change-Id: I094f14972c225c376844a46e12b0d84276268fb0
Signed-off-by: fu jin <fu.jin@intel.com>
Reviewed-on: http://android.intel.com:8080/127517
Reviewed-by: Qiu, Junhai <junhai.qiu@intel.com>
Reviewed-by: Shi, PingX <pingx.shi@intel.com>
Tested-by: Shi, PingX <pingx.shi@intel.com>
Reviewed-by: cactus <cactus@intel.com>
Tested-by: cactus <cactus@intel.com>
/hardware/intel/img/hwcomposer/common/base/HwcLayerList.cpp
ea3116abf4439e5ad74811338765202c7dccb1d8 13-Aug-2013 Zhu,Tianyang <tianyang.zhu@intel.com> skip all YUV layers in rotation progress

BZ:122528

If device is rotated during video playback,
RGB layer and YUV layer are created at the same time,
but the position of YUV layer is calculated wrong by APP or SF ,
so skip these layers for better user experience.

Change-Id: Ib906b874100aa8922538bb13edd44538f2f57d1e
Signed-off-by: Zhu,Tianyang <tianyang.zhu@intel.com>
Reviewed-on: http://android.intel.com:8080/125186
Reviewed-by: Xie, Lin <lin.xie@intel.com>
Reviewed-by: Qiu, Junhai <junhai.qiu@intel.com>
Reviewed-by: Wang, Lili A <lili.a.wang@intel.com>
Reviewed-by: Shi, PingX <pingx.shi@intel.com>
Tested-by: Shi, PingX <pingx.shi@intel.com>
Reviewed-by: cactus <cactus@intel.com>
Tested-by: cactus <cactus@intel.com>
/hardware/intel/img/hwcomposer/common/base/HwcLayerList.cpp
93bb7e9c4def3499c34b732425ee703473d95b47 01-Aug-2013 Jackie Li <yaodong.li@intel.com> hwc: fixed a rotation bug when rotating DUT from landscape to portrait mode

BZ: 117604

the root cause is screen shot layer was filtered during layer list analyzing.

this patch added screen shot layer back so that hwc can assign plane and set
z order correctly. During the rotation primary plane will be placed at the top
of other layers which aligns with surface flinger layer list structure.

Signed-off-by: Jackie Li <yaodong.li@intel.com>

Change-Id: Ifb962a8cb80ac55d602f129f09ab7b6f6d820ac2
Reviewed-on: http://android.intel.com:8080/122894
Reviewed-by: buildbot <buildbot@intel.com>
Reviewed-by: Qiu, Junhai <junhai.qiu@intel.com>
Reviewed-by: Patel, Hitesh K <hitesh.k.patel@intel.com>
Tested-by: Patel, Hitesh K <hitesh.k.patel@intel.com>
Reviewed-by: cactus <cactus@intel.com>
Tested-by: cactus <cactus@intel.com>
/hardware/intel/img/hwcomposer/common/base/HwcLayerList.cpp
de2f6c3bfb8ac09d42ce12f0206d2ee0d2443527 30-Jul-2013 Gu, Wangyi <wangyi.gu@intel.com> hwc: disable overlay if the layer has a tranform with YV12 format

BZ: 124382

Root cause: In MRFLD, YV12 format goes through overlay path while ST in CTP.
In the landscape mode, YV12 doesn't have rotated buffer, which make the overlay
layer update failed, and the NV12 overlay buffer is not updated, so this
issue happen.
This patch merges the functionality of PlaneCapabilities::isTransformSupported
into PlaneCapabilities::isFormatSupported.

Change-Id: I560b9fb65705e9545838196b35d3cb4bf674210f
Signed-off-by: Gu, Wangyi <wangyi.gu@intel.com>
Reviewed-on: http://android.intel.com:8080/121931
Reviewed-by: buildbot <buildbot@intel.com>
Reviewed-by: Qiu, Junhai <junhai.qiu@intel.com>
Reviewed-by: Ma, Hongpeng <hongpeng.ma@intel.com>
Reviewed-by: Feng, Wei <wei.feng@intel.com>
Reviewed-by: Shi, PingX <pingx.shi@intel.com>
Tested-by: Shi, PingX <pingx.shi@intel.com>
Reviewed-by: cactus <cactus@intel.com>
Tested-by: cactus <cactus@intel.com>
/hardware/intel/img/hwcomposer/common/base/HwcLayerList.cpp
d9045abeda7b707f3c55779989fc77b2197bc38e 18-Jul-2013 Jackie Li <yaodong.li@intel.com> hwc: improved Z order config calculation & setting

BZ: 121852

Apps floating video playback window such as social gallery require
z order configure should be exactly the same as layer stack passed
by surface flinger. or display might messed up because of incorrect
plane z order configuration.

this patch improved z order calculation so that we can assign display
planes and setup z order configure accordingly by aligning with both
orignal layer z orders and display hardware z order settings.

Conflicts:

common/planes/DisplayPlaneManager.cpp

Change-Id: I79607f5a4a49c97f3ec62492c29f90d09e1fa546
Signed-off-by: Jackie Li <yaodong.li@intel.com>
Signed-off-by: Austin Hu <austin.hu@intel.com>
Reviewed-on: http://android.intel.com:8080/119524
Reviewed-by: Qiu, Junhai <junhai.qiu@intel.com>
Reviewed-by: Patel, Hitesh K <hitesh.k.patel@intel.com>
Tested-by: Sun, Hang L <hang.l.sun@intel.com>
Reviewed-by: buildbot <buildbot@intel.com>
Tested-by: buildbot <buildbot@intel.com>
/hardware/intel/img/hwcomposer/common/base/HwcLayerList.cpp
eb726af21649d79ed720bdf329e0849270995c45 31-May-2013 Andy Qiu <junhai.qiu@intel.com> Miscellaneous optimization on HWC

BZ: 97852

1) new lockDataBuffer and unlockDataBuffer to avoid frequent memory allocation and de-allocation
2) move hotplug control and vsync control to HotplugEventObserver and VsyncEventObserver to make them self-contained
3) new event queue to handle hotplug event, video event and phone event
4) dynamic vsync source management can be easily disabled or enabled. (disabling it will cause UI hang)
5) eliminate using of "goto" design
6) make destructor virtual, not necessary for derived class but is a common practice
7) disable overlay use when video playback starts, to avoid potential scrambled RGB overlay
8) vsync status is committed only when it is scussefully enabled or disabled
9) fix memory leak (DataBuffer allocated but not released)
10) many other small improvements

Change-Id: I43eeb5c4ea4f991c5d68de14d4fe73ea4a55bb4c
Signed-off-by: Andy Qiu <junhai.qiu@intel.com>
Reviewed-on: http://android.intel.com:8080/113693
Tested-by: Patel, Hitesh K <hitesh.k.patel@intel.com>
Reviewed-by: Patel, Hitesh K <hitesh.k.patel@intel.com>
Reviewed-by: buildbot <buildbot@intel.com>
Tested-by: buildbot <buildbot@intel.com>
/hardware/intel/img/hwcomposer/common/base/HwcLayerList.cpp
c5bd3cd6c8e854c6581105a5867e4d251b5281fe 18-Jun-2013 Jackie Li <yaodong.li@intel.com> hwc: fixed a mem leak issue

BZ: 114988

hwc had no chance to free data buffers when a reclaimed plane
was reused immediately for the next frame.

this patch fixed invalidation of the data buffers of a plane
an invalidation operation will NOT release the active data buffer
(which is being consumed by this plane). Meanwhile, this patch
also refined plane manager and made sure data buffers of primary
plane can be invalidated correctly.

Change-Id: I2c6d51de8322203640d287373c71cf00c39ceab4
Signed-off-by: Jackie Li <yaodong.li@intel.com>
Reviewed-on: http://android.intel.com:8080/114052
Reviewed-by: Qiu, Junhai <junhai.qiu@intel.com>
Tested-by: Patel, Hitesh K <hitesh.k.patel@intel.com>
Reviewed-by: Patel, Hitesh K <hitesh.k.patel@intel.com>
Reviewed-by: buildbot <buildbot@intel.com>
Tested-by: buildbot <buildbot@intel.com>
/hardware/intel/img/hwcomposer/common/base/HwcLayerList.cpp
e2ad4c047651d4442f6a0e002290016d45e9201a 28-May-2013 fu jin <fu.jin@intel.com> Extend current design for supporting future platforms

BZ: 112342

Extend current design for support future platforms:
1) flip takes context parameter
2) commitBegin and commitEnd take parameters for display contents
3) Initialize/Deinitialize of BufferManager need to be virtual
4) Move management of Primary display plane from physical device to HWC Layer list.
5) Better data buffer cache management to avoid unbound increment of cache
6) Calling deinitializer before deleting object

Change-Id: I1aea10e52ac778e101559855a1fce7c7add45336
Signed-off-by: fu jin <fu.jin@intel.com>
Signed-off-by: Andy Qiu <junhai.qiu@intel.com>
Signed-off-by: fu jin <fu.jin@intel.com>
Signed-off-by: Andy Qiu <junhai.qiu@intel.com>
Reviewed-on: http://android.intel.com:8080/110631
Reviewed-by: buildbot <buildbot@intel.com>
Tested-by: buildbot <buildbot@intel.com>
/hardware/intel/img/hwcomposer/common/base/HwcLayerList.cpp
09149b5d023fe6407dc09a6636c4b4d1d189738f 05-Jun-2013 Jackie Li <yaodong.li@intel.com> hwc: enabled Z order configuring for sprite plane.

BZ: 110507

This is 2/2 patch to enable bypass layer when screen was rotated

Change-Id: Ifb711500f4b25da3f40fc0ffd651d4e5c0b2f329
Signed-off-by: Jackie Li <yaodong.li@intel.com>
Signed-off-by: Austin Hu <austin.hu@intel.com>
Reviewed-on: http://android.intel.com:8080/111832
Reviewed-by: cactus <cactus@intel.com>
Reviewed-by: Patel, Hitesh K <hitesh.k.patel@intel.com>
Reviewed-by: Qiu, Junhai <junhai.qiu@intel.com>
Reviewed-by: Gummadi, Latha C <latha.c.gummadi@intel.com>
Tested-by: Gummadi, Latha C <latha.c.gummadi@intel.com>
Reviewed-by: buildbot <buildbot@intel.com>
Tested-by: buildbot <buildbot@intel.com>
/hardware/intel/img/hwcomposer/common/base/HwcLayerList.cpp
d4e9a8ac464ef6fde755c1a8c0902dc02a1270ec 29-May-2013 Andy Qiu <junhai.qiu@intel.com> blank secondary display during phone call.

BZ:110201

For privacy reason, secondary display (HDMI out or WiDi out) needs to be blanked
during a phone call.

Change-Id: Ia0272023ac0b65a735b1af8c3aa3ecab26554ef1
Signed-off-by: Andy Qiu <junhai.qiu@intel.com>
Reviewed-on: http://android.intel.com:8080/110611
Reviewed-by: cactus <cactus@intel.com>
Reviewed-by: Hu, Austin <austin.hu@intel.com>
Reviewed-by: Gummadi, Latha C <latha.c.gummadi@intel.com>
Tested-by: Gummadi, Latha C <latha.c.gummadi@intel.com>
Reviewed-by: buildbot <buildbot@intel.com>
Tested-by: buildbot <buildbot@intel.com>
/hardware/intel/img/hwcomposer/common/base/HwcLayerList.cpp
4a17bd5f8632806430043ab67e10c54a1406a7a2 22-May-2013 Jackie Li <yaodong.li@intel.com> hwc: enabled overlay C & sprite D

BZ: 108705

The 2/2 patch for Overlay C and Sprite D enabling in Mrfld.

Change-Id: I7b782d49958ed0baad073326b244b31ba930db45
Signed-off-by: Austin Hu <austin.hu@intel.com>
Signed-off-by: Jackie Li <yaodong.li@intel.com>
Signed-off-by: Andy Qiu <junhai.qiu@intel.com>
Signed-off-by: Austin Hu <austin.hu@intel.com>
Reviewed-on: http://android.intel.com:8080/110624
Reviewed-by: cactus <cactus@intel.com>
Reviewed-by: Stimson, Dale B <dale.b.stimson@intel.com>
Reviewed-by: Patel, Hitesh K <hitesh.k.patel@intel.com>
Tested-by: Stimson, Dale B <dale.b.stimson@intel.com>
Reviewed-by: buildbot <buildbot@intel.com>
Tested-by: buildbot <buildbot@intel.com>
/hardware/intel/img/hwcomposer/common/base/HwcLayerList.cpp
8ccc5b1a7b75d8e471218e416306ce7bada5f5ec 28-May-2013 rkraiemx <rihabx.kraiem@intel.com> Revert "hwc: enabled overlay C & sprite D"

BZ: 108705

This reverts commit 2d3aa0be0f2ada6d65155dba498fa66e98c47f14.

Change-Id: I625f1eb43250544eae87fdba0166ef2df9d90710
Orig-Change-Id: I03badb303eaad1c3053a57fbd124bddf8b9fda3e
Signed-off-by: rkraiemx <rihabx.kraiem@intel.com>
Reviewed-on: http://android.intel.com:8080/110147
/hardware/intel/img/hwcomposer/common/base/HwcLayerList.cpp
2d3aa0be0f2ada6d65155dba498fa66e98c47f14 22-May-2013 Jackie Li <yaodong.li@intel.com> hwc: enabled overlay C & sprite D

BZ: 108705

The 2/2 patch for overlay C and sprite D enabling in mrfld.

Change-Id: I03badb303eaad1c3053a57fbd124bddf8b9fda3e
Signed-off-by: Jackie Li <yaodong.li@intel.com>
Signed-off-by: Austin Hu <austin.hu@intel.com>
Signed-off-by: Jackie Li <yaodong.li@intel.com>
Signed-off-by: Andy Qiu <junhai.qiu@intel.com>
Signed-off-by: Austin Hu <austin.hu@intel.com>
Reviewed-on: http://android.intel.com:8080/108420
Reviewed-by: cactus <cactus@intel.com>
Reviewed-by: Stimson, Dale B <dale.b.stimson@intel.com>
Tested-by: Stimson, Dale B <dale.b.stimson@intel.com>
Reviewed-by: buildbot <buildbot@intel.com>
Tested-by: buildbot <buildbot@intel.com>
/hardware/intel/img/hwcomposer/common/base/HwcLayerList.cpp
114561fb66d0464f48d373487c29a81859ce33a7 16-May-2013 Andy Qiu <junhai.qiu@intel.com> Dynamically select vsync source.

BZ:108737

When HDMI is connected, vsync event should come from HDMI.
However, from surface flinger perspective, vsync source should
come always from primary display. So when vsyne event is received
source is set to 0 (for primary display).

Change-Id: I6826203e0b1ff329eabfd839fab6647f0e743fe8
Signed-off-by: Andy Qiu <junhai.qiu@intel.com>
Reviewed-on: http://android.intel.com:8080/108022
Reviewed-by: Stimson, Dale B <dale.b.stimson@intel.com>
Tested-by: Stimson, Dale B <dale.b.stimson@intel.com>
Reviewed-by: buildbot <buildbot@intel.com>
Tested-by: buildbot <buildbot@intel.com>
/hardware/intel/img/hwcomposer/common/base/HwcLayerList.cpp
65efc253a628175c7afa95c431b746ea20052794 26-Apr-2013 Andy Qiu <junhai.qiu@intel.com> Presentation and video extended mode support for HDMI and WiDi

BZ: 103740

Implement DisplayQuery class to check whether a layer is a video layer.

Implement DisplayAnalyzer to analyze contents first before layers are prepared,
if video extended mode is set by the analyzer then video layer in the primary layer is skipped.

If visible layer in video extended mode is 0 then display of primary
device can be turned off, otherwise, display of primary device needs
to be turned on always. (Turn off display will cause system to freeze,
so the feature is disabled for now).

Change-Id: I74711a7e8eab9a2055fba043a910e7db4fbfb1f9
Signed-off-by: Andy Qiu <junhai.qiu@intel.com>
Reviewed-on: http://android.intel.com:8080/104852
Reviewed-by: cactus <cactus@intel.com>
Reviewed-by: Gummadi, Latha C <latha.c.gummadi@intel.com>
Tested-by: Gummadi, Latha C <latha.c.gummadi@intel.com>
Reviewed-by: buildbot <buildbot@intel.com>
Tested-by: buildbot <buildbot@intel.com>
/hardware/intel/img/hwcomposer/common/base/HwcLayerList.cpp
25caf44022e04f4dc131e51b85b2fb8f966d57e7 24-Apr-2013 Andy Qiu <junhai.qiu@intel.com> Handle protected video playback.

BZ: 103301

This patch contains the following changes:

1) Define GraphicBuffer class and make it part of common library.
This class wraps buffer format and buffer usage as for now and provides
helper to check whether buffer is protected.

2) Avoid overhead of multiple data buffer creation during prepare, buffer is created
only once and attributes of buffer is stored internally for later use.

3) Ensure protected video is always rendered using harrdware overlay. IED needs to
be enabled when protected layer is received, a special hint is set in backbuffer
(OSTART_0Y) such that display controller can enable IED decryption during flip.

Change-Id: I32c4cf5f72e4fd650678264aaa9f0f63376f998b
Signed-off-by: Andy Qiu <junhai.qiu@intel.com>
Reviewed-on: http://android.intel.com:8080/102513
Reviewed-by: cactus <cactus@intel.com>
Reviewed-by: Jin, Fu <fu.jin@intel.com>
Reviewed-by: Bish, Jim <jim.bish@intel.com>
Reviewed-by: Stimson, Dale B <dale.b.stimson@intel.com>
Tested-by: Stimson, Dale B <dale.b.stimson@intel.com>
Reviewed-by: buildbot <buildbot@intel.com>
Tested-by: buildbot <buildbot@intel.com>
/hardware/intel/img/hwcomposer/common/base/HwcLayerList.cpp
e2b2a5fe291662041d1bbec00996c2ba302dc4c9 13-Apr-2013 Andy Qiu <junhai.qiu@intel.com> Make HWC logging scalable.

BZ:100612

In current implemnention, if verbose logging is enabled there will be tons of messages printed out, which
makes it less useful for debugging purpose. We need one way to selectively enable or disable certain verbose
information.

For each log message, we also want class name and function name to be automatically pre-appended, this removes burden
of adding it manually, and enables developer to focus on key output message only.

Changes in this patch include:

1) define VTRACE, DTRACE, ITRACE, WTRACE and ETRACE, they are equivalent to LOGV, LOGD, LOGI, LOGW and LOGE
with class name and function name automatically pre-appended.
2) define CTRACE to trace function call entrance
3) define XTRACE to trace function call exit
4) CTRACE and XTRACE are turned off by default. They should only be enabled to trace deadlock, infinite loop or display freeze.
5) define ATRACE to trace function call entrance with input arguments, this is turned off by default either.

New type of trace can be defined to control output of certain type of information.

Change-Id: Iab185ad5ce407880322b2b306ea43bdb8440facc
Signed-off-by: Andy Qiu <junhai.qiu@intel.com>
Reviewed-on: http://android.intel.com:8080/101952
Reviewed-by: Hu, Austin <austin.hu@intel.com>
Reviewed-by: Gummadi, Latha C <latha.c.gummadi@intel.com>
Tested-by: Gummadi, Latha C <latha.c.gummadi@intel.com>
Reviewed-by: buildbot <buildbot@intel.com>
Tested-by: buildbot <buildbot@intel.com>
/hardware/intel/img/hwcomposer/common/base/HwcLayerList.cpp
cf69645a7a038ffa3cb5c2fb1e38618219d8f2fe 10-Apr-2013 Jackie Li <yaodong.li@intel.com> MRFL::hwc: fixed video playback never uses overlay again after failing to get rotated
buffer from video driver.

BZ: 99458

Latest HWC impl only fallback to ST once failed to update the video layer & never
switch back to overlay even if rotated video buffer was ready.

This patch updated the error handling, so that hwc has a chance to switch back to
overlay when it detected the video layer can be updated to overlay successfully.

Change-Id: I53c5c208d06329e89464a08c0dca91200a91af4f
Signed-off-by: Jackie Li <yaodong.li@intel.com>
Signed-off-by: Andy Qiu <junhai.qiu@intel.com>
Signed-off-by: Jackie Li <yaodong.li@intel.com>
Signed-off-by: Andy Qiu <junhai.qiu@intel.com>
Reviewed-on: http://android.intel.com:8080/101015
Reviewed-by: Hu, Austin <austin.hu@intel.com>
Reviewed-by: Gummadi, Latha C <latha.c.gummadi@intel.com>
Tested-by: Gummadi, Latha C <latha.c.gummadi@intel.com>
Reviewed-by: buildbot <buildbot@intel.com>
Tested-by: buildbot <buildbot@intel.com>
/hardware/intel/img/hwcomposer/common/base/HwcLayerList.cpp
8a427146c6f68f9add960bbd18c4f84c9eeee4a5 06-Apr-2013 Andy Qiu <junhai.qiu@intel.com> Support HWC 1.2 interface.

BZ:99151

This change supports HWC 1.2 interface.
The version number needs to be upgraded to 1.2 once Widi implementation is ready.

Change-Id: Icb616181811190956251628c7ba70a6c8b7962a8
Signed-off-by: Andy Qiu <junhai.qiu@intel.com>
Reviewed-on: http://android.intel.com:8080/100276
Reviewed-by: buildbot <buildbot@intel.com>
Tested-by: buildbot <buildbot@intel.com>
/hardware/intel/img/hwcomposer/common/base/HwcLayerList.cpp
21dcf1a10b1b92d12984b35355c137c3ceccac37 07-Apr-2013 Jackie Li <yaodong.li@intel.com> MRFL:hwc: fixed random black box on top of video playback on HDMI

BZ: 98440

This issue was due to frame buffer hadn't been cleared & was placed
on the top overlay.

This patch sets the HWC_HINT_CLEAR_FB flag to trigger surfaceflinger's
clear operation which can guarantee RGB plane is transparent after switching
to HDMI.

Change-Id: Id3901154d40eefdee1dda5b30896f77cedadb758
Signed-off-by: Jackie Li <yaodong.li@intel.com>
Reviewed-on: http://android.intel.com:8080/101088
Reviewed-by: Qiu, Junhai <junhai.qiu@intel.com>
Reviewed-by: cactus <cactus@intel.com>
Reviewed-by: Dai, Yu <yu.dai@intel.com>
Tested-by: Dai, Yu <yu.dai@intel.com>
Reviewed-by: buildbot <buildbot@intel.com>
Tested-by: buildbot <buildbot@intel.com>
/hardware/intel/img/hwcomposer/common/base/HwcLayerList.cpp
e6ecdadd57e79c2218b3e6ae407f12599f33bd22 25-Mar-2013 Jackie Li <yaodong.li@intel.com> Enable refactored HWC for merrifield.

BZ: 95290

This refactored HWC replaces current HWC for merrifield under hardware/intel/mfld_cdk/hwc/merrifield.

Change-Id: I00986b24e70e33c13e5e81e8b3473a42166640a1
Signed-off-by: Andy Qiu <junhai.qiu@intel.com>
Signed-off-by: Jackie Li <yaodong.li@intel.com>
Reviewed-on: http://android.intel.com:8080/98227
Reviewed-by: cactus <cactus@intel.com>
Reviewed-by: Gummadi, Latha C <latha.c.gummadi@intel.com>
Tested-by: Gummadi, Latha C <latha.c.gummadi@intel.com>
Reviewed-by: buildbot <buildbot@intel.com>
Tested-by: buildbot <buildbot@intel.com>
/hardware/intel/img/hwcomposer/common/base/HwcLayerList.cpp
6a6081a46a83da606cf21548879b37695adc7e1f 23-Mar-2013 Andy Qiu <junhai.qiu@intel.com> Initial version of refactored HWC, based on design from Jackie.

BZ: 95246

This is the first submission of refactored HWC, based on design from Jackie.
Build is temporarily disabled.

Change-Id: Idf6d8ab5263cfa797d9e3b93328702f486b30c43
Signed-off-by: Andy Qiu <junhai.qiu@intel.com>
Reviewed-on: http://android.intel.com:8080/97996
Reviewed-by: cactus <cactus@intel.com>
Reviewed-by: Dai, Yu <yu.dai@intel.com>
Tested-by: Dai, Yu <yu.dai@intel.com>
Reviewed-by: buildbot <buildbot@intel.com>
Tested-by: buildbot <buildbot@intel.com>
/hardware/intel/img/hwcomposer/common/base/HwcLayerList.cpp