History log of /hardware/qcom/display/msm8226/libhwcomposer/hwc_utils.cpp
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
60712080d834941754dca8d34adac6bd355318ea 03-Jul-2014 Raj Kamal <rkamal@codeaurora.org> Revert "Set priority among various display devices"

* This reverts commit 52b4fdbdbd4b935c48164542cdd1f4a1292cb08a.

* Since DisplayDevices are not created for non-wfd virtual
displays(CTS/SR/SSD) anymore, we can remove these checks.

Change-Id: I9249a70c6d6f6b42f268e6ec8a28c0a86b954c4e
/hardware/qcom/display/msm8226/libhwcomposer/hwc_utils.cpp
c5628e5e5d07912ad30849801f18c07ab433a4f5 30-Jun-2014 Saurabh Shah <saurshah@codeaurora.org> hwc/overlay: Get rot dest dimensions instead of manipulating source

Currently for Mdss rotator we manipulate the layer buffer dimensions
to be equal to what rotator's destination dimensions would be, so that
these could be fed to MDP. Instead, this patch introduces APIs in
rotator so that hwc can directly query destination crop, width, height,
format from rotator.

This also simplifies the updateSource() and configRotator() helpers.

Change-Id: I501d998f2e0574683c764af9422742b2426ba0c7
/hardware/qcom/display/msm8226/libhwcomposer/hwc_utils.cpp
5470587fb130854eb11a110b45d951883391e356 23-Jun-2014 Arun Kumar K.R <akumarkr@codeaurora.org> hwc: initialize viewFrame for primary display

viewFrame for primary display will always be full screen, hence
initialize it to primary resolution

Change-Id: I0f6ce79a9af6eac9b7b8a684c5b690c8b4a9e760
/hardware/qcom/display/msm8226/libhwcomposer/hwc_utils.cpp
392015f27bf5930ccb8b2c8955b28c2137b4c65b 03-Jun-2014 Arun Kumar K.R <akumarkr@codeaurora.org> hwc: Extend PTOR feature for two layers

- Consider two smallest layers for PTOR feature which uses MDP comp.
- These two layers are rendered on a buffer and are queued to MDP
to acheive full MDP Composition
- This helps to acheive performance enhancement

Change-Id: I43d9306ff19cd2d7a410c885316523965a44cbd4
/hardware/qcom/display/msm8226/libhwcomposer/hwc_utils.cpp
8636d6ec09a6886169903d2f4de259fac8bfcdfd 07-Jun-2014 Tatenda Chipeperekwa <tatendac@codeaurora.org> hwc: Close release fence fd on buf sync ioctl failure

This change closes the release fence fd in the event that
a failure occurs during the buf sync ioctl. This is additional
sanity to ensure that we are not leaking any fd's in userspace.

Change-Id: Ic303aa2a2ed20244605b0f0bd91145e8f3fc8f1b
/hardware/qcom/display/msm8226/libhwcomposer/hwc_utils.cpp
cfb968873b9e94dca883aadabee42b01558faea9 15-Jun-2014 Shalaj Jain <shalajj@codeaurora.org> display: remove compiler warnings

Use correct typecasts and format specifiers and resolve
compiler warnings

Change-Id: I51b12ecb78a9a496cf1f76c3d32892a203f70c43
/hardware/qcom/display/msm8226/libhwcomposer/hwc_utils.cpp
74e109a6891def0f55250476bc28aa2098027606 18-Jun-2014 Saurabh Shah <saurshah@codeaurora.org> hwc/overlay: Fix decimation / bwc bugs

1) While setting BWC check for 90 transform and swap crop
2) Calculate decimation in the getDecimationFactor API itself.
Currently, a residual downscale is calculated and the clients have
to take logs and apply forcible decimation like in MdpCtrl
3) Fix bug where transform gets typecasted to bool

b/14225977

Change-Id: I3c99c571e02e2cf7822342516b6a87d97be553d1
/hardware/qcom/display/msm8226/libhwcomposer/hwc_utils.cpp
4a7fde21bc0dea152a633521d727dda7d540f262 16-Nov-2013 Ramkumar Radhakrishnan <ramkumar@codeaurora.org> hwc: Rotate RGB layer using MDP Rotator

