History log of /hardware/qcom/display/msm8084/liboverlay/overlayUtils.cpp
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
77c1e87bc317f052f46dac466a0efd91e5bf7b21 12-Apr-2014 Naseer Ahmed <naseer@codeaurora.org> overlay: Remove defines of log2f

Was a relic from earlier builds

Change-Id: Icf640a48f35c4caf6e7cbafa527260b040900096
/hardware/qcom/display/msm8084/liboverlay/overlayUtils.cpp
6a8289a1767dad8ba243735041ae28adf7311042 25-Feb-2014 Manoj Kumar AVM <manojavm@codeaurora.org> hqd: Add support for 565 macro tile format

Extend macro tile feature support to rgb565 format.

Change-Id: I3d696d1ec66bfd95fcf3d243a1d669cb074da77f
/hardware/qcom/display/msm8084/liboverlay/overlayUtils.cpp
c9cbe63708025b7aed15e251b2fb3a914fd842a0 01-Feb-2014 Ramkumar Radhakrishnan <ramkumar@codeaurora.org> display: Remove klockwork warnings and errors.

Remove all klockwork warnings and errors for libgralloc,
libhwcomposer, liboverlay, libqdutils, libqservice, libvirtual,
libexternal libraries to avoid buffer overflow and memory leaks.

Change-Id: I078143bcbcf5e4b342156bd8305a644566f7cc4b
/hardware/qcom/display/msm8084/liboverlay/overlayUtils.cpp
fbda988d2909e2b8527098b5ffc93fa38fb0219e 22-Jan-2014 Arun Kumar K.R <akumarkr@codeaurora.org> liboverlay: remove warnings during compilation

- Remove unused variables
- Use proper typecast

Change-Id: Ia60fc4c3c7ec39a1df4a780de7f5d75d723f7960
/hardware/qcom/display/msm8084/liboverlay/overlayUtils.cpp
c38cdae859e0ee12ad3284a308eaeef9d2708c74 10-Oct-2013 Manoj Kumar AVM <manojavm@codeaurora.org> hwc: Add support for Macro Tile feature

Macro tile is enabled only if all the conditions are met:
1. GPU hardware should support Macro Tiling.
2. MDSS hardware should support Macro Tiling.
3. USAGE flags shouldnt contain GRALLOC_USAGE_SW_READ_OFTEN and
GRALLOC_USAGE_SW_WRITE_OFTEN.
4. RGB 16bit and 32bit formats.
5. persist.hwc.macro_tile_enable flag should be enabled.

PRIV_FLAGS_TILE_RENDERED flag is added to indicate whether the layer
is rendered/composited in Macro Tiling or Linear format.

Change-Id: Ie3139839c84d76c5d1a2300f33910a09eb7336f4
/hardware/qcom/display/msm8084/liboverlay/overlayUtils.cpp
d292850924144d1e3ff1a1ba0ff0c31a54857c9a 29-Oct-2013 Saurabh Shah <saurshah@codeaurora.org> overlay: writeback: Add dumpsys info

Add dumpsys information from writeback data structure.
Remove some unused fields, formatting to save space.

Change-Id: I808ce67aae16e27c3aa6d6db45983929b1386b69
/hardware/qcom/display/msm8084/liboverlay/overlayUtils.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/liboverlay/overlayUtils.cpp
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/liboverlay/overlayUtils.cpp
9108b6c5439aac790fe9a3c0c4b812beb0a80e94 22-Aug-2013 Naseer Ahmed <naseer@codeaurora.org> overlay: Map NV12 encodeable to venus format

The NV12 encodeable format is set for wifi displays but isn't
mapped to any MDP format. On B-Family targets the format is
equivalent to the venus yuv format.

Change-Id: I75e20c079e4b2e21decc39c29d9ed25953276df9
/hardware/qcom/display/msm8084/liboverlay/overlayUtils.cpp
43addde8368fa726b6be3ff2194eca4fc0741994 21-Mar-2013 Saurabh Shah <saurshah@codeaurora.org> hwc: Sync for rotator

Implement sync for rotator.
If a buffer is rotated, it can be used by producer soon after
rotation (and it wont have to wait until vsync).

Mdp waits for the rotator buffer's release fence to signal
to start display.

Hwc waits for previous access to rotator buffer by MDP to finish
before using it

Change-Id: I5664806a17c44d58af62a2825ce454089fcd31cf
/hardware/qcom/display/msm8084/liboverlay/overlayUtils.cpp
f0a7a20029deae76ea13d90099a09cc5e540f6ba 29-May-2013 Saurabh Shah <saurshah@codeaurora.org> hwc: Add BWC policy manager

Add a BWC policy manager that decides if BWC needs to be disabled on
certain conditions.
These conditions are statically determined. BWC might get used and
still fail (or cause failure of subsequent pipe requests) if SMP
blocks are not sufficient.

