[lkml]   [2011]   [Dec]   [23]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    Patch in this message
    Subject[PATCH 01/14] common: dma-mapping: introduce alloc_attrs and free_attrs methods
    Introduce new generic alloc and free methods with attributes argument.

    Existing alloc_coherent and free_coherent can be implemented on top of the
    new calls with NULL attributes argument. Later also dma_alloc_non_coherent
    can be implemented using DMA_ATTR_NONCOHERENT attribute as well as
    dma_alloc_writecombine with separate DMA_ATTR_WRITECOMBINE attribute.

    This way the drivers will get more generic, platform independent way of
    allocating dma buffers with specific parameters.

    Signed-off-by: Marek Szyprowski <>
    Signed-off-by: Kyungmin Park <>
    include/linux/dma-mapping.h | 6 ++++++
    1 files changed, 6 insertions(+), 0 deletions(-)

    diff --git a/include/linux/dma-mapping.h b/include/linux/dma-mapping.h
    index e13117c..8cc7f95 100644
    --- a/include/linux/dma-mapping.h
    +++ b/include/linux/dma-mapping.h
    @@ -13,6 +13,12 @@ struct dma_map_ops {
    dma_addr_t *dma_handle, gfp_t gfp);
    void (*free_coherent)(struct device *dev, size_t size,
    void *vaddr, dma_addr_t dma_handle);
    + void* (*alloc)(struct device *dev, size_t size,
    + dma_addr_t *dma_handle, gfp_t gfp,
    + struct dma_attrs *attrs);
    + void (*free)(struct device *dev, size_t size,
    + void *vaddr, dma_addr_t dma_handle,
    + struct dma_attrs *attrs);
    dma_addr_t (*map_page)(struct device *dev, struct page *page,
    unsigned long offset, size_t size,
    enum dma_data_direction dir,

     \ /
      Last update: 2011-12-23 13:31    [W:0.020 / U:36.292 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site