sdm: Add support for IGC.
- Add support for sRGB IGC.
- Program IGC PP parameters for sRGB contents.
Change-Id: I41b4b0bd8ef60fc7f869c742d084f4c3a3db6635
diff --git a/libgralloc/mapper.cpp b/libgralloc/mapper.cpp
index a5d3e69..8d8532b 100644
--- a/libgralloc/mapper.cpp
+++ b/libgralloc/mapper.cpp
@@ -453,6 +453,33 @@
}
} break;
+ case GRALLOC_MODULE_PERFORM_GET_IGC:
+ {
+ private_handle_t* hnd = va_arg(args, private_handle_t*);
+ uint32_t *igc = va_arg(args, uint32_t *);
+ if (!private_handle_t::validate(hnd) && igc) {
+ MetaData_t *metadata = (MetaData_t *)hnd->base_metadata;
+ if (metadata && (metadata->operation & SET_IGC)) {
+ *igc = metadata->igc;
+ res = 0;
+ }
+ }
+ } break;
+
+ case GRALLOC_MODULE_PERFORM_SET_IGC:
+ {
+ private_handle_t* hnd = va_arg(args, private_handle_t*);
+ uint32_t igc = va_arg(args, uint32_t);
+ if (!private_handle_t::validate(hnd)) {
+ MetaData_t *metadata = (MetaData_t *)hnd->base_metadata;
+ if (metadata) {
+ metadata->igc = (IGC_t) igc;
+ metadata->operation |= SET_IGC;
+ res = 0;
+ }
+ }
+ } break;
+
default:
break;
}