]> git.proxmox.com Git - mirror_edk2.git/blob - ArmPkg/Library/ArmLib/AArch64/AArch64Lib.h
318020277b24b1e2078784801d6249356820d1ac
[mirror_edk2.git] / ArmPkg / Library / ArmLib / AArch64 / AArch64Lib.h
1 /** @file
2
3 Copyright (c) 2008 - 2009, Apple Inc. All rights reserved.<BR>
4 Portions Copyright (c) 2011 - 2013, ARM Ltd. All rights reserved.<BR>
5 Copyright (c) 2020, NUVIA Inc. All rights reserved.<BR>
6
7 SPDX-License-Identifier: BSD-2-Clause-Patent
8
9 **/
10
11 #ifndef AARCH64_LIB_H_
12 #define AARCH64_LIB_H_
13
14 typedef VOID (*AARCH64_CACHE_OPERATION)(UINTN);
15
16 VOID
17 AArch64AllDataCachesOperation (
18 IN AARCH64_CACHE_OPERATION DataCacheOperation
19 );
20
21 VOID
22 EFIAPI
23 ArmInvalidateDataCacheEntryBySetWay (
24 IN UINTN SetWayFormat
25 );
26
27 VOID
28 EFIAPI
29 ArmCleanDataCacheEntryBySetWay (
30 IN UINTN SetWayFormat
31 );
32
33 VOID
34 EFIAPI
35 ArmCleanInvalidateDataCacheEntryBySetWay (
36 IN UINTN SetWayFormat
37 );
38
39 UINTN
40 EFIAPI
41 ArmReadIdAA64Pfr0 (
42 VOID
43 );
44
45 /** Reads the ID_AA64MMFR2_EL1 register.
46
47 @return The contents of the ID_AA64MMFR2_EL1 register.
48 **/
49 UINTN
50 EFIAPI
51 ArmReadIdAA64Mmfr2 (
52 VOID
53 );
54
55 #endif // AARCH64_LIB_H_
56