lkml.org 
[lkml]   [2007]   [May]   [10]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 6/13] i386 dma_map_sg: convert to using sg helpers
    Date
    The dma mapping helpers need to be converted to using
    sg helpers as well, so they will work with a chained
    sglist setup.

    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
    ---
    include/asm-i386/dma-mapping.h | 13 +++++++------
    1 files changed, 7 insertions(+), 6 deletions(-)

    diff --git a/include/asm-i386/dma-mapping.h b/include/asm-i386/dma-mapping.h
    index 183eebe..a956ec1 100644
    --- a/include/asm-i386/dma-mapping.h
    +++ b/include/asm-i386/dma-mapping.h
    @@ -2,10 +2,10 @@
    #define _ASM_I386_DMA_MAPPING_H

    #include <linux/mm.h>
    +#include <linux/scatterlist.h>

    #include <asm/cache.h>
    #include <asm/io.h>
    -#include <asm/scatterlist.h>
    #include <asm/bug.h>

    #define dma_alloc_noncoherent(d, s, h, f) dma_alloc_coherent(d, s, h, f)
    @@ -35,18 +35,19 @@ dma_unmap_single(struct device *dev, dma_addr_t dma_addr, size_t size,
    }

    static inline int
    -dma_map_sg(struct device *dev, struct scatterlist *sg, int nents,
    +dma_map_sg(struct device *dev, struct scatterlist *sglist, int nents,
    enum dma_data_direction direction)
    {
    + struct scatterlist *sg;
    int i;

    BUG_ON(!valid_dma_direction(direction));
    - WARN_ON(nents == 0 || sg[0].length == 0);
    + WARN_ON(nents == 0 || sglist[0].length == 0);

    - for (i = 0; i < nents; i++ ) {
    - BUG_ON(!sg[i].page);
    + for_each_sg(sglist, sg, nents, i) {
    + BUG_ON(!sg->page);

    - sg[i].dma_address = page_to_phys(sg[i].page) + sg[i].offset;
    + sg->dma_address = page_to_phys(sg->page) + sg->offset;
    }

    flush_write_buffers();
    --
    1.5.2.rc1
    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2007-05-10 12:27    [W:4.160 / U:0.232 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site