mm-video: port heap mask change to ion.

Heap mask field passes as argument at allocation time
to specify ion heap.

Change-Id: Ib46d28aa1cf76efbfdadc8a624bf2d1ea483fe09
diff --git a/mm-video/vidc/vdec/src/omx_vdec_msm8974.cpp b/mm-video/vidc/vdec/src/omx_vdec_msm8974.cpp
index 65a3934..bf11a90 100644
--- a/mm-video/vidc/vdec/src/omx_vdec_msm8974.cpp
+++ b/mm-video/vidc/vdec/src/omx_vdec_msm8974.cpp
@@ -7360,17 +7360,17 @@
      DEBUG_PRINT_ERROR("Invalid arguments to alloc_map_ion_memory\n");
      return -EINVAL;
   }
-  if(!secure_mode && flag == CACHED)
-  {
-     ion_dev_flag = O_RDONLY;
-  } else {
-     ion_dev_flag = (O_RDONLY | O_DSYNC);
-  }
+  ion_dev_flag = O_RDONLY;
   fd = open (MEM_DEVICE, ion_dev_flag);
   if (fd < 0) {
     DEBUG_PRINT_ERROR("opening ion device failed with fd = %d\n", fd);
     return fd;
   }
+  alloc_data->flags = 0;
+  if(!secure_mode && (flag & ION_FLAG_CACHED))
+  {
+    alloc_data->flags |= ION_FLAG_CACHED;
+  }
   alloc_data->len = buffer_size;
   alloc_data->align = clip2(alignment);
   if (alloc_data->align < 4096)
@@ -7378,9 +7378,9 @@
     alloc_data->align = 4096;
   }
   if(secure_mode) {
-    alloc_data->flags = (ION_HEAP(MEM_HEAP_ID) | ION_SECURE);
+    alloc_data->heap_mask = (ION_HEAP(MEM_HEAP_ID) | ION_SECURE);
   } else {
-    alloc_data->flags = ION_HEAP(MEM_HEAP_ID);
+    alloc_data->heap_mask = ION_HEAP(MEM_HEAP_ID);
   }
   rc = ioctl(fd,ION_IOC_ALLOC,alloc_data);
   if (rc || !alloc_data->handle) {