Back to home page

OSCL-LXR

 
 

    


0001 /* SPDX-License-Identifier: GPL-2.0 */
0002 #ifndef _SPARC_CACHETLB_H
0003 #define _SPARC_CACHETLB_H
0004 
0005 struct mm_struct;
0006 struct vm_area_struct;
0007 
0008 struct sparc32_cachetlb_ops {
0009     void (*cache_all)(void);
0010     void (*cache_mm)(struct mm_struct *);
0011     void (*cache_range)(struct vm_area_struct *, unsigned long,
0012                 unsigned long);
0013     void (*cache_page)(struct vm_area_struct *, unsigned long);
0014 
0015     void (*tlb_all)(void);
0016     void (*tlb_mm)(struct mm_struct *);
0017     void (*tlb_range)(struct vm_area_struct *, unsigned long,
0018               unsigned long);
0019     void (*tlb_page)(struct vm_area_struct *, unsigned long);
0020 
0021     void (*page_to_ram)(unsigned long);
0022     void (*sig_insns)(struct mm_struct *, unsigned long);
0023     void (*page_for_dma)(unsigned long);
0024 };
0025 extern const struct sparc32_cachetlb_ops *sparc32_cachetlb_ops;
0026 #ifdef CONFIG_SMP
0027 extern const struct sparc32_cachetlb_ops *local_ops;
0028 #endif
0029 
0030 #endif /* SPARC_CACHETLB_H */