History log of /hardware/qcom/display/msm8084/libcopybit/copybit.cpp
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
46f5ca8de60939f8ee16f63ba244b46e1353bab8 12-Feb-2014 Praveena Pachipulusu <pveena@codeaurora.org> copybit: Use proper type casts and pointers

- Remove unused variables
- Use proper type casts for pointers.

Change-Id: Ie07c67d759d76f418fae08accdcfb1855511dedf
/hardware/qcom/display/msm8084/libcopybit/copybit.cpp
ba330195100e98e6ff7ac6ce540ba20d6b6e699a 30-Dec-2013 Terence Hampson <thampson@codeaurora.org> copybit: pass acquire fd when calling clear

Tearing was seen when mdp was performing clear on fb because
acquire fence was not being passed in.

Change-Id: Iea5bcc50efc783497c770779faae59f933252551
/hardware/qcom/display/msm8084/libcopybit/copybit.cpp
db6ac5126b3c012adbaeda7c51acc741844d7213 08-Dec-2013 Linux Build Service Account <lnxbuild@localhost> Merge "copybit: Set default value on COPYBIT_TRANSFORM for Color layer."
4dbb002937f5fe623f2bea7916d05e226697063a 05-Dec-2013 Sushil Chauhan <sushilchauhan@codeaurora.org> copybit: Set default value on COPYBIT_TRANSFORM for Color layer.

1. For Color layer, set zero transform value on COPYBIT_TRANSFORM
otherwise it causes MDP IOMMU page fault at 90/270 degree rotation.
2. Color layer is part of Copybit context list, so no need to call
msm_copybit() explicitly for it, that will be called during flush.

Change-Id: I4421b4bddfeca56b0ad8534d921c3d743a7d92bb
/hardware/qcom/display/msm8084/libcopybit/copybit.cpp
b9e9356a3b0449dc638b555c82a98e6609385016 02-Dec-2013 Sushil Chauhan <sushilchauhan@codeaurora.org> copybit: Initialize release & acquire fence fds of Copybit context.

Initialize release and acquire fence fds of Copybit context to -1.
Otherwise fd 0 gets closed in first call to msm_copybit, which is
valid fd and it leads to bad state if fd 0 is being used as stdin.

Change-Id: I01278bbb580d61e2d4b4c7b3f7b346274af6d914
/hardware/qcom/display/msm8084/libcopybit/copybit.cpp
4c149fa8c0d3d9a5b5dee191afc421750d97cd3d 17-Oct-2013 Ramakant Singh <ramaka@codeaurora.org> HWC : Add support for solid fill color

We are using the solid fill feature for
clearing the wormhole region using black
color.
Using the src buffer same as dst buffer to
avoid kernel checks for this use case.

Change-Id: Ia46aded9b067ece83c9df1f2c2cdd6b017fa64ea
/hardware/qcom/display/msm8084/libcopybit/copybit.cpp
905042d4ea8c4c736ea248b694d93ef2f59866d5 22-Oct-2013 Sushil Chauhan <sushilchauhan@codeaurora.org> hwc/copybit: Add Color layer support in MDP Copybit composition.

1. Color layer has a destination rectangle, RGBA color and plane
alpha. There is no gralloc buffer. Layer flag HWC_COLOR_FILL
denotes color layer. MDP BLIT happens via MDP_SOLID_FILL mode.
2. There is no color member in HWC layer, so RGBA color value is
passed via "tranform" member from framework to HAL.
3. Update HWC query to enable framework to query for Color layer
support in HAL, at run-time.

Change-Id: I2c698007c1689779fe86d549093bb5285432dc5f
/hardware/qcom/display/msm8084/libcopybit/copybit.cpp
7ec65cb986e25337bf4066437300f6adbfe1e350 17-Sep-2013 Mathias Agopian <mathias@google.com> get rid of HAL pixelformats 5551 and 4444

This changes removes the use of 5551 and 4444 pixel formats
as its not supported anymore

Change-Id: I817510c3c7c0c3d95924c2ffc79e5727a6d6c48f
(cherry picked from commit 1fbd4a9662b07d53a3f220c91b3e85ca571a4938)
/hardware/qcom/display/msm8084/libcopybit/copybit.cpp
f01e10a58786e9cb3200a757f65547868a29773d 11-Oct-2013 Sushil Chauhan <sushilchauhan@codeaurora.org> hwc/copybit: Handle "R/B swap" for RGBA and RGBX color formats.

1.Framework notifies HAL with "HWC_FORMAT_RB_SWAP" layer flag to handle
a limitation where R and B components were swapped in Rendering phase.
2.Add "R/B swap" in hwc query to enable framework to query for support
in display HAL, at run-time.

