History log of /hardware/qcom/display/msm8084/liboverlay/overlayRotator.h
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
d28bdc304736bee79cf2756e0504d5cb5310074a 31-May-2014 Saurabh Shah <saurshah@codeaurora.org> overlay: Change max rotator sessions to 4 and log level

Change max rotator sessions to 4, since we could support upto
those many.

Change error log to warning log on reaching beyond max rotator
sessions, since its not really an error, but flagging it as one
raises false positives in testing filters.

Change-Id: Ib06a00bce57dfa9dbda3f2e6874a31ce1a155463
/hardware/qcom/display/msm8084/liboverlay/overlayRotator.h
592d33199d009cd45899728ccae80e8f53c17c83 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
/hardware/qcom/display/msm8084/liboverlay/overlayRotator.h
8bc12cba5e3e8377cd5ea3410609af005c01335d 07-Feb-2014 Saurabh Shah <saurshah@codeaurora.org> overlay: rotator: Remove previous allocation for a session

When ION was not ref counted, we needed to maintain the previous
session memory until the new one was taken by MDP. ION being
ref counted now, it is not necessary to maintain previous memory
allocation.

Change-Id: I102df065bb288a661d509912f4c7b894505df393
/hardware/qcom/display/msm8084/liboverlay/overlayRotator.h
834852cce5c3e5ab2eabde1c6ca151228abbac6f 11-Dec-2013 Saurabh Shah <saurshah@codeaurora.org> hwc: Update rotator object handling in error cases

Earlier, on configuration errors, we simply drained the fences held
by current rotator objects and went to GPU comp. The rotator objects
were deleted in the subsequent rounds, if they remained unused.

If we don't use GPU comp on failure but use other strategies, then we
need to mark the rotator objects for a display for reuse, so that
other strategies can use them.

Also any failure resets on overlay or rotator need to happen from
functions that call configuration helpers rather than the helper
themselves. Leaving cleanup to black-box helpers is not desirable.

Change-Id: I59b5b1bb774b82ee85a037e934c9d2d023db30af
/hardware/qcom/display/msm8084/liboverlay/overlayRotator.h
b746f91fe3184bf7c3b6475d247d3cc16cc74646 26-Nov-2013 Saurabh Shah <saurshah@codeaurora.org> hwc: Reset layer-to-rotator map and fences on configuration failure

When a rotator or mdp configuration for a display fails, reset the
layer-to-rotator mappings for that display and reset the release
fences for the rotator objects used for that display.

Note: The rotator itself is offline and not tied to any mixer. It is
from the mappings that we deduce which rotator object was used for
layers of which display. Also we don't delete rotator objects held
for a specific display, since during stability runs, failures could
repeat each round and we end up allocating and deallocating memory
unnecessarily. The rotator objects will be deleted automatically
when not required anymore.

Change-Id: I9a67f02574be30be3b96b3575f60530cb1c89e10
/hardware/qcom/display/msm8084/liboverlay/overlayRotator.h
3aaa003801643146fe86e91364c5ad9493ad40d7 23-Oct-2013 Saurabh Shah <saurshah@codeaurora.org> hwc: Set DMA mode to LINE after UNSET, commit of BLOCK session

Set DMA mode to LINE only after we UNSET and commit the sessions
in BLOCK mode from previous rounds.
Currently, it is incorrectly set to LINE always at the beginning
of a draw cycle.
Now we set it to LINE only at the end of a draw cycle if no rotator
sessions are active.

Change-Id: I6e2351d214d01764eced0673b639f709fbd193c3
/hardware/qcom/display/msm8084/liboverlay/overlayRotator.h
050c8e4005bd400436a48e34289b8ce7defe614d 28-Jun-2013 Saurabh Shah <saurshah@codeaurora.org> hwc: Enable sync-pt for rotator on B-family

Enable sync-pt for rotator on B-family. The already existing
MSMFB_BUF_SYNC ioctl is used, with an extra member for session_id
from rotator.

Change-Id: Ib0ef6b1bc5cf1e6437090a217d7f731a3440f84b
/hardware/qcom/display/msm8084/liboverlay/overlayRotator.h
b79d3ca8afad0421450869bd3058d15b71201a30 31-Jul-2013 Sushil Chauhan <sushilchauhan@codeaurora.org> overlay: Fix compressed output buffer size for MDSS Rotator.

Compressed output buffer size calculation for MDSS Rotator needs to
be performed according to destination rectangle (rotated src rect)
due to alignment requirements (like non-BWC calculation).

