]> git.proxmox.com Git - mirror_edk2.git/blame - ArmPkg/Library/ArmLib/Arm/ArmV7Lib.h
UefiCpuPkg: Move AsmRelocateApLoopStart from Mpfuncs.nasm to AmdSev.nasm
[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
429309e0
MK
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
26typedef VOID (*ARM_V7_CACHE_OPERATION)(\r
27 UINT32\r
28 );\r
bd6b9799 29\r
d60f6af4 30VOID\r
31ArmV7AllDataCachesOperation (\r
32 IN ARM_V7_CACHE_OPERATION DataCacheOperation\r
33 );\r
3402aac7 34\r
f9ec8e51
AB
35VOID\r
36EFIAPI\r
37ArmInvalidateDataCacheEntryBySetWay (\r
38 IN UINTN SetWayFormat\r
39 );\r
40\r
41VOID\r
42EFIAPI\r
43ArmCleanDataCacheEntryBySetWay (\r
44 IN UINTN SetWayFormat\r
45 );\r
46\r
47VOID\r
48EFIAPI\r
49ArmCleanInvalidateDataCacheEntryBySetWay (\r
429309e0 50 IN UINTN SetWayFormat\r
f9ec8e51
AB
51 );\r
52\r
827a71cc
RC
53/** Reads the ID_MMFR4 register.\r
54\r
55 @return The contents of the ID_MMFR4 register.\r
56**/\r
57UINT32\r
e2bfd172 58EFIAPI\r
827a71cc 59ArmReadIdMmfr4 (\r
e2bfd172
LL
60 VOID\r
61 );\r
62\r
63UINTN\r
64EFIAPI\r
65ArmReadIdPfr1 (\r
66 VOID\r
67 );\r
68\r
cc15a619 69#endif // ARM_V7_LIB_H_\r