Change-Id: I3b44d15b51b4f24939048fee9d1bac2b9009c97c
/hardware/qcom/display/msm8084/libcopybit/copybit.cpp
f74ebf4ecabfb480dde4fe1605b593f412a21eb3 28-Sep-2013 Linux Build Service Account <lnxbuild@localhost> Merge "display: Add support for interleaved YUY2 and YUYV format."
22977805cde2da4defc7ee3f49577a388b01c3db 07-Aug-2013 Ramkumar Radhakrishnan <ramkumar@codeaurora.org> display: Add support for interleaved YUY2 and YUYV format.

Adding support for interleaved HAL_PIXEL_FORMAT_YCbCr_422_I and
HAL_PIXEL_FORMAT_YCrCb_422_I format in display HAL.

Change-Id: Ib87d9bf481c20bf6a92293dd04746719b1d928c1
/hardware/qcom/display/msm8084/libcopybit/copybit.cpp
dc9763fba400c4487c307cf3b72f04f01afad765 13-Sep-2013 Terence Hampson <thampson@codeaurora.org> copybit: Release fd from intermediate BLIT calls

In certain corner cases copybit would make an intermediate BLIT
call. In these cases the intermediate release fd would be not
be closed.

Change-Id: I031fd5b375a5e9dd8bdcc46c67fc5ccbdfa4dfb7
/hardware/qcom/display/msm8084/libcopybit/copybit.cpp
06e7446984f4e8c752a918f60331b99c1ff55b2b 05-Aug-2013 Shivaraj Shetty <shivaraj@codeaurora.org> HWC/copybit : Add support to indicate driver on layer with Zorder 0

Some applications send RGBA layer with constant alpha 0xFF and
isOpaque=1. For these types of layer we don't get any wormHole
regions. Hence we see the previous content (framebuffer) due to
wrong selection of blending logic at kernel side.

To fix these kind of issues on MDP3 we make layer with Z order
zero as FG layer. This makes sure that proper blending logic
is chosen in kernel.

CRs-fixed: 521638
CRs-fixed: 517944
Change-Id: I172a46c3284916264a1413a6a16875afea2b1aad
/hardware/qcom/display/msm8084/libcopybit/copybit.cpp
8f66d03c96ba37719ee52672fd24c351cb2e58e0 23-Jul-2013 Linux Build Service Account <lnxbuild@localhost> Merge "copybit: Pass in proper acquire fence count to blit call"
0fb1eeb979174d1a8e18a0f1557f2246dc55f4e5 17-Jul-2013 Terence Hampson <thampson@codeaurora.org> copybit: Pass in proper acquire fence count to blit call

The counter that was incremented when an acquire fence was provided
was not the counter that was passed into the blit call. Due to
blit requests being processed in order that it is submitted, it is
not need to pass in previous release fence as acquire fence for
next blit request.

Change-Id: Ic259af24b33e5e69440d481c92788107ff639bed
/hardware/qcom/display/msm8084/libcopybit/copybit.cpp
fe48baec7f4379aac0cf5d06ef121cd71f8844de 12-Jul-2013 Radhika Ranjan Soni <rrsoni@codeaurora.org> copybit: Add support for HAL_PIXEL_FORMAT_YCbCr_420_SP_VENUS format.

Currently framework is not returning the correct MDP format
corresponding to HAL_PIXEL_FORMAT_YCbCr_420_SP_VENUS format.
Modifying the right format to be returned.

Change-Id: I1862dea6daf6cc90e25492af7bf2e7f3bf6328ec
/hardware/qcom/display/msm8084/libcopybit/copybit.cpp
0144cfd8201d3b11fd2c9e52f1e8206b04eeaa76 09-Jul-2013 Linux Build Service Account <lnxbuild@localhost> Merge "copybit: call blit ioctl before freeing intermediate buffer"
730f0db5a7ec5a2bd8bcba7d55ab3484aba52a51 04-Jul-2013 Terence Hampson <thampson@codeaurora.org> copybit: call blit ioctl before freeing intermediate buffer

Pass in buffer handle before it is freed to prevent blit operation
from failing while importing buffer.

Change-Id: I4a944e7b2c0f6e19b55ed5602eda49d14d5e78f0
/hardware/qcom/display/msm8084/libcopybit/copybit.cpp
91406473de6b246b1b16f28f599d5d746f2c0133 03-Jul-2013 Raj kamal <rkamal@codeaurora.org> copybit: Fix mismatch between HAL and MDP formats.

Fix the format mismatch between HAL and MDP formats
in copybit. This is to handle chroma issues on 8x10
for SW decoded videos.

Change-Id: I0b1ddc10cfca0c8b219838b33253a0c87b7c8f97
/hardware/qcom/display/msm8084/libcopybit/copybit.cpp
ed9ee53fcb2bff3583e9c94319bfae2784ae43c0 21-Jun-2013 Dhivya Subramanian <dthiru@codeaurora.org> copybit: Fix type conversion error for GCC 4.7

