18c2ecf20Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0-only */ 28c2ecf20Sopenharmony_ci/* 38c2ecf20Sopenharmony_ci * Copyright (C) 2012 Regents of the University of California 48c2ecf20Sopenharmony_ci */ 58c2ecf20Sopenharmony_ci 68c2ecf20Sopenharmony_ci 78c2ecf20Sopenharmony_ci#ifndef _ASM_RISCV_MMU_H 88c2ecf20Sopenharmony_ci#define _ASM_RISCV_MMU_H 98c2ecf20Sopenharmony_ci 108c2ecf20Sopenharmony_ci#ifndef __ASSEMBLY__ 118c2ecf20Sopenharmony_ci 128c2ecf20Sopenharmony_citypedef struct { 138c2ecf20Sopenharmony_ci#ifndef CONFIG_MMU 148c2ecf20Sopenharmony_ci unsigned long end_brk; 158c2ecf20Sopenharmony_ci#endif 168c2ecf20Sopenharmony_ci void *vdso; 178c2ecf20Sopenharmony_ci#ifdef CONFIG_SMP 188c2ecf20Sopenharmony_ci /* A local icache flush is needed before user execution can resume. */ 198c2ecf20Sopenharmony_ci cpumask_t icache_stale_mask; 208c2ecf20Sopenharmony_ci#endif 218c2ecf20Sopenharmony_ci} mm_context_t; 228c2ecf20Sopenharmony_ci 238c2ecf20Sopenharmony_civoid __init create_pgd_mapping(pgd_t *pgdp, uintptr_t va, phys_addr_t pa, 248c2ecf20Sopenharmony_ci phys_addr_t sz, pgprot_t prot); 258c2ecf20Sopenharmony_ci#endif /* __ASSEMBLY__ */ 268c2ecf20Sopenharmony_ci 278c2ecf20Sopenharmony_ci#endif /* _ASM_RISCV_MMU_H */ 28