1. Use MDP rotator to rotate RGB layers which are rendered by software
2. Restrict total number of rotator sessions to 4 for all displays
3. Disable RGB layer rotation for all MDP versions < MDP5

Change-Id: Ie93111082dff9a16b614e9768df5d8ce83ff9e25
/hardware/qcom/display/msm8226/libhwcomposer/hwc_utils.cpp
33f1ae81779c5b897987245cde0f498fd6192579 20-May-2014 Ramkumar Radhakrishnan <ramkumar@codeaurora.org> hwc: Define binder interface to set view frame of a display

Define binder interface setViewFrame to set view frame information
of a display by surfaceflinger when projection for that display
changes.

Change-Id: If737b51ae0f04303a1a29c91a9703f64354b61fb
/hardware/qcom/display/msm8226/libhwcomposer/hwc_utils.cpp
63cdccf247d3d0ac16f19f8f7bd1e3da5d7267d1 29-May-2014 Tatenda Chipeperekwa <tatendac@codeaurora.org> hwc: vds: Add support to dump layers, FB and WB output buffer

1. Add hook to dump the layers going to VDS based virtual display.

2. Furthermore, add utility function to dump the frame buffer and
WB output buffer. This will be enabled via a system property

debug.hwc.enable_vds_dump

Once dumping is enabled, the dumps can be extracted from

/data/vds.fb.FORMAT.XRESxYRES.raw
/data/vds.wb.FORMAT.XRESxYRES.raw

e.g. vds.fb.MDP_RGBA_8888.1152x1920.raw

Change-Id: I2435c5507961a52929411206892c005492d5c193
/hardware/qcom/display/msm8226/libhwcomposer/hwc_utils.cpp
4a00e758321e1561b13817aaee07ea43ccaad3e9 06-Jun-2014 Praveena Pachipulusu <pveena@codeaurora.org> hwc: Calculate DPI values according to changed resolution

If dynamic FB feature is enabled, calculate xdpi, ydpi
values based on new resolution.

Change-Id: Icbc8d2161082f60983532d1a57d9142653c65e9a
/hardware/qcom/display/msm8226/libhwcomposer/hwc_utils.cpp
3b66cc8c40ba690452f2ea5f648b408d0164c423 29-May-2014 Ramkumar Radhakrishnan <ramkumar@codeaurora.org> hwc: Set GPU Hint from idlefallback state to GPU

Set the GPU hint to high from idlefallback to GPU state transition.

Change-Id: Ia8c2e44788e7131c4faf5fda32acf0c5b6000cdd
/hardware/qcom/display/msm8226/libhwcomposer/hwc_utils.cpp
1cf3c09dd3d06292982002565a80d09138a358a8 31-May-2014 Jeykumar Sankaran <jsanka@codeaurora.org> hwc: Consider FLIP flags for partial update.

FLIP flags need to be considered while calculating srcCrop and
displayFrame even when a layer is updated partially on dual DSI
panels.

Change-Id: I097b3335e66566d6639848bc8f8382bfeabb7f54
/hardware/qcom/display/msm8226/libhwcomposer/hwc_utils.cpp
80cd536400045e5625ed89af9b297800d69d7b89 14-May-2014 Sushil Chauhan <sushilchauhan@codeaurora.org> hwc: Full MDP Composition mode with overlap region removal

MDP bandwidth limitations can be avoided, if the overlapping region
covered by the smallest layer at a higher z-order, can be composed
on a render buffer using Copybit, and then it can be queued to MDP
along with other layers. It helps to improve performace by avoiding
GPU Composition in use cases like Home Screen pan. To enable this
feature, set system prop "persist.hwc.ptor.enable" to "true" or '1'
and enable Copybit HAL compilation.

Change-Id: Ib719d3dd42477837519518cc427f1b95356c28f7
/hardware/qcom/display/msm8226/libhwcomposer/hwc_utils.cpp
c5936f35d42001585865d95d6824de521630ff73 16-Apr-2014 Ramakant Singh <ramaka@codeaurora.org> hwc : Add support for ABC in MDP3