Change-Id: I805738911a8da7dfc6232c133c74ef844c3af5b1
/hardware/qcom/display/msm8084/liboverlay/overlayUtils.cpp
e2f07405d2d04aaf5577080761cd2b11a9e3c736 09-May-2013 Sushil Chauhan <sushilchauhan@codeaurora.org> hwc/overlay: Crop x, y, w and h should be even for MDSS Rotator.

MDSS driver requires Rotator crop x, y, w and h to be even for YUV
formats.

CRs-Fixed: 485216
Change-Id: I9a066970f8cedaed7ba18534bb99edd1bcf421dd
/hardware/qcom/display/msm8084/liboverlay/overlayUtils.cpp
4762db4eb027284225be9d10f08d87252612064c 11-Apr-2013 Saurabh Shah <saurshah@codeaurora.org> hwc: Fix dumpsys crash

In extreme cases, when all pipes are used, the buffer is insufficient.
Reduce logging by striping off unnecessary bytes.

Change-Id: I5a6ffb9ff288e389eea4e9ca4ac850ed59d539ff
/hardware/qcom/display/msm8084/liboverlay/overlayUtils.cpp
8fe8c938d27e528fcf7fb4a408711b4b6e405f13 04-Apr-2013 Saurabh Shah <saurshah@codeaurora.org> overlay: Add support for decimation.

Add support for decimation on top of what MDP can downscale,
because decimation can have quality issues.
B-family MDP downscale of 1/4, plus decimation of 1/16 can let
us have a total downscale of 1/64.

Also decimate by 2 (min) if width is greater than what layer mixer
supports and is not handled by the client.

Change-Id: I3b7c4bf321c7561bd98206ad118f4ac1ee2879ae
/hardware/qcom/display/msm8084/liboverlay/overlayUtils.cpp
027d88d922505ca1e8d90e231e69b40e7948ea9e 10-Apr-2013 Saurabh Shah <saurshah@codeaurora.org> overlay: Swap flips on 90 only for older mdp version.

Older mdp rotator does 90 first and flip next,
forcing HAL to swap flips, in presence of 90.

Newer mdp does flip first and 90 next, owing to DMA pipe.
(Also similar to GPU flip handling). So we can pass flips as-is.

Change-Id: I379509a07e45966262005666e7727e7923079d3a
/hardware/qcom/display/msm8084/liboverlay/overlayUtils.cpp
a726da3b25827f61d013a82540a6fffdd53a980f 19-Mar-2013 Saurabh Shah <saurshah@codeaurora.org> overlay: Use correct downscale for rotator.

Downscale is calculated based on area of dst and src.
Apply sqrt of downscale to each dimension.

Change-Id: I9def4ea5073e0e49a05103505a6b6f5013f0d579
/hardware/qcom/display/msm8084/liboverlay/overlayUtils.cpp
89ce3b8b4cbfe7dfdd5addbd33aa61861c72aac4 19-Mar-2013 Linux Build Service Account <lnxbuild@localhost> Merge "display: Remove framebuffer HAL usage"
c567a93cd9ff7079ac03024d4fdb1ddc5683e748 21-Feb-2013 Jeykumar Sankaran <jsanka@codeaurora.org> display: Remove framebuffer HAL usage

This patch removes the usage of the framebuffer HAL which is
deprecated in JB MR1 onwards. The code is left for compatibility
such as conformance tests but it is unused for normal display
usage.

Change-Id: If98133bdaa759cdc41d4503ff695b225ee43cb6f

Conflicts:

libhwcomposer/hwc_utils.cpp
/hardware/qcom/display/msm8084/liboverlay/overlayUtils.cpp
88dd176177d0830ad88a7cb975a77c8ce442410c 14-Mar-2013 Saurabh Shah <saurshah@codeaurora.org> hwc/ov: Fix MDP orientation flags and values.

--Fix MDP_SOURCE_ROTATED_90 removal.
Since mdp flags are updated fresh each round,
this flag should not be removed if there is no 90.
If pre-rotation is used, this flag is set by hwc and removed here.
(Affects anything having a 90 component in transform)

--Provide MDP adjusted transform to prerotation calcs.
Clients on Android don't switch flips if 90 component is present,
but expect the output to be that way. (camera)
We do it in HAL and then calculate final crop for MDP.
(Affects anything using 90 + Just 1 flip i.e camera)

--Pass 0 transform to MDP even for flips, since we
prerotate if there is 90 with flips or use MDP to flip via flags,
so no need to flip transform calcs.
(Affects anything using just flips).

