Commit Graph

1934 Commits

Author SHA1 Message Date
Ramakant Singh
cab868bf6d hwc: Add null check for copybit context and source handler
Add malloc return null check for copybit context 'ctx',
and source handler null check before getting metadata.

Change-Id: I9466de72d2b47ec2ba58fd50e66022555652f4c8
2015-02-25 17:35:42 +05:30
bait_dispatcher_monitor_system
92fff34247 Merge "hwc: Handle worm hole region for one line" 2015-02-20 14:58:44 -08:00
bait_dispatcher_monitor_system
438538bdef Merge "hwc: Fix scaling issue in copybit." 2015-02-20 14:58:43 -08:00
bait_dispatcher_monitor_system
d4d13675c7 Merge "hwc: Integerize in the outward direction of rectangle" 2015-02-20 14:58:40 -08:00
bait_dispatcher_monitor_system
53656f5fe8 Merge "sde: Add support for using scalar library" 2015-02-20 14:58:37 -08:00
Sushil Chauhan
9dd3831976 sde: Add support for using scalar library
Resource config communicates with scalar library to configure the
Scale data structure. Then HWFrameBuffer populates the Scale data
structure to mdp_scale_data structure of MDP input layer.

Change-Id: Ibdfea2d3ef38ca381b14ceccb65df583407fda02
2015-02-18 10:30:58 -08:00
Linux Build Service Account
6689259d2a Merge "sde: Move utility functions to common header file" 2015-02-18 03:38:24 -08:00
Tatenda Chipeperekwa
2ba9789b07 sde: Move utility functions to common header file
Move utility functions to common header file accesible from
SDE and HWC modules.

Change-Id: Id5183bb8f41a223273c973960f653f155e3c4c05
2015-02-17 12:26:34 -08:00
Saurabh Shah
b45cc7fef7 hwc: Integerize in the outward direction of rectangle
Currently HWC integerizes float source co-ordinates (l, t, b, r) in
the inward direction, mimicking SF from pre-HWC-1.4. In case of
upscale where we need to create more destination pixels than incoming
ones, this chopping off can lead to quality issues, especially given
that the error magnification can be as much as 20x.

This change integerizes the source rectangle in the outward direction
which will help magnification cases. Downscale cases should be
unaffected since reduction hides errors, unlike magnification.

Change-Id: Ib72a1f8d52f4ec800387bfe2b91c9d3a65e6f557
2015-02-17 10:13:11 -08:00
Linux Build Service Account
f1f85ba397 Merge "hwc: metadata API to set 3D format." 2015-02-14 01:38:32 -08:00
Linux Build Service Account
e0217fa58f Merge "sde: Define rect utility functions." 2015-02-13 16:31:14 -08:00
Linux Build Service Account
061384ac7a Merge "sde: Add support to disable animation on external display." 2015-02-13 16:31:13 -08:00
Ramakant Singh
909bc2a7f0 hwc: Handle worm hole region for one line
MDP3 can't handle one line worm hole region.
Hence passing full FB to clear and disabling the
swap rect if presents.

Change-Id: Iba4c7c0a08625dad8ebe700d71df83e37cc50797
2015-02-13 01:13:26 -08:00
Naseer Ahmed
3324ff775b hwc: metadata API to set 3D format.
API to allow the video decoder to set the S3D format.
The supported format definitions have moved to qdMetadata.h
for uniformity.

Change-Id: I2b313bf72df97ae948e7efc7faf4a4441c0ef5ce
2015-02-12 22:15:28 -05:00
Manoj Kumar AVM
b86bc17763 sde: Define rect utility functions.
Define rect helper functions used by SDE.

Change-Id: Ib8e0bc9493a40fa59a3cf90a115352edd4264a92
2015-02-10 18:09:06 -08:00
Ramkumar Radhakrishnan
84fdd2db94 sde: Add support to disable animation on external display.
1. Compose the first animating frame using GPU on external display.
2. Set composition type of subsequent animating frames as SDE
   composition and update cached framebuffer to external display.
3. Close the releasefence fd of framebuffer target during animation.

