]>
Commit | Line | Data |
---|---|---|
1 | /** @file\r | |
2 | \r | |
3 | Copyright (c) 2015 - 2016, Linaro Ltd. All rights reserved.<BR>\r | |
4 | \r | |
5 | SPDX-License-Identifier: BSD-2-Clause-Patent\r | |
6 | \r | |
7 | **/\r | |
8 | \r | |
9 | #ifndef ARM_MMU_LIB_H_\r | |
10 | #define ARM_MMU_LIB_H_\r | |
11 | \r | |
12 | #include <Uefi/UefiBaseType.h>\r | |
13 | \r | |
14 | #include <Library/ArmLib.h>\r | |
15 | \r | |
16 | EFI_STATUS\r | |
17 | EFIAPI\r | |
18 | ArmConfigureMmu (\r | |
19 | IN ARM_MEMORY_REGION_DESCRIPTOR *MemoryTable,\r | |
20 | OUT VOID **TranslationTableBase OPTIONAL,\r | |
21 | OUT UINTN *TranslationTableSize OPTIONAL\r | |
22 | );\r | |
23 | \r | |
24 | EFI_STATUS\r | |
25 | EFIAPI\r | |
26 | ArmSetMemoryRegionNoExec (\r | |
27 | IN EFI_PHYSICAL_ADDRESS BaseAddress,\r | |
28 | IN UINT64 Length\r | |
29 | );\r | |
30 | \r | |
31 | EFI_STATUS\r | |
32 | EFIAPI\r | |
33 | ArmClearMemoryRegionNoExec (\r | |
34 | IN EFI_PHYSICAL_ADDRESS BaseAddress,\r | |
35 | IN UINT64 Length\r | |
36 | );\r | |
37 | \r | |
38 | EFI_STATUS\r | |
39 | EFIAPI\r | |
40 | ArmSetMemoryRegionReadOnly (\r | |
41 | IN EFI_PHYSICAL_ADDRESS BaseAddress,\r | |
42 | IN UINT64 Length\r | |
43 | );\r | |
44 | \r | |
45 | EFI_STATUS\r | |
46 | EFIAPI\r | |
47 | ArmClearMemoryRegionReadOnly (\r | |
48 | IN EFI_PHYSICAL_ADDRESS BaseAddress,\r | |
49 | IN UINT64 Length\r | |
50 | );\r | |
51 | \r | |
52 | VOID\r | |
53 | EFIAPI\r | |
54 | ArmReplaceLiveTranslationEntry (\r | |
55 | IN UINT64 *Entry,\r | |
56 | IN UINT64 Value,\r | |
57 | IN UINT64 RegionStart\r | |
58 | );\r | |
59 | \r | |
60 | EFI_STATUS\r | |
61 | ArmSetMemoryAttributes (\r | |
62 | IN EFI_PHYSICAL_ADDRESS BaseAddress,\r | |
63 | IN UINT64 Length,\r | |
64 | IN UINT64 Attributes\r | |
65 | );\r | |
66 | \r | |
67 | #endif // ARM_MMU_LIB_H_\r |