Change-Id: I6a232d77ca5fce42a1cc3e7f406c9cc4d46553ed
/hardware/qcom/display/msm8084/liboverlay/overlayRotator.h
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/overlayRotator.h
30323b98c1abab90dce91c3d226d4e65a24076fc 31-Jan-2013 Sushil Chauhan <sushilchauhan@codeaurora.org> liboverlay: Add support for MDSS Bandwidth Compression

- This adds support for Bandwidth Compression.
- If MDSS supports BWC, then we set BWC flags
to both Rotator(encode) and overlay(decode)

Change-Id: I6f7800716a2ce2ab855f4c0b1a53cd96f7d06d74
/hardware/qcom/display/msm8084/liboverlay/overlayRotator.h
e7fd567eb00aea104a726a88540dba639e17bf29 24-Apr-2013 Sushil Chauhan <sushilchauhan@codeaurora.org> hwc/overlay: Set crop rectangle for MDSS Rotator.

Since MDSS rotator will crop, the crop rectangle for overlay
will always start from (0,0).

CRs-Fixed: 476494
Change-Id: I1ccece8eab7d1a97ccec561a4d0df4558b5e33c4
/hardware/qcom/display/msm8084/liboverlay/overlayRotator.h
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/overlayRotator.h
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/overlayRotator.h
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/overlayRotator.h
47c130ffbafe12d6ddf6e8df4ffdd9916318c379 16-Nov-2012 Raj kamal <rkamal@codeaurora.org> liboverlay: Set mdp src format as rotator output format.

* Set mdp source format as rotator output format
rather than determine it from a fixed mapping of
input/output formats.

* This is needed since for the same input format
to rotator, fastyuv mode if enabled may result in
a different output format than the one if the mode
is not enabled.

* Do the inline optimization for rotator where possible

CRs-fixed: 451064
Change-Id: If0bb2f3a44df10968383ab3f5c3625257518934d
/hardware/qcom/display/msm8084/liboverlay/overlayRotator.h
8b2d50f3c665329517352269a687bdf562b2cc6d 15-Jan-2013 Ramkumar Radhakrishnan <ramkumar@codeaurora.org> liboverlay: Rotator-assisted MDP downscaling of videos.

Engage the rotator to assist MDP in performing video downscale for
primary and external. This saves bandwidth and avoids causing the
driver to make too many panel mode switches between BLT (writeback)
and non-BLT (direct) modes.

Change-Id: Icfabc2c0f978a23cf96c78a9976cf69cea697b5f
CRs-Fixed: 434852
/hardware/qcom/display/msm8084/liboverlay/overlayRotator.h
270550d926a2e3c4d65b9c1c1d3b696f8a49b4cc 06-Nov-2012 Sushil Chauhan <sushilchauhan@codeaurora.org> mdssRotator:For Venus, rotator buffer size depends on rotated w/h

Due to alignment requirements on venus format, rotator buffer size
calculation needs to be performed according to destination buffer
dimensions. Due to these alignments, the buffer can be different
when width and height are swapped due to 90 degree rotation.

Change-Id: I8eb0f1ece22946e6c3b2106623c3457e6871fd9c
/hardware/qcom/display/msm8084/liboverlay/overlayRotator.h
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/overlayRotator.h
1a78fb1256ec5b65ee29506be00c50c52ed786f2 31-Aug-2012 Saurabh Shah <saurshah@codeaurora.org> overlay: mdprot: Call rotator start only on config change.

Call ROTATOR_START ioctl only if the rotator config changes.
Save the last good config when the start succeeds.

Make getSessId()'s return type uint32_t from int to match the member's.
This was causing all methods to think the rotator session id is a negative
invalid number. This ensures ROTATOR_FINISH is called.

Bug: 7320914
Change-Id: I5ca048ea866316f18d8df14dc08218fca2c82bdf
Signed-off-by: Iliyan Malchev <malchev@google.com>
/hardware/qcom/display/msm8084/liboverlay/overlayRotator.h
bf4ef717fabff427327613de76b69f964c51484d 19-Aug-2012 Saurabh Shah <saurshah@codeaurora.org> liboverlay: Add support for MDSS Rotator.

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

Change-Id: I60a2b0ce2b491d03b2b1a04966113e253b7f3dd8
/hardware/qcom/display/msm8084/liboverlay/overlayRotator.h
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/overlayRotator.h
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/overlayRotator.h