diff options
Diffstat (limited to 'arch/powerpc/mm')
-rw-r--r-- | arch/powerpc/mm/dma-noncoherent.c | 5 | ||||
-rw-r--r-- | arch/powerpc/mm/hugetlbpage.c | 4 | ||||
-rw-r--r-- | arch/powerpc/mm/mem.c | 4 |
3 files changed, 6 insertions, 7 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 */ |
diff --git a/arch/powerpc/mm/hugetlbpage.c b/arch/powerpc/mm/hugetlbpage.c index a8b3cc7d90fe..57c7465e656e 100644 --- a/arch/powerpc/mm/hugetlbpage.c +++ b/arch/powerpc/mm/hugetlbpage.c | |||
@@ -910,9 +910,9 @@ void flush_dcache_icache_hugepage(struct page *page) | |||
910 | if (!PageHighMem(page)) { | 910 | if (!PageHighMem(page)) { |
911 | __flush_dcache_icache(page_address(page+i)); | 911 | __flush_dcache_icache(page_address(page+i)); |
912 | } else { | 912 | } else { |
913 | start = kmap_atomic(page+i, KM_PPC_SYNC_ICACHE); | 913 | start = kmap_atomic(page+i); |
914 | __flush_dcache_icache(start); | 914 | __flush_dcache_icache(start); |
915 | kunmap_atomic(start, KM_PPC_SYNC_ICACHE); | 915 | kunmap_atomic(start); |
916 | } | 916 | } |
917 | } | 917 | } |
918 | } | 918 | } |
diff --git a/arch/powerpc/mm/mem.c b/arch/powerpc/mm/mem.c index d974b79a3068..baaafde7d135 100644 --- a/arch/powerpc/mm/mem.c +++ b/arch/powerpc/mm/mem.c | |||
@@ -458,9 +458,9 @@ void flush_dcache_icache_page(struct page *page) | |||
458 | #endif | 458 | #endif |
459 | #ifdef CONFIG_BOOKE | 459 | #ifdef CONFIG_BOOKE |
460 | { | 460 | { |
461 | void *start = kmap_atomic(page, KM_PPC_SYNC_ICACHE); | 461 | void *start = kmap_atomic(page); |
462 | __flush_dcache_icache(start); | 462 | __flush_dcache_icache(start); |
463 | kunmap_atomic(start, KM_PPC_SYNC_ICACHE); | 463 | kunmap_atomic(start); |
464 | } | 464 | } |
465 | #elif defined(CONFIG_8xx) || defined(CONFIG_PPC64) | 465 | #elif defined(CONFIG_8xx) || defined(CONFIG_PPC64) |
466 | /* On 8xx there is no need to kmap since highmem is not supported */ | 466 | /* On 8xx there is no need to kmap since highmem is not supported */ |