GNU Linux-libre 5.19-rc6-gnu
[releases.git] / arch / riscv / include / asm / mmu.h
1 /* SPDX-License-Identifier: GPL-2.0-only */
2 /*
3  * Copyright (C) 2012 Regents of the University of California
4  */
5
6
7 #ifndef _ASM_RISCV_MMU_H
8 #define _ASM_RISCV_MMU_H
9
10 #ifndef __ASSEMBLY__
11
12 typedef struct {
13 #ifndef CONFIG_MMU
14         unsigned long   end_brk;
15 #else
16         atomic_long_t id;
17 #endif
18         void *vdso;
19         void *vdso_info;
20 #ifdef CONFIG_SMP
21         /* A local icache flush is needed before user execution can resume. */
22         cpumask_t icache_stale_mask;
23 #endif
24 } mm_context_t;
25
26 void __init create_pgd_mapping(pgd_t *pgdp, uintptr_t va, phys_addr_t pa,
27                                phys_addr_t sz, pgprot_t prot);
28 #endif /* __ASSEMBLY__ */
29
30 #endif /* _ASM_RISCV_MMU_H */