]> git.proxmox.com Git - mirror_edk2.git/blame - ArmPkg/Library/ArmLib/Arm/ArmV7Lib.h
ArmPkg: Fix Ecc error 8003
[mirror_edk2.git] / ArmPkg / Library / ArmLib / Arm / ArmV7Lib.h
CommitLineData
bd6b9799 1/** @file\r
2\r
3 Copyright (c) 2008 - 2009, Apple Inc. All rights reserved.<BR>\r
4\r
4059386c 5 SPDX-License-Identifier: BSD-2-Clause-Patent\r
bd6b9799 6\r
7**/\r
8\r
cc15a619
PG
9#ifndef ARM_V7_LIB_H_\r
10#define ARM_V7_LIB_H_\r
bd6b9799 11\r
46ff196f
AB
12#define ID_MMFR0_SHARELVL_SHIFT 12\r
13#define ID_MMFR0_SHARELVL_MASK 0xf\r
14#define ID_MMFR0_SHARELVL_ONE 0\r
15#define ID_MMFR0_SHARELVL_TWO 1\r
16\r
17#define ID_MMFR0_INNERSHR_SHIFT 28\r
18#define ID_MMFR0_INNERSHR_MASK 0xf\r
19#define ID_MMFR0_OUTERSHR_SHIFT 8\r
20#define ID_MMFR0_OUTERSHR_MASK 0xf\r
21\r
22#define ID_MMFR0_SHR_IMP_UNCACHED 0\r
23#define ID_MMFR0_SHR_IMP_HW_COHERENT 1\r
24#define ID_MMFR0_SHR_IGNORED 0xf\r
25\r
d60f6af4 26typedef VOID (*ARM_V7_CACHE_OPERATION)(UINT32);\r
bd6b9799 27\r
d60f6af4 28VOID\r
29ArmV7AllDataCachesOperation (\r
30 IN ARM_V7_CACHE_OPERATION DataCacheOperation\r
31 );\r
3402aac7 32\r
f9ec8e51
AB
33VOID\r
34EFIAPI\r
35ArmInvalidateDataCacheEntryBySetWay (\r
36 IN UINTN SetWayFormat\r
37 );\r
38\r
39VOID\r
40EFIAPI\r
41ArmCleanDataCacheEntryBySetWay (\r
42 IN UINTN SetWayFormat\r
43 );\r
44\r
45VOID\r
46EFIAPI\r
47ArmCleanInvalidateDataCacheEntryBySetWay (\r
48 IN UINTN SetWayFormat\r
49 );\r
50\r
827a71cc
RC
51/** Reads the ID_MMFR4 register.\r
52\r
53 @return The contents of the ID_MMFR4 register.\r
54**/\r
55UINT32\r
e2bfd172 56EFIAPI\r
827a71cc 57ArmReadIdMmfr4 (\r
e2bfd172
LL
58 VOID\r
59 );\r
60\r
61UINTN\r
62EFIAPI\r
63ArmReadIdPfr1 (\r
64 VOID\r
65 );\r
66\r
cc15a619 67#endif // ARM_V7_LIB_H_\r
bd6b9799 68\r