In display list if one layer has same parameters
as framebuffer on index '0'. Use this layer
as FB and blit other layer(s) on top of it.

Change-Id: If38712781f24a2e27686d2b370643f51a9b05358
/hardware/qcom/display/msm8226/libhwcomposer/hwc_utils.cpp
bd51df0d51c9342f705caeea9c245b919dedb120 28-Mar-2014 Ramakant Singh <ramaka@codeaurora.org> hwc : Add support for single layer Bypass in MDP3

If the display list contains single layer and that layer
has same properties as Frame Buffer, avoid BLIT on Frame buffer
and pass it directly to display.

Change-Id: I24decaca4788432a55b550caa2a1354a670cd6fa
/hardware/qcom/display/msm8226/libhwcomposer/hwc_utils.cpp
5bbc98fa2dcc744a1943cc8c85ce74169fc8a044 08-May-2014 Jeykumar Sankaran <jsanka@codeaurora.org> hwc: Map dirtyRect to layer destination before using.

DirtyRect for a layer is generated w.r.t to its buffer
coordinates. It needs to be mapped for layer destination
(display) coordinates before using it to calculate the frame's
ROI.

Change-Id: Id86f495b2016da2cfd5aed4d86bff6d3035abf10
/hardware/qcom/display/msm8226/libhwcomposer/hwc_utils.cpp
6f7634666209698e4835b9f326278a7068834383 18-Nov-2013 Jeykumar Sankaran <jsanka@codeaurora.org> hwc: Extend partial frame update for split displays

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
/hardware/qcom/display/msm8226/libhwcomposer/hwc_utils.cpp
f2cd42c336f41ca3184c0dc5942fec285a227b81 05-May-2014 Saurabh Shah <saurshah@codeaurora.org> hwc: Fix tearing with RGB layer rotation

Pass the acquire fence count to driver on a buffer sync ioctl call
for the rotator. The count is always 1 since the ioctl is called
once per rotator session. This also means that the rotator has to
wait for only 1 layer always.

The earlier assumption that in the presence of a session id, the
acquire count would be NOP, does not seem to hold with the driver.

Change-Id: I986a436194c66e8ce2a2afb363627f72dc6e20cd
/hardware/qcom/display/msm8226/libhwcomposer/hwc_utils.cpp
2c4de320db5ba9e92cfaa5a7fd67487cec0f26dc 25-Mar-2014 Dileep Kumar Reddi <dkumarre@codeaurora.org> HWC: Update DisplayFrame of all layers properly in Dynamic FB

Use change in HWC_GEOMETRY_CHANGED flag appropriately to avoid
redundant and unintentional overwrites of DisplayFrame values,
which may result fall back to GPU.

Change-Id: Ifb0f8dc5d356c965b6e80644f32392c460fb1ae7
/hardware/qcom/display/msm8226/libhwcomposer/hwc_utils.cpp
4418482cd51e8343e7efd978ccdd17c616d1d78a 14-Apr-2014 Raj Kamal <rkamal@codeaurora.org> hwc: Add target specific checks in hwcomposer

* Mdss driver supports DMA-Multiplexing on wb interface
for certain targets. Add overlay get function to query
this info during pipe allocation for wb.

* UI Scaling on external is not supported on certain
targets due to the lack of availability of pipes with
scalars. Add overlay get function to query this info
to disable action-safe calcs, DRC and others which
require downscaling.

Change-Id: I1726caa4634f72d781561e797078648524ea2eef
/hardware/qcom/display/msm8226/libhwcomposer/hwc_utils.cpp
c5ee4bd551fd15825770154947920733949f8811 27-Feb-2014 Jeykumar Sankaran <jsanka@codeaurora.org> hwc: Use layer dirty rect to calculate frame's updating ROI

Use layer dirty rect instead of display frame to calculate frame's ROI.

Change-Id: If5fe93da7815efdf9b44ed683a4d80b397921cf1
/hardware/qcom/display/msm8226/libhwcomposer/hwc_utils.cpp
b126ad667c4b58794f6a8ab68e5439242117ba72 10-Apr-2014 Raj Kamal <rkamal@codeaurora.org> hwc: Set DMA state at the start of composition