GCC 4.7 has stricter type conversion rules in copybit.cpp

Change-Id: I7f8572e2d9416ccb2ba17e707c7f75a2e69d69cf
/hardware/qcom/display/msm8084/libcopybit/copybit.cpp
152b2da5552fffb5aa2306af027c361c110528a8 07-Jun-2013 Linux Build Service Account <lnxbuild@localhost> Merge "copybit: Enable copy bit to use sync pt"
eeeb8882b7cbc673c225bf21accad7b58688b2e2 29-May-2013 Terence Hampson <thampson@codeaurora.org> hwc: Allow for yuv content to go through ppp on 8x10

8x10 has overlay but it also allows for composition to go through
copybit.

Change-Id: I086aab118b03c1cbc7fa0dbc080ceb906310deab
/hardware/qcom/display/msm8084/libcopybit/copybit.cpp
ac791ef899d93baf8bc2545b2e81f6a71d9bfbc1 23-May-2013 Terence Hampson <thampson@codeaurora.org> copybit: Enable copy bit to use sync pt

Since mdp composition is now an async call, the waiting for fences
is now no longer needed inside copybit. In addition, how
composition ioctl is called is slightly different as a result
needing to pass in aquire fences device performing compsition

Change-Id: Ia12dfb2960ba2fc78b14e776984ffe0c3fe45fdb
/hardware/qcom/display/msm8084/libcopybit/copybit.cpp
9ee1fcd75e50f365572a2b4e32eeef685845d323 19-Apr-2013 Terence Hampson <thampson@codeaurora.org> display: Enable copybit on msm8610

This change is the hwc and copybit changes need to enable
composition to go through mdp on msm8610.

Change-Id: If0df3a247c5f4f4310966d14fe8fd839bf84b9d5
/hardware/qcom/display/msm8084/libcopybit/copybit.cpp
728ab97888cb24692332a038dd12cc16b2b25014 28-Nov-2012 Arun Kumar K.R <akumarkr@codeaurora.org> libcopybit: Merge copybit HAL from jb

Single commit having all the following commits

commit f39e512ad6f51cf35ab00995e52a39f31e76e77f
Author: Naomi Luis <nluis@codeaurora.org>
Date: Fri Oct 19 14:41:32 2012 -0700

copybit_c2d: Use a single draw call for surfaces with different rotations

- When opening the copybit module, query the c2d driver capabilities.
- If supported, use a single draw call for blitting surfaces with different
orientations using the target target rotate override flag.
- If not supported, invoke finish_copybit to draw the layers with the
previous orientation before applying the current orientation.

Change-Id: I0446f2817786321c9caa2eabf7b6679e5ecbcabe

commit a4008ff75150c1591c0dca46354e6bb8b30a675b
Author: Naomi Luis <nluis@codeaurora.org>
Date: Thu Oct 18 15:26:15 2012 -0700

Display: Add copybit_c2d performance optimizations

Following performance optimizations have been made to copybit_c2d
- Club all the layers into a single draw call. When finish_copybit
is invoked, the draw and finish are executed.
- Send the layer blend mode to copybit.
- If the blend is set to none, set the pre-multiplied alpha flag.
SurfaceFlinger assumes all surfaces have pre-multiplied alpha unless
explicitly specified. Copybit_c2d does the same.

The following cases are currently exempt from this optimization:
- Change in C2D target
- The template surfaces limit has been reached
- Max. blit object limit has been reached.
- Change in target transform.
- Use of any temporary source/destination surfaces.

Change-Id: I5ad1dc48bbe6d38d319116ccaa800fefb4fbf9f6

commit b188d739f69272c4820e1a33c5e10aa2f2825a5f
Author: Naomi Luis <nluis@codeaurora.org>
Date: Mon Oct 15 11:17:11 2012 -0700

copybit: Add finish API

Add the finish API to copybit. This API is used to indicate the
end of the drawing required by the copybit client.

Change-Id: Ica4d13dbe6e7aeb7f88aabb734bf03e86c043acc

commit ecd56ace395fce78c14e2e753d3221218d062899
Author: Naomi Luis <nluis@codeaurora.org>
Date: Mon Oct 15 11:21:08 2012 -0700

copybit: Clean up copybit_c2d

- Remove unused functions
- Do nothing for the COPYBIT_BLIT_TO_FRAMEBUFFER case when using c2d
composition.

Change-Id: Idc416ce3742bb41f060e52ac70add44e584032b9

commit 35d45d0cff5f6fe866fcb5df71444824a45e046e
Author: Naomi Luis <nluis@codeaurora.org>
Date: Wed Oct 17 10:37:33 2012 -0700

copybit: Use correct alignment in get_size()

get_size() is used to get the size required by c2d. It's alignment
should be 32 and not 16.

