blob: f6ba08d779318e78ca3cc09587f0389b7b87d211 [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001#ifndef __ASM_MMU_H
2#define __ASM_MMU_H
3
Paul Burton97915542015-01-08 12:17:37 +00004#include <linux/atomic.h>
Paul Burton432c6ba2016-07-08 11:06:19 +01005#include <linux/spinlock.h>
6#include <linux/wait.h>
Paul Burton97915542015-01-08 12:17:37 +00007
David Daneyc52d0d32010-02-18 16:13:04 -08008typedef struct {
9 unsigned long asid[NR_CPUS];
10 void *vdso;
Paul Burton97915542015-01-08 12:17:37 +000011 atomic_t fp_mode_switching;
Paul Burton432c6ba2016-07-08 11:06:19 +010012
13 /* lock to be held whilst modifying fp_bd_emupage_allocmap */
14 spinlock_t bd_emupage_lock;
15 /* bitmap tracking allocation of fp_bd_emupage */
16 unsigned long *bd_emupage_allocmap;
17 /* wait queue for threads requiring an emuframe */
18 wait_queue_head_t bd_emupage_queue;
David Daneyc52d0d32010-02-18 16:13:04 -080019} mm_context_t;
Linus Torvalds1da177e2005-04-16 15:20:36 -070020
21#endif /* __ASM_MMU_H */