lkml.org 
[lkml]   [2008]   [Mar]   [25]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 12/20] x86: move alloc and free coherent to common header
    Date
    they are the same between architectures (except for the fact
    that x86_64 has duplicate code)

    move them to dma-mapping.h

    Signed-off-by: Glauber Costa <gcosta@redhat.com>
    ---
    include/asm-x86/dma-mapping.h | 10 ++++++++++
    include/asm-x86/dma-mapping_32.h | 9 ---------
    include/asm-x86/dma-mapping_64.h | 11 -----------
    3 files changed, 10 insertions(+), 20 deletions(-)

    diff --git a/include/asm-x86/dma-mapping.h b/include/asm-x86/dma-mapping.h
    index 53a404b..3ea3802 100644
    --- a/include/asm-x86/dma-mapping.h
    +++ b/include/asm-x86/dma-mapping.h
    @@ -52,6 +52,16 @@ struct dma_mapping_ops {

    extern const struct dma_mapping_ops *dma_ops;

    +#define dma_alloc_noncoherent(d, s, h, f) dma_alloc_coherent(d, s, h, f)
    +#define dma_free_noncoherent(d, s, v, h) dma_free_coherent(d, s, v, h)
    +
    +void *dma_alloc_coherent(struct device *dev, size_t size,
    + dma_addr_t *dma_handle, gfp_t flag);
    +
    +void dma_free_coherent(struct device *dev, size_t size,
    + void *vaddr, dma_addr_t dma_handle);
    +
    +
    #ifdef CONFIG_X86_32
    # include "dma-mapping_32.h"
    #else
    diff --git a/include/asm-x86/dma-mapping_32.h b/include/asm-x86/dma-mapping_32.h
    index eff42f4..d8f6420 100644
    --- a/include/asm-x86/dma-mapping_32.h
    +++ b/include/asm-x86/dma-mapping_32.h
    @@ -8,15 +8,6 @@
    #include <asm/io.h>
    #include <asm/bug.h>

    -#define dma_alloc_noncoherent(d, s, h, f) dma_alloc_coherent(d, s, h, f)
    -#define dma_free_noncoherent(d, s, v, h) dma_free_coherent(d, s, v, h)
    -
    -void *dma_alloc_coherent(struct device *dev, size_t size,
    - dma_addr_t *dma_handle, gfp_t flag);
    -
    -void dma_free_coherent(struct device *dev, size_t size,
    - void *vaddr, dma_addr_t dma_handle);
    -
    static inline dma_addr_t
    dma_map_page(struct device *dev, struct page *page, unsigned long offset,
    size_t size, enum dma_data_direction direction)
    diff --git a/include/asm-x86/dma-mapping_64.h b/include/asm-x86/dma-mapping_64.h
    index 707dbbe..ce881d9 100644
    --- a/include/asm-x86/dma-mapping_64.h
    +++ b/include/asm-x86/dma-mapping_64.h
    @@ -12,17 +12,6 @@ static inline int dma_mapping_error(dma_addr_t dma_addr)
    return (dma_addr == bad_dma_address);
    }

    -#define dma_alloc_noncoherent(d, s, h, f) dma_alloc_coherent(d, s, h, f)
    -#define dma_free_noncoherent(d, s, v, h) dma_free_coherent(d, s, v, h)
    -
    -#define dma_alloc_noncoherent(d, s, h, f) dma_alloc_coherent(d, s, h, f)
    -#define dma_free_noncoherent(d, s, v, h) dma_free_coherent(d, s, v, h)
    -
    -extern void *dma_alloc_coherent(struct device *dev, size_t size,
    - dma_addr_t *dma_handle, gfp_t gfp);
    -extern void dma_free_coherent(struct device *dev, size_t size, void *vaddr,
    - dma_addr_t dma_handle);
    -
    #define dma_map_page(dev,page,offset,size,dir) \
    dma_map_single((dev), page_address(page)+(offset), (size), (dir))

    --
    1.5.0.6


    \
     
     \ /
      Last update: 2008-03-25 22:45    [W:0.031 / U:63.740 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site