Change-Id: I674efa1821c8fc2fa0c3f9ccee88e25b70f75f9d
2015-02-10 18:07:56 -08:00
Linux Build Service Account
94b3741b1b Merge "hwc: Remove unused utility function" 2015-02-10 08:10:16 -08:00
Linux Build Service Account
616adcc0bc Merge "hwc: sde: enable SDE for thulium target" 2015-02-10 02:29:23 -08:00
Linux Build Service Account
81778e77cf Merge "hwc: Program default mode upon boot anim completion" 2015-02-09 16:47:08 -08:00
Linux Build Service Account
ea51be6e5b Merge "hwc: Use 1 pipe if rotator downscale reduces dimensions" 2015-02-09 16:47:07 -08:00
Tatenda Chipeperekwa
274a5d23f2 hwc: Remove unused utility function
Cleaning up unused code in utils library.

Change-Id: I642f78897fa317f34bdcdba4df84db10ad9f7eb3
2015-02-09 14:53:09 -08:00
Linux Build Service Account
979e194731 Merge "gralloc: Add UBWC support for Camera" 2015-02-09 08:12:45 -08:00
Linux Build Service Account
3c53d380f3 Merge "sde: Implement sequence locker to lock across multiple APIs." 2015-02-09 08:12:44 -08:00
Linux Build Service Account
393678d60f Merge "sde: Add support for input and output layer dump" 2015-02-09 08:12:38 -08:00
Linux Build Service Account
3b8aa294d3 Merge "sde: Fix for external displays" 2015-02-06 20:45:02 -08:00
Linux Build Service Account
8beed5c26d Merge "hwc: fix fence issue in app buffer composition" 2015-02-05 15:30:04 -08:00
Linux Build Service Account
b83b12feab Merge "overlay: Fix pipe type related priority checks" 2015-02-05 15:30:03 -08:00
Saurabh Shah
05f4e22484 hwc: Use 1 pipe if rotator downscale reduces dimensions
If rotator downscale is able to reduce output dimensions below
MDP's pipe limits, then use only 1 pipe if possible in source split
cases.

Change-Id: I6739a1fcd32b1047ce266d60c0123961c9daa657
2015-02-05 14:40:56 -08:00
Linux Build Service Account
38a40d7308 Merge "hwc: Enable swapRect for overlapping use-cases" 2015-02-05 04:08:36 -08:00
Linux Build Service Account
29639449e5 Merge "hwc: Use displayFrame information in caching" 2015-02-05 04:08:35 -08:00
Linux Build Service Account
0b73f42f2a Merge "hwc: Use dirtyRect details in solid fill" 2015-02-05 04:08:35 -08:00
Manoj Kumar AVM
0359243f0e sde: Fix for external displays
1. When non-primary displays are registered, set composition mode to
   safe mode until resources for the added display is configured
   properly.

2. Fix HDMI mirroring issue on framework reboot.
   It could be possible that HPD is on during framework reboot.
   HDMI driver needs HPD toggling to send uevent to userspace.
   Disable HPD at start if HDMI is external, it will be enabled later
   when the primary display powers on.

Change-Id: I27f27af3f6d525bd3697f5d5edd838f04003ff61
2015-02-04 20:39:55 -08:00
Sushil Chauhan
3233329902 gralloc: Add UBWC support for Camera
Camera sends IMPLEMENTATION_DEFINED format, so if UBWC gralloc usage
flag is set, it expects gralloc to set the pixel format as NV12_UBWC
instead of use-case specific pixel formats.

Change-Id: Id0a11893401d1338f4f123ca8df029ed96b18ab9
2015-02-04 19:03:16 -08:00
Ramkumar Radhakrishnan
952081f9ed sde: Add support for input and output layer dump
1. Add support to dump the input layers for all displays or each
   display separately.
2. Add support to dump output layer for virtual display.
3. Add binder support to enable dump on each display, to enable dump
   for input/output layers, and to set number of frames to be dumped.

Syntax:
  adb shell "service call display.qservice 21 i32 <FRAME_COUNT> i32
             <DISPLAY_TYPE> i32 <LAYER_TYPE>"

  FRAME_COUNT  = Number of frames to be dumped.
  DISPLAY_TYPE = 1 -> To enable dump on primary display
                 2 -> To enable dump on hdmi display
                 4 -> To enable dump on virtual display
  LAYER_TYPE   = 1 -> To enable input layer dump
                 2 -> To enable output layer dump

To dump 2 frames of input and output layers on virtual display:
  adb shell "service call display.qservice 21 i32 2 i32 4 i32 3"

