1/* SPDX-License-Identifier: GPL-2.0 */
2#ifndef __ASM_MMU_H
3#define __ASM_MMU_H
4
5#include <linux/atomic.h>
6#include <linux/spinlock.h>
7#include <linux/wait.h>
8
9typedef struct {
10	union {
11		u64 asid[NR_CPUS];
12		atomic64_t mmid;
13	};
14
15	void *vdso;
16
17	/* lock to be held whilst modifying fp_bd_emupage_allocmap */
18	spinlock_t bd_emupage_lock;
19	/* bitmap tracking allocation of fp_bd_emupage */
20	unsigned long *bd_emupage_allocmap;
21	/* wait queue for threads requiring an emuframe */
22	wait_queue_head_t bd_emupage_queue;
23} mm_context_t;
24
25#endif /* __ASM_MMU_H */
26