The patch sets the status as COPYBIT_FAILURE in case of an error in
open_copybit() as it needs to return the correct status. It also sets
the copybit device handle as NULL.
Change-Id: I3c35d163049763427ad92030cb1d88d72f7680fb
This change addresses following:
1. Add new classes for comp. bypass.
2. Remove comp. bypas specific code from exisiting flow.
Change-Id: Id9424b42a9a113cfbb18ceac8d59bbe07ea8e773
Removing submapping for buffers allocated by the PmemKernelAllocator
This can be done since the restriction on multiple master maps has
been removed from the kernel
Change-Id: Iabe9cdfaa121bbffbfaf6503e037afebf5ac8455
This is necessary to adjust aspect ratio based on the crop, since
src values are modified in crop.
Change-Id: Icfb20df5b6ac4e93dfa85b73c4f74b738a4d3e59
CRs-fixed: 290069
Small videos (width < 128) have their stride as 128. For HDMI
destination position was set only once, before the actual width was
supplied through crop. Now the position is set during a setPosition
API call.
Change-Id: If49ac23b9294951aaf4ad9d5432653082b4a7802
CRs-fixed: 286953
If the layer blending has been disabled, disable copybit alpha so
that copybit does not perform any blend operation.
Change-Id: I9a83fad0f126adaf9540bc72d17e7dcb1c55cd0f
CRs-fixed: 288527
Whenever there is a resolution change, update the overlay, rotator
paramters. Map the rotator memory according to the new size required,
and unmap the previously mapped memory.
Change the size calculation for NV21 formats, since the gralloc
allocates memory which is rounded up to the next 4K.
Change-Id: Idb4037422cbd80083e6ba14f229511a17cb61873
CRs-fixed: 287347
Add the state machine for overlay configuration. When connected,
check whether the TV on HDMI is 3D capable or not using the EDID
info. Show L channel on primary panel; and R channel on 2D TV if
non 3DTV is connected via HDMI, else switch TV to 3D mode.
Change-Id: I3109f8b0b81a8f5ad542db038262fd668e225e96
Allocate buffer sizes that are multiples of 4K for the NV21, NV12 and
YV12 formats.
Change-Id: I3febaef9dda2586ef3b35945f30f655e07f5e369
CRs-fixed: 287882
- Inform the gralloc of the HDMI status.
- If the HDMI is disconnected, close the overlay and also inform the
gralloc that video mirroring has stopped.
Change-Id: Ie89ffe860c0f9c9142d6c7f5d7a6c555884561ce
CRs-fixed: 286954
- Stagefright no longer sends the OMX Formats to the gralloc, remove
unnecessary code from the function.
- Add support for the YV12 format in getGrallocInformationFromFormat
Change-Id: Id21baf8890f07ef8fb8a32d3b0d218540005f469
The MDP kernel interprets the CRCB enum opposite to what Android
interprets it. Set the correct MDP enum value.
Change-Id: Iba9744fadadc42467dbf8979d6ed7d896c00ca10
When front camera is in use, overlay is created with 90 degree
rotation and vertical flip. This change considers 90 degree
rotation with flip, and updates the crop rectangle accordingly.
CRs-Fixed : 283348, 284193
Change-Id: Ia0d7830f12d607ae698b019396cd0e2bef168a6a
- The ioctl call from getOrientation is removed.
- In gralloc use getOrientation instead of storing the
orientation.
Change-Id: Idb08568ff5d46ce99e0a9a8c6f492b90bb666f0c
Set the premultiplied format for the source and destination formats if
COPYBIT_PREMULTIPLIED_ALPHA has been enabled
Change-Id: I89113a1f1160b921d8e49b5dd6fc01001307648f
CRs-fixed: 279449
Whenever there is a change in the buffer geometry, set a flag in the
gralloc handle stating that the buffer geometry has changed.
In the HWC, whenever we encounter an update in the geometry, if the
channel is already open, we just call the necessary ioctls to update
the overlay information and not unnecessarily open/close channels.
Change-Id: I27db8fc497ebc514e262d6b7854739f312644714
When the layer flags are marked to maintain the original surface
resolution, draw the layer using the overlay.
Store the HDMI status in the overlay object instead of the HWC
context.
The new perform api will update the width, height and
format of the buffer in the gralloc handle.
The GRALLOC_MODULE_PERFORM_DECIDE_PUSH_BUFFER_HANDLING perform
is not longer used in Honeycomb. Remove unused code.
CRs-fixed: 283849
When performing the copybit blit operation, do a blind blit of the
surfaces. The blending operation should be done when the stretch operation
is invoked.
Add the exported sanitized kernel headers to include path in C2D/
copybit, gralloc and overlay HAL libraries.
(cherry picked from commit a70f426e8695cc5bbf8a45b987b5715784f7e924)
Change-Id: I1dbb79a086e9cb062e1264c1c354ac5ce1a05f27
When getting the MDP format in the setSource api, separate the
color format from the interlace information.
Change-Id: I6a92d2d6d2c9f70b0c0bd6486227032716f70914
CRs-fixed: 282157
- Use rotator buffer for UI mirroring on HDMI
- Avoid ioctl calls on getPosition
CRs-fixed: 278858
Change-Id: Id390e2b85fe939d8388ed17f5f9c7fcd30499755
Add support in the gralloc to specify the desired buffer size during
buffer allocation. This is done via a new function in the gralloc(allocSize).
If the specified size is lesser that the calculated size,
set the buffer size to the calculated size.
Change-Id: Iad9609d3b9074dcf3af07430966590078081ab72
Call setPosition and setParameter for HDMI only when there is a
change in the rotation or position.
Change-Id: Id11b58408607c2f9799bb332c30d52f52957ec4e
The MSMFB_OVERLAY_SET ioctl gets called everytime there is a setSource called.
This is an expensive call and should not be done unnecessarily.
Change-Id: I2d9be394f48b9dea31b9f4f39b1b576c4ad42b47
startChannel function prototype has changed.
One of the places it uses old signature,
update it with new signature.
Change-Id: Id0510187ffa13d7d750ad101030649134353b14b
This change calculates x and y values based on setcrop parameters and current overlay values on 180 degree rotation.
CRs-Fixed: 274707
Change-Id: Ibfe20c1a53e832424a880d99e73bd4a1c7b95173
When the FLIP_H is passed, the overlay needs to flip the image along the vertical axis and similarly
when the FLIP_V is passed, the flip needs to happen along the horizontal axis
Change-Id: Iae31a1ca266e7e0bb9e598c88cb0728f35028052