Change-Id: I9fedca0186d0ea19883b967e127417b059621a99

commit 31311da328cbe2229fcf8d8d8e276ec64005bcb3
Author: Ramakant Singh <ramaka@codeaurora.org>
Date: Thu Sep 20 15:58:29 2012 +0530

HWC: use uncached buffer for tmp yv12 and tmp stretch buffer.

Change-Id: Iecc2a9c3c9a365d00d3491ce1007a36484209346
CRs-fixed: 396574

commit 5503c90b5001aa4d863139eebcd9c0c43f265702
Author: Pawan Kumar <pavaku@codeaurora.org>
Date: Mon Sep 3 09:14:13 2012 +0530

copybit: Fix crash when copy_image is called with Tile format

Add check for copy_image failure case.
CRs-Fixed: 393122

Change-Id: I5765120e87a135795d771c5d331275a66ade7e23

commit 48975bc53702ecba66ecaa5e5769036bb91f5cf2
Merge: feb1cd6 ab25cb4
Author: Linux Build Service Account <lnxbuild@localhost>
Date: Sat Sep 1 13:36:47 2012 -0700

Merge "Display ::Use proper ion heap id" into jb

commit ab25cb4818d9b87886678972f2861bacc93c580a
Author: Ramakant Singh <ramaka@codeaurora.org>
Date: Thu Aug 9 14:23:39 2012 +0530

Display ::Use proper ion heap id

Change the MM heap to CAMERA heap for 7627a in use case
1.Intermediate stretch of low resolution clips
2.Software conversion of Y12 format

Change-Id: Ib705d3245f601256179e2dedccbc707df85eb431
CRs-Fixed: 383115

commit 90bcaadf41451d89fe80f96961ffc0a07a333145
Author: Prabhanjan Kandula <pkandula@codeaurora.org>
Date: Mon Aug 6 12:50:12 2012 +0530

libcopybit: fix YUV buffer alignments as per gralloc

buffer alignment in copybit should be in sync with
gralloc allignments while allocating buffer.

CRs-fixed: 377051
Change-Id: Ib2ae64e368ea3c92d3494c71da605197ccb4a9a5

Conflicts:

libcopybit/copybit_c2d.cpp

commit 95cf0038ea6eb02314024d673418464f0739ddb4
Author: Sravan Kumar D.V.N <sravank1@codeaurora.org>
Date: Thu Aug 2 14:37:37 2012 +0530

copybit : Add support for NV12_ENCODABLE format

Change-Id: I7087dcad2238a3c35cc15c28d75b76a9e3ca6718

Change-Id: I748bffb4215d27f609beec209af0a5047858a314
/hardware/qcom/display/msm8084/libcopybit/copybit.cpp
2dc8fbef183721824969902cba9c9daeb5b3ea4a 13-Nov-2012 Mathew Karimpanal <kjmathew@codeaurora.org> display: Standardize log-tags for qcom display logs.

Change-Id: I75bc2d8db8d64994097d6b744f357c29c9a5717a
/hardware/qcom/display/msm8084/libcopybit/copybit.cpp
bd4704d4b447bd4aa59e4894d68a7162ce4f99fd 01-Aug-2012 Naseer Ahmed <naseer@codeaurora.org> display : Add support for copybit composition

This change add support for copybit composition in display HAL
for MDP3 targets.

Change-Id: I9bc8e40f624b0760f4faa223cb03a13695611bb3
Acked-by: Sravan Kumar D.V.N <sravank1@codeaurora.org>
/hardware/qcom/display/msm8084/libcopybit/copybit.cpp
5aa9f9bebbb02ccfe9b6a4e5a092c8bd324e0e88 16-Jul-2012 Naseer Ahmed <naseer@codeaurora.org> display: Fix warnings, make warnings as errors

Change-Id: I61f22765b04112be48e62135db930c415c9c7d37
/hardware/qcom/display/msm8084/libcopybit/copybit.cpp
be2e1bb9057c8d0666de057743eeb898c78f34b0 15-Jul-2012 Naseer Ahmed <naseer@codeaurora.org> display: Clean up gralloc

* Remove pmem and ashmem implementations
* Remove usage of RefBase
* Reduce log verbosity

Change-Id: If8ef543d236e5305bd5430f4f9c62c51b3a13787
/hardware/qcom/display/msm8084/libcopybit/copybit.cpp
befc466069680cb8a65b1f22ad44723d949128c8 14-Jun-2012 Naseer Ahmed <naseer@codeaurora.org> qcom/display: Update HALs

- Update the display HAL from Code Aurora Forum
- Add updated overlay library
- Enable HWC with basic video going through overlay
- Cleanup some files

Change-Id: I65c687c51be458cee71213c79e03eeda962d9086
/hardware/qcom/display/msm8084/libcopybit/copybit.cpp