1 #ifndef __ASM_ARM_FLUSHTLB_H__ 2 #define __ASM_ARM_FLUSHTLB_H__ 3 4 #include <xen/cpumask.h> 5 6 /* 7 * Filter the given set of CPUs, removing those that definitely flushed their 8 * TLB since @page_timestamp. 9 */ 10 /* XXX lazy implementation just doesn't clear anything.... */ tlbflush_filter(cpumask_t * mask,uint32_t page_timestamp)11static inline void tlbflush_filter(cpumask_t *mask, uint32_t page_timestamp) {} 12 13 #define tlbflush_current_time() (0) 14 page_set_tlbflush_timestamp(struct page_info * page)15static inline void page_set_tlbflush_timestamp(struct page_info *page) 16 { 17 page->tlbflush_timestamp = tlbflush_current_time(); 18 } 19 20 #if defined(CONFIG_ARM_32) 21 # include <asm/arm32/flushtlb.h> 22 #elif defined(CONFIG_ARM_64) 23 # include <asm/arm64/flushtlb.h> 24 #else 25 # error "unknown ARM variant" 26 #endif 27 28 /* Flush specified CPUs' TLBs */ 29 void flush_tlb_mask(const cpumask_t *mask); 30 31 #endif /* __ASM_ARM_FLUSHTLB_H__ */ 32 /* 33 * Local variables: 34 * mode: C 35 * c-file-style: "BSD" 36 * c-basic-offset: 4 37 * indent-tabs-mode: nil 38 * End: 39 */ 40