bce12990928d1c2d1e250271b43f5fb10174ecfc |
|
13-May-2014 |
Saurabh Shah <saurshah@codeaurora.org> |
overlay: Remove usage of scale header Remove usage of scale header and do not create or destroy objects. the programScale() function exported out of libscale.so will internally manage objects. This frees up overlay from relying on scale.h which may not be exported by libscale.so to a known location if only binaries are shipped. Change-Id: If6970541e2eb0ee2bdb907c73ed3534fc22e9dd1
/hardware/qcom/display/msm8084/liboverlay/overlay.cpp
|
c9b4387ff5af60882a032188b64b85bebad3977a |
|
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/msm8084/liboverlay/overlay.cpp
|
314840035b55115a39d526cde009c678ccdacf40 |
|
05-Mar-2014 |
Saurabh Shah <saurshah@codeaurora.org> |
overlay: Support for returning pipe based on capability. Add support for returning pipes based on capabilities. getPipe() API takes in pipe specifications like format class, scaling, display, mixer, fb and decides what pipe to return. The nextPipe() API is now just a private helper. Change-Id: I0ab809662c0ad6297e19a44f39264ee929944d13
/hardware/qcom/display/msm8084/liboverlay/overlay.cpp
|
159568fb06ec2eaa1846e3aef51de95d7586a8df |
|
15-Apr-2014 |
Tatenda Chipeperekwa <tatendac@codeaurora.org> |
hwc/overlay: Correct pipe priority comparison MDP driver assigns pipe priority in inverse order. Lower the number, higher the priority. HWC shall swap pipes if right pipe is assigned lower number than left pipe. Change-Id: I328623d9f53ad3ae79f7e73b10116231a7c50582
/hardware/qcom/display/msm8084/liboverlay/overlay.cpp
|
348ca172f707a14925ba1652e9bcb3d4c2a695f4 |
|
28-Feb-2014 |
Saurabh Shah <saurshah@codeaurora.org> |
hwc/overlay: Add support for pipe priorities, 1 pipe config for FB If using source split to stage 2 pipes on the same mixer stage, the left pipe needs to be a higher priority than the right. Add API in overlay to compare pipe priorities and use this in source split config to stage pipes accordingly. Add support for 1 pipe config for FB if updating rect is within 2048 pixels. Change-Id: I8b33d5ebd0f8765ee842bab128d8abd67a110145
/hardware/qcom/display/msm8084/liboverlay/overlay.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/overlay.cpp
|
1029ad2b12d5f30e77b2c2f85da891f2d1842424 |
|
17-Dec-2013 |
Saurabh Shah <saurshah@codeaurora.org> |
hwc/overlay: validate and prepare frame Send the entire frame (array of overlays) to driver, so that it would check pipes params and the whole frame wrt bandwidth and SMP. Now, the overlay's commit API just prepares an overlay object but makes no ioctl calls. If the driver finds the frame, as a whole, to be not ok, the validation fails and overlay/hwc return silently. If a certain overlay object is mis-configured or pipes are unavailable, the driver sets the number of objects it processed. Overlay uses this to dump the incorrect config. Change-Id: Ifb2b7fadc6bd6d9d94a35ba3908fbd832f41447f
/hardware/qcom/display/msm8084/liboverlay/overlay.cpp
|
b28b611dec8392c7c8f17bc5e71b0a656fa8daa8 |
|
06-Dec-2013 |
Saurabh Shah <saurshah@codeaurora.org> |
overlay: Remove support for forced pipe configs Forced pipe configs were used during geometry changes to track bandwidth in driver, which is no longer the case Change-Id: I49fb1ca1b7173da2e17ccfc8ce9b447152b9b7b6
/hardware/qcom/display/msm8084/liboverlay/overlay.cpp
|
18c3f73237eab2423455d717889a7b8a93d081a0 |
|
06-Dec-2013 |
Linux Build Service Account <lnxbuild@localhost> |
Merge "hwc: allow DMA pipe in BLOCK mode for virtual dpy"
|
531ab83263f2678b1b406b65a0415655ef5e73b7 |
|
22-Oct-2013 |
Raj Kamal <rkamal@codeaurora.org> |
hwc: allow DMA pipe in BLOCK mode for virtual dpy For portrait videos case on WFD, driver supports multiplexing of DMA pipe in LINE and BLOCK mode. Loosen the requirements to allow DMA pipe in block mode for portrait case of virtual display. Change-Id: I5821501f89b17bb2d29c425aee0a6c16b2a4783b
/hardware/qcom/display/msm8084/liboverlay/overlay.cpp
|
fc8e697b7355f921ab90e852a9517b378a0975e9 |
|
02-Dec-2013 |
Linux Build Service Account <lnxbuild@localhost> |
Merge "overlay: pipe reservation mechanism for overlay"
|
8d64e523e2f6c8f04cf859536c2c073d6193d70e |
|
02-Dec-2013 |
Linux Build Service Account <lnxbuild@localhost> |
Merge "hwc/overlay: Add Color layer support in MDP Composition."
|
25a5fbfe77bcdba08934b0cb3081b6cf8021ba46 |
|
21-Nov-2013 |
Zohaib Alam <zalam@codeaurora.org> |
overlay: pipe reservation mechanism for overlay This change provides APIs for this mechanism. In a case where pipeid corresponding to the layer needs to be reserved, then pipe session could be initiated for that pipe. This will ensure that the pipe is not garbage collected, and is manually destroyed when the session (or pipe requirement) has been ended. This change also provides the api to locally allocate the dest for the given reserved overlay pipeid. Change-Id: I3fec3e26f69305c280395b7a92edf9e457398052
/hardware/qcom/display/msm8084/liboverlay/overlay.cpp
|
08cbd816733f17c957411ae915f2543afea70b67 |
|
18-Jul-2013 |
Sushil Chauhan <sushilchauhan@codeaurora.org> |
hwc/overlay: Add Color layer support in MDP Composition. 1. Color layer has a destination rectangle, RGBA color and plane alpha. There is no gralloc buffer. Layer flag "HWC_COLOR_FILL" denotes a Color layer. 2. There is no color member in HWC layer, so RGBA color value is passed via the "tranform" member from framework to HAL. Change-Id: I8769fd3f5febcaf952a1456de0a4262679c9a0e4
/hardware/qcom/display/msm8084/liboverlay/overlay.cpp
|
072cc46edd38e61fd21757c4725dbcef431bef08 |
|
27-Sep-2013 |
Saurabh Shah <saurshah@codeaurora.org> |
overlay: Add support for using scalar calculations Add support for using scalar calculations from custom library. The calculation will override pipe configurations if required on basis of format, scaling, split display etc. Change-Id: I53c73431b70b5b339ad09c19ac8792f0fc96aaaa
/hardware/qcom/display/msm8084/liboverlay/overlay.cpp
|
bc037e0bbb3d1778fb4bde55582fd1d4e666f957 |
|
01-Aug-2013 |
Jeykumar Sankaran <jsanka@codeaurora.org> |
libhwcomposer: MDP partial frame update This change adds support in HWC for MDP partial update applicable only for command mode panels. Presence of MDP FB (GRAM) in command mode panels allows MDP clients to update only the updating region of the frame as rest of the frame will be cached in the GRAM. HWC calculates the updating region of a frame (ROI) by deducing outer bounds of its updating layer destinations. Layers not lying within the calculated ROI will be dropped from the composition since its illegal to program MDP pipes for non participating layers. Change-Id: I890d98ff7960fe888787981803cac62f68471201
/hardware/qcom/display/msm8084/liboverlay/overlay.cpp
|
2f33bdfc88ba564dcad7e6f3698a3273b22cc41e |
|
27-Aug-2013 |
Linux Build Service Account <lnxbuild@localhost> |
Merge "overlay: Remove optimization that prevents garbage collection"
|
4b64244ed3fc6dfab398dae4326a5e40fddc3718 |
|
24-Aug-2013 |
Saurabh Shah <saurshah@codeaurora.org> |
overlay: Remove optimization that prevents garbage collection There is an optimization to not do garbage collection (and thus UNSET) if pipe usage hasn't change, added during older chip time frames. It worked then because, continuous overlay failures were not normal, and on failure userspace didn't UNSET remaining pipes. On newer chips, owing to bandwidth limitations, continuous overlay failures could happen, plus now we UNSET all other pipes. Thus each round if GPU gets used, the optimization infers that pipe usage hasn't changed and does not UNSET pipes. Also the optimization doesn't do anything useful than saving a few loops, but is suicidal in current situations, so can safely be done away with. Change-Id: I33bd64a599d8ade337707301188c94cf8e6aac81
/hardware/qcom/display/msm8084/liboverlay/overlay.cpp
|
eab2696fe84189de2eecbd9187fa7fa037310975 |
|
22-Aug-2013 |
Saurabh Shah <saurshah@codeaurora.org> |
hwc/overlay: Force pipe config if list geometry changes Force pipes of a display, whose geometry has changed, to pass configuration arguments using MSMFB_SET_IOCTL. This helps the driver make additive bandwidth calculations and reject the frame if the requirements go beyond what the hardware can support. This change still preserves the optmization to avoid ioctl calls, in cases where pipe params are the same but makes an exception when list geometry changes. Change-Id: I909d35b2a8c33059b34b65943ccbbc08650461db
/hardware/qcom/display/msm8084/liboverlay/overlay.cpp
|
361900d9a618d2c4d2276a10ca76919214f6759f |
|
02-Aug-2013 |
Jeykumar Sankaran <jsanka@codeaurora.org> |
display: External display refactor - cleans up external library - add separate library for virtual display - process virtual updates in its separate path in hwc. - Acquire blank mutex lock for one complete drawing cycle Change-Id: Ib984c578464a131ecdb27ee48960f58d68b7a5a7
/hardware/qcom/display/msm8084/liboverlay/overlay.cpp
|
1a36c7e14d1628592e4e1cff96d977b829f8cc31 |
|
30-Jul-2013 |
Saurabh Shah <saurshah@codeaurora.org> |
hwc/overlay: Prevent pipes from switching mixers For split displays, earlier we allowed pipes to switch mixers in subsequent rounds. This change prevents that and makes sure there is one composition round where a pipe being transferred to another mixer of the same display is UNSET Change-Id: I3c679cc4256363eeb70c5cf8bcaf5047b8a064c2
/hardware/qcom/display/msm8084/liboverlay/overlay.cpp
|
e856d4a5aa28bc6596398a0331c2e1703a343d7c |
|
19-Jul-2013 |
Linux Build Service Account <lnxbuild@localhost> |
Merge "overlay: Fix crash due to small debug buffer size"
|
d6749ede0923b1660dbc45b9c0c93e48c83916ce |
|
16-Jul-2013 |
Saurabh Shah <saurshah@codeaurora.org> |
overlay: Fix crash due to small debug buffer size The debug buffer size is insufficient for newer targets with multiple pipes. The code causing crash is enabled only if the PIPE_DEBUG macro is enabled during local debugging. We now increase the buffer size and also put some string operations under the macro check for efficiency. Change-Id: I4ad418d314fd8c7d374ccfdb0943dde44d968922
/hardware/qcom/display/msm8084/liboverlay/overlay.cpp
|
76a5cdf91ae7c3f98845c0464dcc49c45d1af10b |
|
27-Jun-2013 |
Saurabh Shah <saurshah@codeaurora.org> |
overlay: Add writeback support Add explicit writeback display type, writeback ioctls, memory mgmt, writeback class, writeback obj manager class to overlay. Change-Id: I171e60cea5ed8f6649859e3eb189df37b39962f1
/hardware/qcom/display/msm8084/liboverlay/overlay.cpp
|
20ab3f49dbdb9482f456759cf2fed2264d1f01e2 |
|
23-May-2013 |
Saurabh Shah <saurshah@codeaurora.org> |
overlay: Reset pipes on config failure There can be frequent failures in pipe config on certain targets owing to scare SMP blocks. In such cases, reset usage of all pipes; forcibly configure them next time, even if params haven't changed; Change-Id: I769513fc3513e292d9d9b7f126735841a7a8f493
/hardware/qcom/display/msm8084/liboverlay/overlay.cpp
|
6c00d487ca26b6ad864256248b0c5c59034d120e |
|
15-May-2013 |
Sushil Chauhan <sushilchauhan@codeaurora.org> |
hwc/overlay: If configRotator fails, mark all pipes as available. If configRotator fails, reset usage & allocation bits on all pipes for the given display to make them available for the current draw cycle. It is required because if external is connected and Rotator commit() on Video fails, all pipes which were picked-up by primary are not available for FB update, hence it runs out of pipes. CRs-Fixed: 483002 Change-Id: Ifd0d708e4ef8e3ddbe9d0531f6090539b8dcb249
/hardware/qcom/display/msm8084/liboverlay/overlay.cpp
|
a4ab187a1b29575833190181c3a653a4b9ab76de |
|
02-May-2013 |
Xiaoming Zhou <zhoux@codeaurora.org> |
liboverlay: add the support for 8x10 MDP h/w core Add the check for 8x10 MDP h/w version before verifying mixer information Change-Id: I86c4190bb8288ac23ab58fe44e649455783ccba6
/hardware/qcom/display/msm8084/liboverlay/overlay.cpp
|
586aedccc2eaa76923bc22a3325fc2e4eff415e2 |
|
23-Apr-2013 |
Saurabh Shah <saurshah@codeaurora.org> |
hwc/overlay: Introduce padding round between DMA modes. Introduce a padding round between the DMA line and block modes. Do this based on whether DMA is actually being used, when block mode is first requested. This relieves the driver of doing an UNSET ahead of vsync which could cause blinks in all such transition scenarios. This approach should lead to smooth transitions for multiple targets with the exception of secure videos, where there could be a blink in any of the different approaches we use. Change-Id: Ibc0b8d284b5c6ed9291a7cfa7e7f221300a921e2
/hardware/qcom/display/msm8084/liboverlay/overlay.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/overlay.cpp
|
11154eed0599cd2e03bd0706341e14e05265b907 |
|
13-Apr-2013 |
Saurabh Shah <saurshah@codeaurora.org> |
hwc/overlay: Fix dma mode design and issues. Add support for tracking the mode in which DMA is being used in overlay. Remove unnecessary tracking variables, and their set,reset inconsistency. With such varibles in hwc, it still leads to overlay giving out DMA pipes. Make overlay as the single tracking place. Change-Id: Ib949f3d0ef5918ef323c81cb1768b68a68c83da4
/hardware/qcom/display/msm8084/liboverlay/overlay.cpp
|
5d50448ce691782fde0c26ec8247b3d5d6b2de82 |
|
23-Jan-2013 |
Saurabh Shah <saurshah@codeaurora.org> |
hwc: Add MetaData support in overlay path. DONE: 1. HSIC(SPA) test. 2. IGC R/G/B channel test. 3. QSEED2 sharpening/smooth test verified through register value check. Change-Id: Ia9472f489c013df22a3411eeaac3c8d1e6e22ac0
/hardware/qcom/display/msm8084/liboverlay/overlay.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/overlay.cpp
|
46731b93be48272c1d4e662a6af3c1d80365eb06 |
|
01-Mar-2013 |
Sushil Chauhan <sushilchauhan@codeaurora.org> |
overlay: Reset allocation on all pipes, if commit fails. If commit fails on a pipe, overlay hal needs to reset allocation on all pipes for the given display. As MDP Comp fails, it falls back to video and PipeBook logic does not pick-up those pipes on which commit was successful. Driver sets new pipes and un-stages previously set pipes (with same z-order). Pipe clean-up happens and then in next round, PipeBook logic picks-up previous pipes hence userspcae and driver remain out of sync. Change-Id: I963fbdf89f346184688c5bcac2824606a5f7a0f2
/hardware/qcom/display/msm8084/liboverlay/overlay.cpp
|
c8d563c4df56d25bf6ac6f38fb6703150458737a |
|
11-Jan-2013 |
Jeykumar Sankaran <jsanka@codeaurora.org> |
libhwcomposer: MDP composition for Higher Resolution panels This patch: -Implements MDP composition for higher resolution panels of width more than 2k. -Adds DMA pipe support for high res. MDP composition Change-Id: Ib7b1f822e3600eca81521294fedfe05e948b65c3
/hardware/qcom/display/msm8084/liboverlay/overlay.cpp
|
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/overlay.cpp
|
620fc1f5f84e968c2e9b803e8580ee718c3c3f65 |
|
03-Dec-2012 |
Amara Venkata Mastan Manoj Kumar <manojavm@codeaurora.org> |
hwc: support WFD external display Change-Id: I3d24ff1757e79c4b41ff6c6db17d0274cd665671 (cherry picked from commit f8942672226a7af26218aa8d325c1677ae2b83dd)
/hardware/qcom/display/msm8084/liboverlay/overlay.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/overlay.cpp
|
76443245d153635b512539fbc68fdf7a904fdf6f |
|
28-Sep-2012 |
Saurabh Shah <saurshah@codeaurora.org> |
hwc: enable dual display on hwc 1.1 Enable dual display on HWC 1.1; video uses overlay. Bug: 7124159 Change-Id: I8333e46cfc74072f6259fba2b82368f0dd52b6df Signed-off-by: Iliyan Malchev <malchev@google.com>
/hardware/qcom/display/msm8084/liboverlay/overlay.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/overlay.cpp
|
f621867a9f77ca62c71b65cbdc3cf8d8877d2b32 |
|
01-Aug-2012 |
Naseer Ahmed <naseer@codeaurora.org> |
liboverlay: Remove waitForVsync, getOvPipeType APIs Remove waitForVsync support. Vsync will be done explicitly by clients outside of overlay. Remove support for the unused getOvPipeType API. Remove redundant state checks in class Overlay Change-Id: I8b35d7868bb46b0be755833dc8f28a158d3ff104 Acked-by: Saurabh Shah <saurshah@codeaurora.org>
/hardware/qcom/display/msm8084/liboverlay/overlay.cpp
|
79f8c83e7613b3058814499a75dde323a3f6aed8 |
|
01-Aug-2012 |
Naseer Ahmed <naseer@codeaurora.org> |
overlay: Refactor State Transitions. Refactor transitions by templatizing to have default behavior for most cases and full specializations for specific cases. Partial specialization of functions is not allowed, so create templatized intermediate functions for those use cases. For ex: if we have 8 states, we don't need 8x8 transition handlers. Add and define OV_DUAL_DISPLAY state. Add a GenericPipe for subtitles to OV_2D_VIDEO_ON_PANEL_TV state. Add a 2D_VIDEO_ON_TV state and its transitions. Change-Id: I064cf813c43c3e3736800fbd465c6f1aa9b3a2d3 Acked-by: Saurabh Shah <saurshah@codeaurora.org>
/hardware/qcom/display/msm8084/liboverlay/overlay.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/overlay.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/overlay.cpp
|