Change-Id: I115a82ee4558794db0b6b641710494b9007d6f54
/hardware/qcom/display/msm8084/liboverlay/overlayUtils.cpp
6e146950e61327d425750c1de36bfd70d526acad 07-Mar-2013 Sushil Chauhan <sushilchauhan@codeaurora.org> qdutils: Retrieve MDP revision and pipes information from driver.

Userspace can retrieve MDP revision number and number of different
types of MDP pipes (RGB,VG,DMA) information from driver. Add target
specific flag as previous MDP versions do not provide this support.

- Make use of this information while maintaining PipeBook.
- Move PipeBook related functions from overlay utils to PipeBook.

Change-Id: I46578bb27e515c4b9525d90b6619c11d7749914f
/hardware/qcom/display/msm8084/liboverlay/overlayUtils.cpp
327b2ba85538669304a50d0fb6cc2f6aab7aaf3b 26-Feb-2013 Saurabh Shah <saurshah@codeaurora.org> hwc/overlay: Video on 4k2k external, 4k2k rotation.

-Add support for Video via overlay on 4k2k external panel.
-Add support for rotating videos on 4k2k panels. We use
pre-rotation in hwc to rotate a video into a single buffer,
irrespective of panel size. Then this buffer is fed to MDP.
Rotator objects are managed by the new RotMgr.
-Cleaup mdpcomp and overlay.

Change-Id: Ifb08534747e8e18b6c58dd8a3e1a9947409100f1
/hardware/qcom/display/msm8084/liboverlay/overlayUtils.cpp
dbdcee7b408fa6cbf37169d9601aa3598c91ce40 22-Feb-2013 Linux Build Service Account <lnxbuild@localhost> Merge "overlay: Fix rotator output buffer size."
a22f5873a9974b00f352370e077db9788ad67699 13-Feb-2013 Saurabh Shah <saurshah@codeaurora.org> overlay: Add support for pipe dumps.

Add support for pipe state dump useful in dumpsys.
Reduce debug log spam when mdp state changes.

Change-Id: Ie27ad00698085e2ffd6166ad2f7503fe16a571f8
/hardware/qcom/display/msm8084/liboverlay/overlayUtils.cpp
e4dbe91c2c45ef7ad1f5106b75bd49062cf80c48 15-Feb-2013 Saurabh Shah <saurshah@codeaurora.org> overlay: Fix rotator output buffer size.

Fix rotator output buffer size for mdp and mdss rotators.
Output size is based on rotated width & height.
Output format can be different than source format.
It could be same if using mdss rot or using fastyuv mode in mdp rot.
Deprecate the static mapping of rotator input and output formats.
Driver will be responsible for correctly populating the dest format that its
wishes to use.

Change-Id: I17352d6d460cac24eb97083aed38668929c66807
/hardware/qcom/display/msm8084/liboverlay/overlayUtils.cpp
6be1d0f8c034cbb734a770fc04f00615cea943aa 12-Feb-2013 Sushil Chauhan <sushilchauhan@codeaurora.org> liboverlay: Fix stride alignment issue for s/w decoded video.

1. Due to alignment requirements on HAL_PIXEL_FORMAT_YV12 format,
rotator buffer size calculation needs to be performed based on
rotated width and height because buffer size can be different when
width & height are swapped due to 90 degree rotation.

2. Input and output color formats are same for MDSS Rotator.

Change-Id: I0a06ef9bb7bdceb951e7ab5160dac3e92a28bcda
CRs-Fixed: 451871
/hardware/qcom/display/msm8084/liboverlay/overlayUtils.cpp
2d9ebfd924dfc0e86b7b6fda9ec7a538a1e91955 23-Aug-2012 Sushil Chauhan <sushilchauhan@codeaurora.org> display: Add support for Venus color format for newer platforms

Change-Id: I4c9a327bd30d1321e1f8383ffc1ca978efc8e9b9

Conflicts:

liboverlay/overlayUtils.h
libqdutils/gpuformats.h
libqdutils/qcom_ui.cpp
/hardware/qcom/display/msm8084/liboverlay/overlayUtils.cpp
0947a067d5a82c3cf2ca4dd0cf5b0694f0b85a40 03-Dec-2012 Naseer Ahmed <naseer@codeaurora.org> overlay: Do not clean up pipes at bootup for MDSS

The MDSS driver takes care of this cleanup itself.
Also - MDSS driver does not export the mixer info ioctl

Change-Id: I3b736dfaaf355d71fe999b89027aced75ca1e248
/hardware/qcom/display/msm8084/liboverlay/overlayUtils.cpp
47377987cc4eef72ee3b0cdced8c3a15038b39eb 28-Nov-2012 Naseer Ahmed <naseer@codeaurora.org> hwc/overlay: Dynamic pipe tracking.

Remove state based pipe handling and make pipes tracked dynamically.
Add the configStart, configDone, nextPipe availablePipes APIs.
Remove setState API.

