Instead of determining the device orientation based on the
layer orientation, use the value which comes from the framework
CRs-fixed: 382796
Change-Id: I83e87534fbfc62740a411f1324b2c12e88434b41
SurfaceFlinger re-creates HWC worklist only for new frame and on
layer geometry change. Invalidate triggered by idle timeout
refreshes the existing worklist retaining its previous
composition type. So its MDP comp's responsibility to clear
layer composition types to HWC_FRAMEBUFFER on timeout.
Change-Id: Ibf11dd6c12c647c75d36d8cbad408c3ea70588bd
If the device's kernel isn't fully prepared for secure content
playback, having the secure field in the msm_rotator_img_info
struct will cause issues while playing out video.
The correct set of patches to the kernel (MDP, maybe vidc) needs
to be figured out for this to be enabled; to disable it,
add QCOM_NO_SECURE_PLAYBACK to the device's CFLAGS. (and remove
"secure" from msm_rotator_img_info)
Change-Id: Ib1d265133e66ae456c59a9f78b052a01cbd00116
the hdmi driver can send change uevent anytime, in which case, the
connected state was getting set to 0, due to its default value.
Change-Id: I22dc96acda0272661750277d62c5c11c5156fb3b
Update destination x, y after an out-of-bounds video's bounds are recalculated
for crop and destination position.
Change-Id: I5419f7ae054f709111c39d79ec721686f474ae53
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: I34f00e1334bbd9fad130bdefeaf0426ebbd638a1
Update format translation from HAL to MDP.
Add support for RGB_888, YCbCr_444_SP, YCrCb_444_SP formats.
Change-Id: I6323cd07bfe74c7cc60bf2b59dd81e2ae8a2ce27
If the device's kernel isn't fully prepared for secure content
playback, having the secure field in the msm_rotator_img_info
struct will cause issues while playing out video.
The correct set of patches to the kernel (MDP, maybe vidc) needs
to be figured out for this to be enabled; to disable it,
add QCOM_NO_SECURE_PLAYBACK to the device's CFLAGS. (and remove
"secure" from msm_rotator_img_info)
Change-Id: I7949e918163e0acb2d6eb3d8881b04fb07b2be2c
- IOMMU heap is not available for all targets. we should
have a fallback heap always as IOMMU can be disabled.
Change-Id: I7e987ac69ba5e5fdd6228b50930e064a4420a472
Add support for different types of external-only layers
EXTERNAL_ONLY: General purpose
EXTERNAL_BLOCK: Blocks the display of other ext-only layers
EXTERNAL_CC: Used for closed captions with videos.
Change-Id: I7cb531a55a2f0015e3a51673faf08941bcea1923
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: I53b017b9a41db5894c263ccb446b7ec8875ef3aa
7x27A, 8x25 and 8x55 do not support HW vsync yet.
This change checks for their MDP version and disables HW vsync
on them. This change should be reverted once hardware vsync is
available on these targets.
Change-Id: I0cb884f571346b3595169cb4b3c01bbdb7ecaaee
This change
1) implements MDP Composition upto 3 layers
2) adds invalidator support to fall back to FB
composition during idle screen condition.
Change-Id: I8d724f905c943f986b68596e2548a7f5a8ce6588
- wait for hdmi vsync when connected to hdmi
- add commit to call PANDISPLAY for updating ext display
- add functions to close fb and reset info
Change-Id: Icdd3620bd9d15240a88a26a3f1bf9c07d58d011b
* Use the vsync uevents from the kernel to start
surfaceflinger composition.
* This patch also does some code cleanup
- Move copybit specific functions to copybit files.
- Cleanup verbose logging.
Change-Id: I8ca3cd7a7ceb53655ed0fcf39ac2cb35e6cbe890
switch back to TARGET_USES_ION (to be more inline with cm and a frameworks
change forces it to be defined anyway)
Change-Id: Ibc90a8ab0f7ff3477e149ee69489686f94476fec
The new headers define the qcom video buffer format
(HAL_PIXEL_FORMAT_YCbCr_420_SP_TILED) as 0x7FA30C03, ICS used 0x108.
Trying to play a video with the ICS Adreno driver results in
it rejecting the buffers because 2141391875 (0x7FA30C03) is an
unknown buffer format, so use the QCOM_ICS_COMPAT CFLAG to
fallback to the older enum.
Do NOT use this with JB Adreno blobs.
Change-Id: I2bd05c681718e916bd91311a4c9e503545f2e1bc