Add support for copying to/from virtual addresses as well, in
clients which only have the metadata base pointer but not the
native handle
CRs-Fixed: 2033657
Change-Id: I3d4d0e4139207a54c3db2f8585533974e1657a0a
Add UBWC CR stats info in metadata to communicate
Compression Ratio of YUV data between various producers
and consumers.
CRs-Fixed: 2018078
Change-Id: Iba9d67436084e5c14d5872b75f5029262dafed23
- Add color aspects and HDR10 related static metadata
which will be used in the existing metadata structure.
- Clients can use COLOR_METADATA to update the CSC
information
- UPDATE_COLOR_SPACE is legacy and will be used when
COLOR_METADATA is not set.
- Update gralloc to return color space when set from
COLOR_METADATA
- Gaurd the usage with USE_COLOR_METADATA for cobalt.
Change-Id: I460accf6cd2bb7a305c7e93284955e566a5b7532
Crs-fixed: 1074172
- Add Rec2020 CSC in qdMetadata for limited/full range
- Expose CSC as #defines in gralloc private header to
help GFX decouple from the display headers
Change-Id: I90ee2708275bf1a37ece0fce2f0867dfad64e39a
Crs-fixed: 1074164
Add a presentation timestamp that is set by camera for buffers
intended for video telephony.
Change-Id: I8d3ab9e5ea798c6794a74ea6f0f607a303752a6b
CRs-Fixed: 1053401
Set S3D flag to private handle so that SurfaceFlinger can help
to draw S3D framebuffer target according to the flag in case
MDP can not handle some of S3D cases.
Change-Id: Ic39d0c0dd47c71e8a677d1e52af2c485494235b3
CRs-fixed: 999055
1. Change frame rate to float since uint32_t can not
match frame rate to standard.
2. Add function of getMetaData() for components to
fetch params from MetaData.
2. Add function of CopyMetaData() for components to
clone MetaData for different buffers.
Change-Id: Iba741215e524254b88f88058052fb6408e1f4a36
CRs-fixed: 1001500
Some graphics drivers don't recognize bool (^^) so use uint32_t
instead to fix compilation issues.
Change-Id: I12e13ed4d13ec241467a4c5a2b9cf2e409ee5505
1. Define LINEAR_FORMAT operation in MetaData.
2. VENUS ouput buffer is linear for NV12_UBWC Interlaced video playback.
So Video module performs LINEAR_FORMAT operation to set "linearFormat"
metadata member to NV12 linear format in case of Interlaced video.
3. Handle LINEAR_FORMAT metadata operation in HWC wrapper and gralloc.
CRs-Fixed: 855474
Change-Id: I77dd72bec26f225de75adb6c214ccd90db239e3e
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
- The client sets this metadata to inform GPU to map the CP buffer
- GPU will check the PRIV_FLAG_SECURE and this metadata to map the CP buffer
- If this field is not set on the buffer handle, then GPU will not map
the CP buffer
- Allow mapping of metadata for SECURE_BUFFERS also
Change-Id: I86300a1b4e3008f9d0884940420e9036c47a016f
- The primary panels refresh rate can be change by clients
- Required refresh rate will be set by client using metadata
- If there are multiple clients requesting, it will be used only
when the refresh rates are equal, else it resets to default
- Set the new refresh rate only when there are only YUV layers
updating or when the list has only one RGB layer updating
- MdpVersion gets the dyn fps capabilities from panelInfo
Change-Id: If3e7e6b2f028eb301399c4d32c748eed8a97c41f
Add color space field in gralloc buffer metadata
for buffer producer to propogate color space
information to consumer.
This approach is more flexible in the sense
that gralloc doesn't need to depend on usage
flag to derive color space.
Change-Id: I89d5a85f84a6f36dca7c5fc754dc7eb19581169a
Defines generic metadata structure for VFM. An array of VFM metadata
structures is used to keep the libqdutils agnostic of the internal
details of VFM metadata.
Change-Id: I5513b5f88b0f18687c0f563f2fe25eb9481887bf
update the source video width and height set by the video decoder
for secure video smooth streaming usecase from metadata.
Change-Id: I73a3804d90557034604142481a232787dbc08f23
This timestamp can be set by clients who wish to defer
presentation. The behaviour is intended to be similar to the
native window presentation timestamp which is currently not
implemented.
Change-Id: Iabe12f81677093f4c30db2b09deaac7bf063f296
Allocate extra space for metadata in buffer handles
Provide api to map this space in client process and set the metadata
Change-Id: I8bca8448670d4aa88d439320faf402dae30458f8