* Set DMA state at the start of the composition cycle
based on the following.

Set it to LINE_MODE if the number of active rotator
sessions are 0.

Set it to BLOCK_MODE if
** A yuv-layer for any display-device requires rotation
** (or) mExtOrientation is set
** (or) mBufferMirrorMode is set

* Separate out the reset helper function into more
modular ones

Change-Id: I6a22ac4379565cd1fd2d875a7a417f4ed3ee0f1e
/hardware/qcom/display/msm8226/libhwcomposer/hwc_utils.cpp
f2ecc8f4b92739fcb1a75089f8fe01db1f178adb 07-Mar-2014 Ramakant Singh <ramaka@codeaurora.org> HWC/Copybit :: Add swap rect feature in HAL for MDP3

We brings all swap rect level checks in HAL from surfaceflinger
for MDP3.
swap rect kicks in case of
1 Only one layer is updating.
2 No overlaypping layers.
3.Both src and dst has same value.(no scaling)
4.No video layer

Change-Id: I881958994e80b53d4969beaaf51518b727a8de78
/hardware/qcom/display/msm8226/libhwcomposer/hwc_utils.cpp
a2b25afe2813c793161cc9fad657d9638e88aec4 01-Apr-2014 Raj kamal <rkamal@codeaurora.org> Display and wfd synchronization during teardown

* Provide a binder interface call for wfd module
to inform display about the start/stop/pause/resume
of wfd session.

* This is needed for wfd-hdmi synchronization in
case of v4l2 wfd solution. If hdmi is plugged
in during v4l2 wfd session, display-hal waits in
uevent thread for wfd teardown notification from
wfd module, before going ahead with configuring
external display.

* For VDS WFD solution, display-hal waits in uevent
thread for wfd-teardown to be signalled from
the composition thread.

Change-Id: I9514cb5bc7ff81de0b5dd4cdf66d8286a64ba094
/hardware/qcom/display/msm8226/libhwcomposer/hwc_utils.cpp
e36c30ff5f33bbe31675d784d2e85a2f2c6a8fcd 09-Apr-2014 Sushil Chauhan <sushilchauhan@codeaurora.org> hwc: Display view frame needs to be set before using it.

The display view frame needs to be set before calling trimLayer api
because it uses view frame to find the scissor for display, which is
used to clip crop for out-of-bounds display frame sent by framework.
If mViewFrame is not set, scissor will be empty rect, which leads to
wrong source crop calculation.

Change-Id: I52ad4eb9037d34aff24c30fe65e3793684445264
/hardware/qcom/display/msm8226/libhwcomposer/hwc_utils.cpp
db307bbb483b94b941ef8e66aa745fc13af906c3 29-Mar-2014 Saurabh Shah <saurshah@codeaurora.org> hwc: featurize using QCOM_BSP

- Use QCOM_BSP for HWC_BLIT and GPUHint features
- These are not avaliable on all platforms

Conflicts:
msm8226/libhwcomposer/hwc_copybit.cpp
msm8226/libhwcomposer/hwc_utils.cpp

Change-Id: Ied0c60246093c868ac708f2f8897f08cec1e8878
/hardware/qcom/display/msm8226/libhwcomposer/hwc_utils.cpp
ebf925e696ac4debee9ed652aea5ba2a21dfa136 31-Mar-2014 Saurabh Shah <saurshah@codeaurora.org> hwc: Add rotator obj to layer-rot-map if acquired.

Add rotator obj to the layer-rot-map soon after its successfully
acquired. This makes sure that any object allocated is accounted
for, irrespective of whether rotator configuration succeeds or not.

Change-Id: I94102d9c607cf61b2eccdf7f2445bb07d309d35c
/hardware/qcom/display/msm8226/libhwcomposer/hwc_utils.cpp
4217cbfc47f3b4f8f0436e3953cf169f7f18a506 17-Feb-2014 Praveena Pachipulusu <pveena@codeaurora.org> hwc: Use proper typecasts.

- Remove compiler warnings
- Use proper typecasts

