sdm: Add support for IGC.

- Add support for sRGB IGC.
- Program IGC PP parameters for sRGB contents.

Change-Id: I41b4b0bd8ef60fc7f869c742d084f4c3a3db6635
This commit is contained in:
Dileep Marchya
2015-09-25 19:11:57 -07:00
committed by Gerrit - the friendly Code Review server
parent 2bc7d99f5f
commit 1a7e1f193e
10 changed files with 132 additions and 23 deletions

View File

@@ -453,6 +453,33 @@ int gralloc_perform(struct gralloc_module_t const* module,
}
} 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;
}