1 /* SPDX-License-Identifier: GPL-2.0 */
2 #ifndef _LINUX_CACHEFLUSH_H
3 #define _LINUX_CACHEFLUSH_H
4 
5 #include <asm/cacheflush.h>
6 
7 struct folio;
8 
9 #if ARCH_IMPLEMENTS_FLUSH_DCACHE_PAGE
10 #ifndef flush_dcache_folio
11 void flush_dcache_folio(struct folio *folio);
12 #endif
13 #else
flush_dcache_folio(struct folio * folio)14 static inline void flush_dcache_folio(struct folio *folio)
15 {
16 }
17 #define flush_dcache_folio flush_dcache_folio
18 #endif /* ARCH_IMPLEMENTS_FLUSH_DCACHE_PAGE */
19 
20 #ifndef flush_icache_pages
flush_icache_pages(struct vm_area_struct * vma,struct page * page,unsigned int nr)21 static inline void flush_icache_pages(struct vm_area_struct *vma,
22 				     struct page *page, unsigned int nr)
23 {
24 }
25 #endif
26 
27 #define flush_icache_page(vma, page)	flush_icache_pages(vma, page, 1)
28 
29 #endif /* _LINUX_CACHEFLUSH_H */
30