MOS Source Code
Loading...
Searching...
No Matches
do_flag.c
Go to the documentation of this file.
1// SPDX-License-Identifier: GPL-3.0-or-later
2
4
5static void pml1e_do_flag_callback(pml1_t pml1, pml1e_t *e, ptr_t vaddr, void *data)
6{
7 MOS_UNUSED(pml1);
8 MOS_UNUSED(vaddr);
10 {
11 struct pagetable_do_flag_data *flag_data = data;
12 platform_pml1e_set_flags(e, flag_data->flags);
14 }
15}
16
17static void pml2e_do_flag_callback(pml2_t pml2, pml2e_t *e, ptr_t vaddr, void *data)
18{
19 MOS_UNUSED(pml2);
20 MOS_UNUSED(vaddr);
21 struct pagetable_do_flag_data *flag_data = data;
22 platform_pml2e_set_flags(e, flag_data->flags);
23}
24
25static void pml3e_do_flag_callback(pml3_t pml3, pml3e_t *e, ptr_t vaddr, void *data)
26{
27 MOS_UNUSED(pml3);
28 MOS_UNUSED(vaddr);
29 struct pagetable_do_flag_data *flag_data = data;
30 platform_pml3e_set_flags(e, flag_data->flags);
31}
32
33static void pml4e_do_flag_callback(pml4_t pml4, pml4e_t *e, ptr_t vaddr, void *data)
34{
35 MOS_UNUSED(pml4);
36 MOS_UNUSED(vaddr);
37 struct pagetable_do_flag_data *flag_data = data;
38 platform_pml4e_set_flags(e, flag_data->flags);
39}
40
42 .pml1e_callback = pml1e_do_flag_callback,
43 .pml2e_pre_traverse = pml2e_do_flag_callback,
44 .pml3e_pre_traverse = pml3e_do_flag_callback,
45 .pml4e_pre_traverse = pml4e_do_flag_callback,
46};
void platform_pml2e_set_flags(pml2e_t *pml2, vm_flags flags)
Definition mm.c:125
void platform_pml4e_set_flags(pml4e_t *pml4, vm_flags flags)
Definition mm.c:225
void platform_invalidate_tlb(ptr_t vaddr)
Definition mm.c:72
void platform_pml1e_set_flags(pml1e_t *pml1, vm_flags flags)
Definition mm.c:95
bool platform_pml1e_get_present(const pml1e_t *pml1)
Definition mm.c:90
void platform_pml3e_set_flags(pml3e_t *pml3, vm_flags flags)
Definition mm.c:175
static void pml3e_do_flag_callback(pml3_t pml3, pml3e_t *e, ptr_t vaddr, void *data)
Definition do_flag.c:25
static void pml1e_do_flag_callback(pml1_t pml1, pml1e_t *e, ptr_t vaddr, void *data)
Definition do_flag.c:5
const pagetable_walk_options_t pagetable_do_flag_callbacks
Definition do_flag.c:41
static void pml2e_do_flag_callback(pml2_t pml2, pml2e_t *e, ptr_t vaddr, void *data)
Definition do_flag.c:17
static void pml4e_do_flag_callback(pml4_t pml4, pml4e_t *e, ptr_t vaddr, void *data)
Definition do_flag.c:33
#define MOS_UNUSED(x)
Definition mos_global.h:64
pml3e_t pml4e_t
Definition pml_types.h:72
pml2e_t pml3e_t
Definition pml_types.h:60
unsigned long ptr_t
Definition types.h:25