diff options
author | Ralf Baechle <ralf@linux-mips.org> | 2007-03-23 21:36:37 +0000 |
---|---|---|
committer | Ralf Baechle <ralf@linux-mips.org> | 2007-03-24 17:01:49 +0000 |
commit | 7575a49f209190ca640e0da792565a1bcb641f3e (patch) | |
tree | db47f9fe06fefd279841941c5ff6f8d63dc54c45 /include/asm-mips | |
parent | 80e89593e5a574a572f4e45e157733b5ea5ddfdb (diff) | |
download | blackbird-op-linux-7575a49f209190ca640e0da792565a1bcb641f3e.tar.gz blackbird-op-linux-7575a49f209190ca640e0da792565a1bcb641f3e.zip |
[MIPS] Implement flush_anon_page().
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Diffstat (limited to 'include/asm-mips')
-rw-r--r-- | include/asm-mips/cacheflush.h | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/include/asm-mips/cacheflush.h b/include/asm-mips/cacheflush.h index 0ddada3bb0b6..28d907d4347a 100644 --- a/include/asm-mips/cacheflush.h +++ b/include/asm-mips/cacheflush.h @@ -48,6 +48,15 @@ static inline void flush_dcache_page(struct page *page) #define flush_dcache_mmap_lock(mapping) do { } while (0) #define flush_dcache_mmap_unlock(mapping) do { } while (0) +#define ARCH_HAS_FLUSH_ANON_PAGE +extern void __flush_anon_page(struct page *, unsigned long); +static inline void flush_anon_page(struct vm_area_struct *vma, + struct page *page, unsigned long vmaddr) +{ + if (cpu_has_dc_aliases && PageAnon(page)) + __flush_anon_page(page, vmaddr); +} + static inline void flush_icache_page(struct vm_area_struct *vma, struct page *page) { @@ -86,4 +95,7 @@ extern void (*flush_data_cache_page)(unsigned long addr); /* Run kernel code uncached, useful for cache probing functions. */ unsigned long __init run_uncached(void *func); +extern void *kmap_coherent(struct page *page, unsigned long addr); +extern void kunmap_coherent(struct page *page); + #endif /* _ASM_CACHEFLUSH_H */ |