aboutsummaryrefslogtreecommitdiffstats
path: root/arch/mips/mm
diff options
context:
space:
mode:
authorThomas Bogendoerfer <tsbogend@alpha.franken.de>2007-05-18 08:32:36 -0400
committerRalf Baechle <ralf@linux-mips.org>2007-06-06 14:34:32 -0400
commitfbd5604d56c4543457aeae6dda69c9b8a1405474 (patch)
tree5cedd1bc176686fa8176d5159c9db4044bd26a11 /arch/mips/mm
parent1fe5f2c4503cf45806a47c608706fc7892649d4b (diff)
[MIPS] Make dma_map_sg handle sg elements which are longer than one page
Signed-off-by: Thomas Bogendoerfer <tsbogend@alpha.franken.de> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Diffstat (limited to 'arch/mips/mm')
-rw-r--r--arch/mips/mm/dma-default.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/arch/mips/mm/dma-default.c b/arch/mips/mm/dma-default.c
index f0eb29917d9a..76903c727647 100644
--- a/arch/mips/mm/dma-default.c
+++ b/arch/mips/mm/dma-default.c
@@ -168,8 +168,9 @@ int dma_map_sg(struct device *dev, struct scatterlist *sg, int nents,
168 addr = (unsigned long) page_address(sg->page); 168 addr = (unsigned long) page_address(sg->page);
169 if (!plat_device_is_coherent(dev) && addr) 169 if (!plat_device_is_coherent(dev) && addr)
170 __dma_sync(addr + sg->offset, sg->length, direction); 170 __dma_sync(addr + sg->offset, sg->length, direction);
171 sg->dma_address = plat_map_dma_mem_page(dev, sg->page) + 171 sg->dma_address = plat_map_dma_mem(dev,
172 sg->offset; 172 (void *)(addr + sg->offset),
173 sg->length);
173 } 174 }
174 175
175 return nents; 176 return nents;