Change-Id: Ifb3e6a7554e0012495f6f5858d6e32ff8fee6bec
2015-02-04 15:16:01 -08:00
Linux Build Service Account
a079dcbc57 Merge "hwc: Handle properly event data string from driver" 2015-02-04 05:24:17 -08:00
Linux Build Service Account
7d659264fb Merge "hwc: Add check for dirtyRect clear call." 2015-02-03 19:38:23 -08:00
Linux Build Service Account
011f59cb65 Merge "hwc: Rename two app buffer property." 2015-02-03 19:38:22 -08:00
Linux Build Service Account
505947c1c2 Merge "hwc: Partial update support for ping pong split." 2015-02-03 19:38:20 -08:00
Saurabh Shah
218a61a7d2 overlay: Fix pipe type related priority checks
In case of one pipe having a new request and pipe types being
different, a condition check for comparison was missing. This
change adds that.

Change-Id: Ie58e297405a5ba911485d3f1e2e34cfbf538d2d7
2015-02-03 18:06:53 -08:00
Linux Build Service Account
96665dabb6 Merge "sde: Add support for virtual display" 2015-02-03 15:25:15 -08:00
Linux Build Service Account
38fb7a5642 Merge "sde: Add Support for UI/Video rotation using SDE rotator" 2015-02-03 15:25:14 -08:00
Linux Build Service Account
2424c293f3 Merge "sde: Add support to systrace." 2015-02-03 15:25:14 -08:00
Praveena Pachipulusu
6ddb0de535 hwc: Handle properly event data string from driver
Now that multiple events are handled by the vsync thread,
the data read from the driver needs to be null terminated.
Also memset vdata string to zero to ensure that data from a
previously read event isn't considered part of the current
event with a shorter data string.

Change-Id: Iff63e3a817c289ebca8a735ec2484c067b3ff3cf
2015-02-03 10:31:52 +05:30
Ramkumar Radhakrishnan
ef83526f6a sde: Implement sequence locker to lock across multiple APIs.
1. Lock prepare() and set() APIs using sequence entry and sequence
   exit lock respectively to prevent the critical section being
   accessed by other threads.
2. Wait for sequence wait lock on HotPlugEvent thread or any other
   binder threads(Eg. dumpsys), before it accesses the critical region.
3. Prevent deadlock during multiple prepare() calls before a set().

Change-Id: I5443675c870ed2967615ec383dd2d59ded30b52b
2015-02-02 18:07:38 -08:00
Dhaval Patel
72462354c4 hwc: sde: enable SDE for thulium target
Enable SDE compilation for thulium target

Change-Id: I9aa9c7943a210bd885182460af72674e15d29f11
2015-02-02 12:20:24 -08:00
Linux Build Service Account
1f595e5c76 Merge "hwc: Try MDP composition eventhough skip layer is present" 2015-02-02 03:33:22 -08:00
Ramakant Singh
52e1c0ce23 hwc: fix fence issue in app buffer composition
Due to wrong buffer index closing app buffer
acquired fence.
CRs-Fixed: 769718

Change-Id: I22db571ad7af303f5372532b3c5e5841fb6b27b7
2015-02-02 02:30:41 -08:00
Dileep Kumar Reddi
aa48888ad4 hwc: Use displayFrame information in caching
In some use-cases layer handle is not changing but
displayFrame is changing, resulting flickers.

Change-Id: I4e5a2756efe76754ab517f65dae75fc07db48435
2015-02-02 15:57:16 +05:30
Dileep Kumar Reddi
f7b72059cd hwc: Enable swapRect for overlapping use-cases
Use swapRect feature for use-cases with one updating layer
and updating layer is overlapping with other layers

Change-Id: I1a48926c941ef3e8184e1a6f80134f4e688741eb
2015-02-02 15:48:00 +05:30
Dileep Kumar Reddi
f4e2e0c579 hwc: Use dirtyRect details in solid fill
No need to clear a non updating region in case of swapRect.
Use dirtyRect value of updating layer to achieve this.
Before using dirtyRect value map it to respective displayFrame,
as dirtyRect is with respect to sourceCrop.

Change-Id: Ie5782a039f7075396e30405070f12ce2443c0a82
2015-02-02 15:44:20 +05:30