| /* SPDX-License-Identifier: GPL-2.0 */ | |
| #ifndef _SPARC_CACHETLB_H | |
| #define _SPARC_CACHETLB_H | |
| struct mm_struct; | |
| struct vm_area_struct; | |
| struct sparc32_cachetlb_ops { | |
| void (*cache_all)(void); | |
| void (*cache_mm)(struct mm_struct *); | |
| void (*cache_range)(struct vm_area_struct *, unsigned long, | |
| unsigned long); | |
| void (*cache_page)(struct vm_area_struct *, unsigned long); | |
| void (*tlb_all)(void); | |
| void (*tlb_mm)(struct mm_struct *); | |
| void (*tlb_range)(struct vm_area_struct *, unsigned long, | |
| unsigned long); | |
| void (*tlb_page)(struct vm_area_struct *, unsigned long); | |
| void (*page_to_ram)(unsigned long); | |
| void (*sig_insns)(struct mm_struct *, unsigned long); | |
| void (*page_for_dma)(unsigned long); | |
| }; | |
| extern const struct sparc32_cachetlb_ops *sparc32_cachetlb_ops; | |
| #ifdef CONFIG_SMP | |
| extern const struct sparc32_cachetlb_ops *local_ops; | |
| #endif | |
| #endif /* SPARC_CACHETLB_H */ |