sh: Fix up and optimize the kmap_coherent() interface.
authorPaul Mundt <lethal@linux-sh.org>
Thu, 3 Sep 2009 08:21:10 +0000 (17:21 +0900)
committerPaul Mundt <lethal@linux-sh.org>
Thu, 3 Sep 2009 08:21:10 +0000 (17:21 +0900)
commit0906a3ad33a254094fb74828e3ddb9af8771a6da
tree33acc1be2e213ae2f13439d3d5f8e9dd8a4f2d46
parentd1af119a69fc9a625bd57a66d9c9fa88795b082c
sh: Fix up and optimize the kmap_coherent() interface.

This fixes up the kmap_coherent/kunmap_coherent() interface for recent
changes both in the page fault path and the shared cache flushers, as
well as adding in some optimizations.

One of the key things to note here is that the TLB flush itself is
deferred until the unmap, and the call in to update_mmu_cache() itself
goes away, relying on the regular page fault path to handle the lazy
dcache writeback if necessary.

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
arch/sh/include/asm/cacheflush.h
arch/sh/include/asm/pgtable_32.h
arch/sh/include/asm/pgtable_64.h
arch/sh/mm/cache.c
arch/sh/mm/fault_32.c
arch/sh/mm/init.c
arch/sh/mm/kmap.c
arch/sh/mm/nommu.c