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;
     }