libgralloc: Use ION_IOC_CUSTOM instead of MSM-specific ioctls

Use ION_IOC_CUSTOM instead of ION_IOC_CLEAN_INV_CACHES.
ION_IOC_CLEAN_INV_CACHES is now specified as a command argument of the
ION_IOC_CUSTOM ioctl.

Change-Id: I5b59ba1032364dfb884a90abf2ee2b35f3c09dd6

libgralloc: Change ion_allocation_data fields.

Change ioc_allocation_data structure fields as per changes in kernel.
The 'heap_mask' feild will hold what the older flags field held.
The 'flags' field will hold the caching information.

Change-Id: Id3b2e8a4d1ba370e0f982860fdb32b56227e2e43

gralloc: set ION_SECURE to flags instead of heap_mask during
ion alloc.

  This is required for Secure Playback usecase.

Change-Id: I590bf126a35465286a9487490a114af82732e262
gralloc: Support for old and new ION API

 * Enable old API with BOARD_HAVE_OLD_ION_API.

Change-Id: I037ebfeb53e9ed2eddee4d0c709559a07baf3694