1*b2441318SGreg Kroah-Hartman /* SPDX-License-Identifier: GPL-2.0 */ 2384740dcSRalf Baechle #ifndef __ASM_TLB_H 3384740dcSRalf Baechle #define __ASM_TLB_H 4384740dcSRalf Baechle 510313980SPaul Burton #include <asm/cpu-features.h> 610313980SPaul Burton #include <asm/mipsregs.h> 710313980SPaul Burton 8a6c09b9fSJames Hogan #define _UNIQUE_ENTRYHI(base, idx) \ 9a6c09b9fSJames Hogan (((base) + ((idx) << (PAGE_SHIFT + 1))) | \ 106e7f8b8eSLeonid Yegoshin (cpu_has_tlbinv ? MIPS_ENTRYHI_EHINV : 0)) 11a6c09b9fSJames Hogan #define UNIQUE_ENTRYHI(idx) _UNIQUE_ENTRYHI(CKSEG0, idx) 12a6c09b9fSJames Hogan #define UNIQUE_GUEST_ENTRYHI(idx) _UNIQUE_ENTRYHI(CKSEG1, idx) 13c01905eeSMarkos Chandras num_wired_entries(void)1410313980SPaul Burtonstatic inline unsigned int num_wired_entries(void) 1510313980SPaul Burton { 1610313980SPaul Burton unsigned int wired = read_c0_wired(); 1710313980SPaul Burton 1810313980SPaul Burton if (cpu_has_mips_r6) 1910313980SPaul Burton wired &= MIPSR6_WIRED_WIRED; 2010313980SPaul Burton 2110313980SPaul Burton return wired; 2210313980SPaul Burton } 2310313980SPaul Burton 24384740dcSRalf Baechle #include <asm-generic/tlb.h> 25384740dcSRalf Baechle 26384740dcSRalf Baechle #endif /* __ASM_TLB_H */ 27