From e0f6d05cf498ee24caf7d168a5be2063ca9fc663 Mon Sep 17 00:00:00 2001 From: Russell King Date: Wed, 4 Jan 2006 14:41:29 +0000 Subject: [PATCH] --- yaml --- r: 16742 b: refs/heads/master c: 333c9624b728a9e83b741ea75836aa114ec35272 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/arch/arm/kernel/dma.c | 8 ++++---- trunk/include/asm-arm/dma.h | 4 +++- 3 files changed, 8 insertions(+), 6 deletions(-) diff --git a/[refs] b/[refs] index 5e847cf64a98..160a75239aa6 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 109a9378807cb9093a88fbf9707420de97601e14 +refs/heads/master: 333c9624b728a9e83b741ea75836aa114ec35272 diff --git a/trunk/arch/arm/kernel/dma.c b/trunk/arch/arm/kernel/dma.c index 8d6381cd8915..3aedada71046 100644 --- a/trunk/arch/arm/kernel/dma.c +++ b/trunk/arch/arm/kernel/dma.c @@ -131,7 +131,7 @@ void set_dma_sg (dmach_t channel, struct scatterlist *sg, int nr_sg) * * Copy address to the structure, and set the invalid bit */ -void set_dma_addr (dmach_t channel, unsigned long physaddr) +void __set_dma_addr (dmach_t channel, void *addr) { dma_t *dma = dma_chan + channel; @@ -141,7 +141,7 @@ void set_dma_addr (dmach_t channel, unsigned long physaddr) dma->sg = &dma->buf; dma->sgcount = 1; - dma->buf.__address = bus_to_virt(physaddr); + dma->buf.__address = addr; dma->using_sg = 0; dma->invalid = 1; } @@ -278,7 +278,7 @@ GLOBAL_ALIAS(get_dma_list, get_dma_residue); GLOBAL_ALIAS(set_dma_mode, get_dma_residue); GLOBAL_ALIAS(set_dma_page, get_dma_residue); GLOBAL_ALIAS(set_dma_count, get_dma_residue); -GLOBAL_ALIAS(set_dma_addr, get_dma_residue); +GLOBAL_ALIAS(__set_dma_addr, get_dma_residue); GLOBAL_ALIAS(set_dma_sg, get_dma_residue); GLOBAL_ALIAS(set_dma_speed, get_dma_residue); GLOBAL_ALIAS(init_dma, get_dma_residue); @@ -289,7 +289,7 @@ EXPORT_SYMBOL(request_dma); EXPORT_SYMBOL(free_dma); EXPORT_SYMBOL(enable_dma); EXPORT_SYMBOL(disable_dma); -EXPORT_SYMBOL(set_dma_addr); +EXPORT_SYMBOL(__set_dma_addr); EXPORT_SYMBOL(set_dma_count); EXPORT_SYMBOL(set_dma_mode); EXPORT_SYMBOL(set_dma_page); diff --git a/trunk/include/asm-arm/dma.h b/trunk/include/asm-arm/dma.h index ef41df43a584..1c7087f9364c 100644 --- a/trunk/include/asm-arm/dma.h +++ b/trunk/include/asm-arm/dma.h @@ -91,7 +91,9 @@ extern void set_dma_sg(dmach_t channel, struct scatterlist *sg, int nr_sg); * especially since some DMA architectures don't update the * DMA address immediately, but defer it to the enable_dma(). */ -extern void set_dma_addr(dmach_t channel, unsigned long physaddr); +extern void __set_dma_addr(dmach_t channel, void *addr); +#define set_dma_addr(channel, addr) \ + __set_dma_addr(channel, bus_to_virt(addr)) /* Set the DMA byte count for this channel *