[Linaro-mm-sig] [PATCH v7 0/3] Add CMA heap for ION memory manager

benjamin.gaignard at linaro.org benjamin.gaignard at linaro.org
Thu Dec 6 12:50:45 UTC 2012


From: Benjamin Gaignard <benjamin.gaignard at linaro.org>

The goal of those patches is to allow ION clients (drivers or userland applications) 
to use Contiguous Memory Allocator (CMA).

To get more info about CMA: 
http://lists.linaro.org/pipermail/linaro-mm-sig/2012-February/001328.html

patches version 7:
 - rebased on Android kernel
 - fix ion Makefile
 - add ion_cma_map_kernel function
 - remove CONFIG_CMA compilation flags from ion_heap.c

patches version 6:
 - add private field in ion_platform_heap to pass the device
   linked with CMA.
 - rework CMA heap to use private field.
 - prepare CMA heap for incoming dma_common_get_sgtable function
   http://lists.linaro.org/pipermail/linaro-mm-sig/2012-June/002109.html
 - simplify ion-ux500 driver.

patches version 5:
 - port patches on android kernel 3.4 where ION use dmabuf
 - add ion_cma_heap_map_dma and ion_cma_heap_unmap_dma functions

patches version 4:
 - add ION_HEAP_TYPE_DMA heap type in ion_heap_type enum.
 - CMA heap is now a "native" ION heap.
 - add ion_heap_create_full function to keep backward compatibilty.
 - clean up included files in CMA heap
 - ux500-ion is using ion_heap_create_full instead of ion_heap_create

patches version 3:
 - add a private field in ion_heap structure instead of expose ion_device
 structure to all heaps
 - ion_cma_heap is no more a platform driver
 - ion_cma_heap use ion_heap private field to store the device pointer and
   make the link with reserved CMA regions
 - provide ux500-ion driver and configuration file for snowball board to give
   an example of how use CMA heaps

patches version 2:
 - fix comments done by Andy Green


Benjamin Gaignard (3):
  gpu: ion: fix ion_platform_data definition
  gpu: ion: add private field in ion_heap and ion_platform_heap
    structure
  gpu: ion: add CMA heap

 drivers/gpu/ion/Kconfig        |    5 ++
 drivers/gpu/ion/Makefile       |    1 +
 drivers/gpu/ion/ion_cma_heap.c |  187 ++++++++++++++++++++++++++++++++++++++++
 drivers/gpu/ion/ion_heap.c     |    7 ++
 drivers/gpu/ion/ion_priv.h     |   16 ++++
 include/linux/ion.h            |    7 +-
 6 files changed, 222 insertions(+), 1 deletion(-)
 create mode 100644 drivers/gpu/ion/ion_cma_heap.c

-- 
1.7.10




More information about the Linaro-mm-sig mailing list