xref: /openbmc/linux/arch/mips/include/asm/mmu.h (revision ff4dd232)
1b2441318SGreg Kroah-Hartman /* SPDX-License-Identifier: GPL-2.0 */
2384740dcSRalf Baechle #ifndef __ASM_MMU_H
3384740dcSRalf Baechle #define __ASM_MMU_H
4384740dcSRalf Baechle 
59791554bSPaul Burton #include <linux/atomic.h>
6432c6bacSPaul Burton #include <linux/spinlock.h>
7432c6bacSPaul Burton #include <linux/wait.h>
89791554bSPaul Burton 
9c52d0d30SDavid Daney typedef struct {
10ff4dd232SPaul Burton 	u64 asid[NR_CPUS];
11c52d0d30SDavid Daney 	void *vdso;
129791554bSPaul Burton 	atomic_t fp_mode_switching;
13432c6bacSPaul Burton 
14432c6bacSPaul Burton 	/* lock to be held whilst modifying fp_bd_emupage_allocmap */
15432c6bacSPaul Burton 	spinlock_t bd_emupage_lock;
16432c6bacSPaul Burton 	/* bitmap tracking allocation of fp_bd_emupage */
17432c6bacSPaul Burton 	unsigned long *bd_emupage_allocmap;
18432c6bacSPaul Burton 	/* wait queue for threads requiring an emuframe */
19432c6bacSPaul Burton 	wait_queue_head_t bd_emupage_queue;
20c52d0d30SDavid Daney } mm_context_t;
21384740dcSRalf Baechle 
22384740dcSRalf Baechle #endif /* __ASM_MMU_H */
23