31 lines
		
	
	
		
			882 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			31 lines
		
	
	
		
			882 B
		
	
	
	
		
			C
		
	
	
	
	
	
| /* 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 */
 |