diff --git a/msm8084/libgralloc/alloc_controller.cpp b/msm8084/libgralloc/alloc_controller.cpp
index ef7e358..c0069da 100644
--- a/msm8084/libgralloc/alloc_controller.cpp
+++ b/msm8084/libgralloc/alloc_controller.cpp
@@ -78,8 +78,6 @@
 
 static bool useUncached(int usage)
 {
-    if (usage & GRALLOC_USAGE_PROTECTED)
-        return true;
     if (usage & GRALLOC_USAGE_PRIVATE_UNCACHED)
         return true;
     if(((usage & GRALLOC_USAGE_SW_WRITE_MASK) == GRALLOC_USAGE_SW_WRITE_RARELY)
@@ -300,8 +298,14 @@
         ionFlags |= ION_HEAP(ION_IOMMU_HEAP_ID);
 
     if(usage & GRALLOC_USAGE_PROTECTED) {
-        ionFlags |= ION_HEAP(ION_CP_MM_HEAP_ID);
-        ionFlags |= ION_SECURE;
+        if (usage & GRALLOC_USAGE_PRIVATE_MM_HEAP) {
+            ionFlags |= ION_HEAP(ION_CP_MM_HEAP_ID);
+            ionFlags |= ION_SECURE;
+        } else {
+            // for targets/OEMs which do not need HW level protection
+            // do not set ion secure flag & MM heap. Fallback to IOMMU heap.
+            ionFlags |= ION_HEAP(ION_IOMMU_HEAP_ID);
+        }
     } else if(usage & GRALLOC_USAGE_PRIVATE_MM_HEAP) {
         //MM Heap is exclusively a secure heap.
         //If it is used for non secure cases, fallback to IOMMU heap
diff --git a/msm8084/libgralloc/gpu.cpp b/msm8084/libgralloc/gpu.cpp
index 97f8b72..40fa1ee 100644
--- a/msm8084/libgralloc/gpu.cpp
+++ b/msm8084/libgralloc/gpu.cpp
@@ -70,7 +70,8 @@
 
     /* force 1MB alignment selectively for secure buffers, MDP5 onwards */
 #ifdef MDSS_TARGET
-    if (usage & GRALLOC_USAGE_PROTECTED) {
+    if ((usage & GRALLOC_USAGE_PROTECTED) &&
+        (usage & GRALLOC_USAGE_PRIVATE_MM_HEAP)) {
         data.align = ALIGN((int) data.align, SZ_2M);
         size = ALIGN(size, data.align);
     }
