Skip to content

Commit

Permalink
x86: move dma_map_page and dma_unmap_page to common header
Browse files Browse the repository at this point in the history
They are similar enough to do this move.
the macro version is ugly, and we use inline functions instead.

Signed-off-by: Glauber Costa <gcosta@redhat.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
  • Loading branch information
Glauber Costa authored and Ingo Molnar committed Apr 19, 2008
1 parent 8d396de commit 4d92fbf
Show file tree
Hide file tree
Showing 3 changed files with 14 additions and 19 deletions.
14 changes: 14 additions & 0 deletions include/asm-x86/dma-mapping.h
Original file line number Diff line number Diff line change
Expand Up @@ -169,4 +169,18 @@ dma_sync_sg_for_device(struct device *hwdev, struct scatterlist *sg,

flush_write_buffers();
}

static inline dma_addr_t dma_map_page(struct device *dev, struct page *page,
size_t offset, size_t size,
int direction)
{
return dma_map_single(dev, page_address(page)+offset, size, direction);
}

static inline void dma_unmap_page(struct device *dev, dma_addr_t addr,
size_t size, int direction)
{
dma_unmap_single(dev, addr, size, direction);
}

#endif
15 changes: 0 additions & 15 deletions include/asm-x86/dma-mapping_32.h
Original file line number Diff line number Diff line change
Expand Up @@ -8,21 +8,6 @@
#include <asm/io.h>
#include <asm/bug.h>

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)
{
BUG_ON(!valid_dma_direction(direction));
return page_to_phys(page) + offset;
}

static inline void
dma_unmap_page(struct device *dev, dma_addr_t dma_address, size_t size,
enum dma_data_direction direction)
{
BUG_ON(!valid_dma_direction(direction));
}

static inline int
dma_mapping_error(dma_addr_t dma_addr)
{
Expand Down
4 changes: 0 additions & 4 deletions include/asm-x86/dma-mapping_64.h
Original file line number Diff line number Diff line change
Expand Up @@ -12,10 +12,6 @@ static inline int dma_mapping_error(dma_addr_t dma_addr)
return (dma_addr == bad_dma_address);
}

#define dma_map_page(dev,page,offset,size,dir) \
dma_map_single((dev), page_address(page)+(offset), (size), (dir))

#define dma_unmap_page dma_unmap_single
extern int dma_supported(struct device *hwdev, u64 mask);

/* same for gart, swiotlb, and nommu */
Expand Down

0 comments on commit 4d92fbf

Please sign in to comment.