mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-12-15 14:26:40 +07:00
5d83d66635
This eliminated most of the remaining users of btfixup. There are some complications because of the special cases we have for sun4d, leon, and some flavors of viking. It was found that there are no cases where a flush_page_for_dma method was not hooked up to something, so the "noflush" iommu methods were removed. Add some documentation to the viking_sun4d_smp_ops to describe exactly the hardware bug which causes us to need special TLB flushing on sun4d. Signed-off-by: David S. Miller <davem@davemloft.net>
25 lines
582 B
C
25 lines
582 B
C
#ifndef _SPARC_TLBFLUSH_H
|
|
#define _SPARC_TLBFLUSH_H
|
|
|
|
#include <asm/cachetlb_32.h>
|
|
|
|
#define flush_tlb_all() \
|
|
sparc32_cachetlb_ops->tlb_all()
|
|
#define flush_tlb_mm(mm) \
|
|
sparc32_cachetlb_ops->tlb_mm(mm)
|
|
#define flush_tlb_range(vma, start, end) \
|
|
sparc32_cachetlb_ops->tlb_range(vma, start, end)
|
|
#define flush_tlb_page(vma, addr) \
|
|
sparc32_cachetlb_ops->tlb_page(vma, addr)
|
|
|
|
/*
|
|
* This is a kludge, until I know better. --zaitcev XXX
|
|
*/
|
|
static inline void flush_tlb_kernel_range(unsigned long start,
|
|
unsigned long end)
|
|
{
|
|
flush_tlb_all();
|
|
}
|
|
|
|
#endif /* _SPARC_TLBFLUSH_H */
|