Change-Id: I7391f32ae31283239f5cebb93b02f3ce3a5c99f3
/hardware/qcom/display/msm8226/libhwcomposer/hwc_utils.cpp
5fc9bd2a980bd3dda48564b471acd29c7f53b097 24-Mar-2014 Ramkumar Radhakrishnan <ramkumar@codeaurora.org> hwc: Fix for HDMI video playback out of boundary in portrait

Fix for out of boundary video playback issue on HDMI where HDMI
resolution is lower than primary resolution.

Change-Id: I4271471cda87e1e3d3805ace8b8723a91979a160
/hardware/qcom/display/msm8226/libhwcomposer/hwc_utils.cpp
2d4d00adfcf5cfae694778eed8b72791148dc23f 21-Mar-2014 Jeykumar Sankaran <jsanka@codeaurora.org> h/q/d: Invoke padding when DMA is not availble for ext rotator.

This change invokes padding round when DMA is used in line mode
and rotator is needed for external display.

Change-Id: I1fef1a988d96695748d79d23b7927844eea237fe
CRs-Fixed: 632069
/hardware/qcom/display/msm8226/libhwcomposer/hwc_utils.cpp
3a21e54387a2b98a15611231e90600aa048a4ddd 29-Mar-2014 Saurabh Shah <saurshah@codeaurora.org> hwc: featurize using QCOM_BSP

- Use QCOM_BSP for HWC_BLIT and GPUHint features
- These are not avaliable on all platforms

Change-Id: Ied0c60246093c868ac708f2f8897f08cec1e8878

Conflicts:
msm8226/libhwcomposer/hwc_copybit.cpp
msm8226/libhwcomposer/hwc_utils.cpp
/hardware/qcom/display/msm8226/libhwcomposer/hwc_utils.cpp
1b0c2f1b1c7201502f75c12131e3bc54f92d60ea 15-Mar-2014 Ramkumar Radhakrishnan <ramkumar@codeaurora.org> hwc: Set GPU performance hint.

1. Set the GPU hint flag to high for MIXED/GPU composition only for
first frame after MDP to GPU/MIXED mode transition.
2. Set the GPU hint to default if the current composition type is GPU
due to idle fallback or MDP composition.

Change-Id: I208a778017435a5a4620142da9d9fb3c50e09155
/hardware/qcom/display/msm8226/libhwcomposer/hwc_utils.cpp
201e4c9a80c1adb32ac8271a95721aa838c4d9fe 05-Mar-2014 Naseer Ahmed <naseer@codeaurora.org> display: Remove VPU related code

Targets in which VPU interacts with display through HWC are no
longer supported.

Change-Id: I65a5348a375ad0c193a8659d0cdfb37c2db6f38e

Conflicts:
msm8226/libhwcomposer/hwc_utils.cpp
/hardware/qcom/display/msm8226/libhwcomposer/hwc_utils.cpp
6a9d12360acf2c27c5ca4b4b58ae45c56284b29f 06-Mar-2014 Dileep Kumar Reddi <dkumarre@codeaurora.org> HWC: Use proper typecast to avoid scaling issues

Multiplying double with integer may scale up/down original value.

Change-Id: I2aa002a434d287df69d34de7e4fea3d56bcfbfaa
/hardware/qcom/display/msm8226/libhwcomposer/hwc_utils.cpp
1b9f24cfc5be6361faeb28976d720cf65a7f8285 05-Mar-2014 Tatenda Chipeperekwa <tatendac@codeaurora.org> hwc: Move aspect ratio helper function to qdutils

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
/hardware/qcom/display/msm8226/libhwcomposer/hwc_utils.cpp
09b70dd517a147dfb0e7829a08f2a288682a78fb 03-Mar-2014 Ramkumar Radhakrishnan <ramkumar@codeaurora.org> hwc: Disable Actionsafe for 8974 target and non-HDMI display.

1. Disable Action safe for 8974 due to HW limitation while downscaling
layers with overlapped region
2. Disable Actionsafe for non HDMI displays.

Change-Id: If974cf2bb2259ee6051645698ba641791b1425ce
/hardware/qcom/display/msm8226/libhwcomposer/hwc_utils.cpp
57ca59ccafa0efa6fb8f5684e90777bbeb6f92c7 21-Feb-2014 Tatenda Chipeperekwa <tatendac@codeaurora.org> hwc: Enable downscale feature through system property

