xref: /openbmc/linux/arch/mips/include/asm/mmu.h (revision 432c6bacbd0c16ec210c43da411ccc3855c4c010)
1384740dcSRalf Baechle #ifndef __ASM_MMU_H
2384740dcSRalf Baechle #define __ASM_MMU_H
3384740dcSRalf Baechle 
49791554bSPaul Burton #include <linux/atomic.h>
5*432c6bacSPaul Burton #include <linux/spinlock.h>
6*432c6bacSPaul Burton #include <linux/wait.h>
79791554bSPaul Burton 
8c52d0d30SDavid Daney typedef struct {
9c52d0d30SDavid Daney 	unsigned long asid[NR_CPUS];
10c52d0d30SDavid Daney 	void *vdso;
119791554bSPaul Burton 	atomic_t fp_mode_switching;
12*432c6bacSPaul Burton 
13*432c6bacSPaul Burton 	/* lock to be held whilst modifying fp_bd_emupage_allocmap */
14*432c6bacSPaul Burton 	spinlock_t bd_emupage_lock;
15*432c6bacSPaul Burton 	/* bitmap tracking allocation of fp_bd_emupage */
16*432c6bacSPaul Burton 	unsigned long *bd_emupage_allocmap;
17*432c6bacSPaul Burton 	/* wait queue for threads requiring an emuframe */
18*432c6bacSPaul Burton 	wait_queue_head_t bd_emupage_queue;
19c52d0d30SDavid Daney } mm_context_t;
20384740dcSRalf Baechle 
21384740dcSRalf Baechle #endif /* __ASM_MMU_H */
22