-configStart marks all pipes available.
-configDone garbage-collects unused pipe objects.
-nextPipe returns the index of next available pipe and create a corresponding
pipe object if not present
-availablePipes returns total of "unallocated" pipes. (Pipes could be allocated
but unused)

Changes in hwc adapt to the new overlay APIs.
Compile out MDP comp.
Remove unused files in overlay and hwc.
Update licenses.

Conflicts:

libhwcomposer/hwc.cpp
libhwcomposer/hwc_utils.cpp

Bug: 7626586
Change-Id: Id8e56901d34e5dc0fd088260d05e3e46f68ff090
Signed-off-by: Saurabh Shah <saurshah@codeaurora.org>
Signed-off-by: Iliyan Malchev <malchev@google.com>
/hardware/qcom/display/msm8084/liboverlay/overlayUtils.cpp
99052c13b84efd00bfc1083e454d660a31cbf38a 07-Sep-2012 Ajay Dudani <adudani@codeaurora.org> liboverlay: close all the opened pipes after framework reboot.

b/7147557

Add initOverlay() function to close all the opened pipes when
Surfaceflinger process gets killed.

Change-Id: I9c65a61c81f9c81198f1076d6cbd27933b164c05
Signed-off-by: Iliyan Malchev <malchev@google.com>
/hardware/qcom/display/msm8084/liboverlay/overlayUtils.cpp
b27c26b9c995b583cb91320bc1daf84bad7f34bd 22-Aug-2012 Saurabh Shah <saurshah@codeaurora.org> Overlay: Change MDP format for YV12 buffers

Android uses different alignments for YV12 buffers.
Hence, introduce a new format (MDP_Y_CR_CB_GH2V2) for
such buffers.

Acked-by: Amara Venkata Mastan Manoj Kumar <manojavm@codeaurora.org>
Change-Id: Id4d58dd77f22c9efb8ece9caa34a8717964bf58d
/hardware/qcom/display/msm8084/liboverlay/overlayUtils.cpp
a94e272cd72c60199a65e8a76e3b53b6fb0d4021 18-Aug-2012 Saurabh Shah <saurshah@codeaurora.org> liboverlay: Changes in getting FrameBufferInfo on MDSS.

- MSMFB_OVERLAY_GET does not need to be called.
- MDSS always supports border fill.

Acked-by: Sushil Chauhan <sushilchauhan@codeaurora.org>

Change-Id: I04afc5119b2467eb026b11b6f558cca21b5454c7
/hardware/qcom/display/msm8084/liboverlay/overlayUtils.cpp
64f17fd69fe7c8e79acefc031df6e183267a1ca6 01-Aug-2012 Naseer Ahmed <naseer@codeaurora.org> liboverlay: Update format translation.

Update format translation from HAL to MDP.
Add support for RGB_888, YCbCr_444_SP, YCrCb_444_SP formats.

Change-Id: Ic3f0ff96a8f587feaa82b5dd80fb52aa53199495
Acked-by: Saurabh Shah <saurshah@codeaurora.org>
/hardware/qcom/display/msm8084/liboverlay/overlayUtils.cpp
ccf943e44f9e9d615a6019459625148830039f8d 20-Jul-2012 Naseer Ahmed <naseer@codeaurora.org> hwcomposer: Add support for UI mirroring

- Uevent observer as part of Hwcomposer
- HPD, enabling/disabling external display from HWC

Change-Id: I52b4f30c78e98c5b52c86722046389f458c2dbee
/hardware/qcom/display/msm8084/liboverlay/overlayUtils.cpp
ee7fc0347e52276d43413e91f31d72d6db99dcfb 20-Jul-2012 Naseer Ahmed <naseer@codeaurora.org> liboverlay: Refactor, bug-fixes, upgrade.

* Fix memory leak during copying pipe objects.
* Remove unused / unnecessary code.
* setMemoryId API is merged with queueBuffer.
* setParameter API is setTransform now.
* Rotator upgraded to:
--Allow different rotator hardware types.
--Remove dependency on MDP code.
--Allocate memory only during first playback,
close when the associated pipe is closed.
* Have single commit implementation.
* Include new format types.
* Remove WAIT and CHANNEL enums and usage. Replace BypassPipe with
GenericPipe. Client expected to set alignments and parameters.
Add transform combination enums.
* Allow APIs to be called in any order. Do transform calcs in commit.
Move ext type setter and getter functions.
* Add calculations for 180 transform.
* Add secure session support in rotator
* Implement all rotations in terms of H flip, V flip and 90 rotation.

Change-Id: I34a9a2a0f1255b3467a0abbaa254d0b584e901ce
/hardware/qcom/display/msm8084/liboverlay/overlayUtils.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/liboverlay/overlayUtils.cpp