Add support to turn the MDP downscale feature ON through the
use of a system property. 'sys.hwc.mdp_downscale_enabled' shall be
set to 'true' in build.prop file to enable this functionality.

This is required for OEMs that might have privacy concerns over panel
size information being exposed.

Change-Id: I354b25b1fdabe5786aed7552f2afccda35412467
/hardware/qcom/display/msm8226/libhwcomposer/hwc_utils.cpp
897c435dd90f4d2513d2b230caf4a18cc970263f 09-Apr-2014 Simon Wilson <simonwilson@google.com> Revert "Revert "display: msm8226: remove support for HWC_BLIT""

This reverts commit 9ed3d94390e8cc1cef1ef548f3ac335abc203333.
/hardware/qcom/display/msm8226/libhwcomposer/hwc_utils.cpp
a653efede03423aa840da24634f1ec6f20796f1e 09-Apr-2014 Simon Wilson <simonwilson@google.com> Revert "Revert "msm8226: update to AU_LINUX_ANDROID_KK.04.04.02.010.224""

This reverts commit 90268aeae4a80fdce99db4a4e45d696afd4fff36.
/hardware/qcom/display/msm8226/libhwcomposer/hwc_utils.cpp
ef53c1c84ec55ed50f607d52b7abfbb86239408e 09-Apr-2014 Simon Wilson <simonwilson@google.com> Revert "Revert "split msm8x26 and msm8x74 display HALs apart""

This reverts commit 13236c4d3582dd6f7185a303c4795ea611edbfe3.
/hardware/qcom/display/msm8226/libhwcomposer/hwc_utils.cpp
13236c4d3582dd6f7185a303c4795ea611edbfe3 07-Apr-2014 Benoit Goby <benoit@android.com> Revert "split msm8x26 and msm8x74 display HALs apart"

This reverts commit 32d546383b4424a954987570731f7fa216bce206.
/hardware/qcom/display/msm8226/libhwcomposer/hwc_utils.cpp
90268aeae4a80fdce99db4a4e45d696afd4fff36 07-Apr-2014 Benoit Goby <benoit@android.com> Revert "msm8226: update to AU_LINUX_ANDROID_KK.04.04.02.010.224"

This reverts commit f96e0b957a215582702db2a5ec6c744afd94eae3.
/hardware/qcom/display/msm8226/libhwcomposer/hwc_utils.cpp
9ed3d94390e8cc1cef1ef548f3ac335abc203333 07-Apr-2014 Benoit Goby <benoit@android.com> Revert "display: msm8226: remove support for HWC_BLIT"

This reverts commit 3aaeaafa802d65ff1da24906d518185ebad8c1d1.
/hardware/qcom/display/msm8226/libhwcomposer/hwc_utils.cpp
3aaeaafa802d65ff1da24906d518185ebad8c1d1 01-Apr-2014 Iliyan Malchev <malchev@google.com> display: msm8226: remove support for HWC_BLIT

Change-Id: I0049b2c000f5f2f2bc9045c655262ad2f92e6a7f
Signed-off-by: Iliyan Malchev <malchev@google.com>
/hardware/qcom/display/msm8226/libhwcomposer/hwc_utils.cpp
f96e0b957a215582702db2a5ec6c744afd94eae3 28-Mar-2014 Iliyan Malchev <malchev@google.com> msm8226: update to AU_LINUX_ANDROID_KK.04.04.02.010.224

Change-Id: Ia9af631171fb9ec64de1d1cb0ddf5be3e0fe9132
Signed-off-by: Iliyan Malchev <malchev@google.com>
/hardware/qcom/display/msm8226/libhwcomposer/hwc_utils.cpp
32d546383b4424a954987570731f7fa216bce206 18-Mar-2014 Iliyan Malchev <malchev@google.com> split msm8x26 and msm8x74 display HALs apart

Change-Id: I58a7dc129faa6eef4f7cdc8ee09fd42cd86c189b
Signed-off-by: Iliyan Malchev <malchev@google.com>
/hardware/qcom/display/msm8226/libhwcomposer/hwc_utils.cpp