Loading...
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 */
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 unsigned long asid[NR_CPUS];
11 void *vdso;
12 atomic_t fp_mode_switching;
13
14 /* lock to be held whilst modifying fp_bd_emupage_allocmap */
15 spinlock_t bd_emupage_lock;
16 /* bitmap tracking allocation of fp_bd_emupage */
17 unsigned long *bd_emupage_allocmap;
18 /* wait queue for threads requiring an emuframe */
19 wait_queue_head_t bd_emupage_queue;
20} mm_context_t;
21
22#endif /* __ASM_MMU_H */