hwc: Add support for external-only layers

Add support for different types of external-only layers
EXTERNAL_ONLY: General purpose
EXTERNAL_BLOCK: Blocks the display of other ext-only layers
EXTERNAL_CC: Used for closed captions with videos.

Change-Id: I9cc7b9a1dbf1085194725474d6a4d1094e27a0c8
Acked-by: Saurabh Shah <saurshah@codeaurora.org>
diff --git a/libgralloc/gpu.cpp b/libgralloc/gpu.cpp
index b72320b..2db6274 100644
--- a/libgralloc/gpu.cpp
+++ b/libgralloc/gpu.cpp
@@ -142,11 +142,13 @@
         flags |= private_handle_t::PRIV_FLAGS_UNSYNCHRONIZED;
     }
 
-    if (usage & GRALLOC_USAGE_EXTERNAL_ONLY) {
+    if (usage & GRALLOC_USAGE_PRIVATE_EXTERNAL_ONLY) {
         flags |= private_handle_t::PRIV_FLAGS_EXTERNAL_ONLY;
         //The EXTERNAL_BLOCK flag is always an add-on
-        if (usage & GRALLOC_USAGE_EXTERNAL_BLOCK) {
+        if (usage & GRALLOC_USAGE_PRIVATE_EXTERNAL_BLOCK) {
             flags |= private_handle_t::PRIV_FLAGS_EXTERNAL_BLOCK;
+        }if (usage & GRALLOC_USAGE_PRIVATE_EXTERNAL_CC) {
+            flags |= private_handle_t::PRIV_FLAGS_EXTERNAL_CC;
         }
     }