hwc: Add property to differentiate the input image format
Set different vaules to property hw.cabl.yuv based on the input
image format, so that mm-pp-daemon can adjust CABL power
saving levels accordingly.
CRs-fixed: 464799
Change-Id: I212035d387a975e61a08749ba118a9da30e18d81
diff --git a/libhwcomposer/hwc_utils.cpp b/libhwcomposer/hwc_utils.cpp
index ca6136a..a310679 100644
--- a/libhwcomposer/hwc_utils.cpp
+++ b/libhwcomposer/hwc_utils.cpp
@@ -325,6 +325,7 @@
ctx->listStats[dpy].needsAlphaScale = false;
ctx->listStats[dpy].preMultipliedAlpha = false;
ctx->listStats[dpy].yuvCount = 0;
+ char property[PROPERTY_VALUE_MAX];
for (size_t i = 0; i < list->numHwLayers; i++) {
hwc_layer_1_t const* layer = &list->hwLayers[i];
@@ -356,6 +357,19 @@
if(!ctx->listStats[dpy].needsAlphaScale)
ctx->listStats[dpy].needsAlphaScale = isAlphaScaled(layer);
}
+ if(ctx->listStats[dpy].yuvCount > 0) {
+ if (property_get("hw.cabl.yuv", property, NULL) > 0) {
+ if (atoi(property) != 1) {
+ property_set("hw.cabl.yuv", "1");
+ }
+ }
+ } else {
+ if (property_get("hw.cabl.yuv", property, NULL) > 0) {
+ if (atoi(property) != 0) {
+ property_set("hw.cabl.yuv", "0");
+ }
+ }
+ }
}