Commit Graph

11 Commits

Author SHA1 Message Date
Tatenda Chipeperekwa
cb2a243608 hwc: vd: Add support for Dynamic Resolution Change (DRC)
1. Add support for Dynamic Resolution Change

We add support for DRC on virtual displays. This is achieved
by reading the width and height attributes that are set as
part of the buffer handle metadata.

For the WFD use cases, the WFD  MultiMedia framework will
update the width and height during DRC by using setMetaData
API with UPDATE_BUFFER_GEOMETRY. We then proceed to configure
WB with the new resolution for subsequent frames.

2. Update WB dump with output buffer format and resolution

Update WB dump with output buffer format and resolution. This is
helpful for debugging purposes.

Change-Id: I537277499041bffc7bfc5c6e3d024b67f80fce44
2014-09-15 11:12:35 -07:00
Jeykumar Sankaran
167304e8a3 liboverlay: Invoke commit before freeing the writeback device
MDP releases resources programmed for the WB device only when the
device is not used by anyone else. So freeing up the WB device from
HWC doesn't always guarantee that all the pipes staged on the
device will be freed up. Always invoke the commit explicitly
before releasing WB device to unstage the resources.

Change-Id: I1d98b489eda3baf12449f84edfb3b3f8b84158d9
2014-08-19 17:10:07 -07:00
Ramkumar Radhakrishnan
36bd527bc8 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
2014-02-18 12:39:21 -08:00
Tatenda Chipeperekwa
8b1920d85b overlay: Add API for WB clients to set secure flag for a session
Add API to set the secure flag on the WB interface, making the WB session
seccure. This is required for use cases such as secure playback when
AD is enabled.

Change-Id: Ifd6cb16f257e8eb27541e524905456c04cf06c3b
2013-11-08 12:42:49 -08:00
Saurabh Shah
7c8d34fbcc overlay: writeback: Do not create writeback instance on dumpsys
Do not create a writeback instance during dumpsys.
Instead use the dumpsys to return empty if no instance exists.
This fixes the issue where
a) Unnecessary instance is created.
b) Dumpsys has garbage, if a valid instance didn't exist

Change-Id: Ic8ea5ddd8d05203234da7c7dfccd2c2b497e62f7
2013-10-31 10:17:36 -07:00
Saurabh Shah
7ef9ec9011 overlay: writeback: Add dumpsys info
Add dumpsys information from writeback data structure.
Remove some unused fields, formatting to save space.

Change-Id: I808ce67aae16e27c3aa6d6db45983929b1386b69
2013-10-29 10:59:32 -07:00
Tatenda Chipeperekwa
1c41212071 liboverlay: explicitly set alignment to 1M for secure buffers
On systems that do not have a Contiguous Memory Allocator (CMA) it is
the responsibily of the client to specify the required address alignment.

Additionally, we centralize size alignment to so that overlay clients
do not need to take of this.

Change-Id: Id6cec19bf59826fca2617c856bb62968790bf71c
2013-10-24 12:20:32 -07:00
Saurabh Shah
c97e7bc08a overlay: writeback: Add API to set output format, get writeback FB fd
Add support for setting writeback output format.
Modify the getter to query the driver for output format
if not already done.
Add API to retrieve writeback fb node's fd.

Change-Id: I4a3681b6501c41a094e4cd840591b707b4d7ed66
2013-09-06 09:55:44 -07:00
Saurabh Shah
885e144dbd overlay: writeback: Align secure allocations to 1M
In the writeback path, when memory is allocated and managed by
writeback, make sure the input size is aligned to 1M if the
request is for a secure allocation

Change-Id: Ia10f1b6811b81f075b221e0fa025447a77a1e02c
2013-09-06 09:55:33 -07:00
Saurabh Shah
a9da08f5af hwc: Add assertive display support.
Add assertive display support to hwc. This feature takes effect when
node /sys/class/graphics/fb*/ad is present. This signifies that that LM0
is being used with fb* for writeback.

When a video playback begins we write "1" to this node to indicate to
post processing that a writeback will happen. Likewise a "0" is written
to this node when playback stops.

The original contents are worked upon and the modified output is fed
via writeback to either rotator or mdp as appropriate.

The feature doesnt trigger when either:
1) Buffer size exceeds 2048
2) External display is connected
3) Multiple yuv streams are present

When this mode is active, MDP comp is applied only to yuv layer.

Change-Id: If5520f9dc849de3189c9f9ed4e9072c8f8f760e1
2013-08-07 17:57:09 -07:00
Saurabh Shah
c8118acd59 overlay: Add writeback support
Add explicit writeback display type, writeback ioctls, memory mgmt,
writeback class, writeback obj manager class to overlay.

Change-Id: I171e60cea5ed8f6649859e3eb189df37b39962f1
2013-07-11 17:57:53 -07:00