diff options
Diffstat (limited to 'arch/powerpc/mm/dma-noncoherent.c')
-rw-r--r-- | arch/powerpc/mm/dma-noncoherent.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/arch/powerpc/mm/dma-noncoherent.c b/arch/powerpc/mm/dma-noncoherent.c index 329be36c0a8d..6747eece84af 100644 --- a/arch/powerpc/mm/dma-noncoherent.c +++ b/arch/powerpc/mm/dma-noncoherent.c | |||
@@ -365,12 +365,11 @@ static inline void __dma_sync_page_highmem(struct page *page, | |||
365 | local_irq_save(flags); | 365 | local_irq_save(flags); |
366 | 366 | ||
367 | do { | 367 | do { |
368 | start = (unsigned long)kmap_atomic(page + seg_nr, | 368 | start = (unsigned long)kmap_atomic(page + seg_nr) + seg_offset; |
369 | KM_PPC_SYNC_PAGE) + seg_offset; | ||
370 | 369 | ||
371 | /* Sync this buffer segment */ | 370 | /* Sync this buffer segment */ |
372 | __dma_sync((void *)start, seg_size, direction); | 371 | __dma_sync((void *)start, seg_size, direction); |
373 | kunmap_atomic((void *)start, KM_PPC_SYNC_PAGE); | 372 | kunmap_atomic((void *)start); |
374 | seg_nr++; | 373 | seg_nr++; |
375 | 374 | ||
376 | /* Calculate next buffer segment size */ | 375 | /* Calculate next buffer segment size */ |