HWC2: Add SKIP_CLIENT_COLOR_TRANSFORM capability

am: e87229e267

Change-Id: I461573fd9bacae2c8cd67ddbba2dc208849af81a
This commit is contained in:
Dan Stoza 2016-07-14 21:50:24 +00:00 committed by android-build-merger
commit 9ca84d68b1

View file

@ -86,6 +86,12 @@ typedef enum {
* (such as position, size, etc.) need to be performed through the
* validate/present cycle. */
HWC2_CAPABILITY_SIDEBAND_STREAM = 1,
/* Specifies that the device will apply a color transform even when either
* the client or the device has chosen that all layers should be composed by
* the client. This will prevent the client from applying the color
* transform during its composition step. */
HWC2_CAPABILITY_SKIP_CLIENT_COLOR_TRANSFORM = 2,
} hwc2_capability_t;
/* Possible composition types for a given layer */
@ -325,6 +331,8 @@ static inline const char* getCapabilityName(hwc2_capability_t capability) {
switch (capability) {
case HWC2_CAPABILITY_INVALID: return "Invalid";
case HWC2_CAPABILITY_SIDEBAND_STREAM: return "SidebandStream";
case HWC2_CAPABILITY_SKIP_CLIENT_COLOR_TRANSFORM:
return "SkipClientColorTransform";
default: return "Unknown";
}
}
@ -540,6 +548,7 @@ TO_STRING(hwc2_callback_descriptor_t, Callback, getCallbackDescriptorName)
enum class Capability : int32_t {
Invalid = HWC2_CAPABILITY_INVALID,
SidebandStream = HWC2_CAPABILITY_SIDEBAND_STREAM,
SkipClientColorTransform = HWC2_CAPABILITY_SKIP_CLIENT_COLOR_TRANSFORM,
};
TO_STRING(hwc2_capability_t, Capability, getCapabilityName)
@ -1468,6 +1477,10 @@ typedef int32_t /*hwc2_error_t*/ (*HWC2_PFN_SET_COLOR_MODE)(
* the desired color transform, it should force all layers to client composition
* during validateDisplay.
*
* If HWC2_CAPABILITY_SKIP_CLIENT_COLOR_TRANSFORM is present, then the client
* will never apply the color transform during client composition, even if all
* layers are being composed by the client.
*
* The matrix provided is an affine color transformation of the following form:
*
* |r.r r.g r.b 0|