blob: 5a11f0b7e66a9b5b4fbe53d22950b096003ef2d0 [file] [log] [blame]
Paul Mundta23ba432007-11-28 20:19:38 +09001#ifndef __ASM_SH_CPU_SH5_CACHEFLUSH_H
2#define __ASM_SH_CPU_SH5_CACHEFLUSH_H
Linus Torvalds1da177e2005-04-16 15:20:36 -07003
4#ifndef __ASSEMBLY__
5
Linus Torvalds1da177e2005-04-16 15:20:36 -07006struct vm_area_struct;
7struct page;
8struct mm_struct;
9
10extern void flush_cache_all(void);
11extern void flush_cache_mm(struct mm_struct *mm);
Paul Mundtf1f89262008-02-12 17:00:39 +090012extern void flush_cache_sigtramp(unsigned long vaddr);
Linus Torvalds1da177e2005-04-16 15:20:36 -070013extern void flush_cache_range(struct vm_area_struct *vma, unsigned long start,
14 unsigned long end);
15extern void flush_cache_page(struct vm_area_struct *vma, unsigned long addr, unsigned long pfn);
16extern void flush_dcache_page(struct page *pg);
17extern void flush_icache_range(unsigned long start, unsigned long end);
18extern void flush_icache_user_range(struct vm_area_struct *vma,
19 struct page *page, unsigned long addr,
20 int len);
21
Ralf Baechleec8c0442006-12-12 17:14:57 +000022#define flush_cache_dup_mm(mm) flush_cache_mm(mm)
23
Linus Torvalds1da177e2005-04-16 15:20:36 -070024#define flush_dcache_mmap_lock(mapping) do { } while (0)
25#define flush_dcache_mmap_unlock(mapping) do { } while (0)
26
Linus Torvalds1da177e2005-04-16 15:20:36 -070027#define flush_icache_page(vma, page) do { } while (0)
Paul Mundt38350e02008-02-13 20:14:10 +090028void p3_cache_init(void);
Linus Torvalds1da177e2005-04-16 15:20:36 -070029
Linus Torvalds1da177e2005-04-16 15:20:36 -070030#endif /* __ASSEMBLY__ */
31
Paul Mundta23ba432007-11-28 20:19:38 +090032#endif /* __ASM_SH_CPU_SH5_CACHEFLUSH_H */
Linus Torvalds1da177e2005-04-16 15:20:36 -070033