]> git.proxmox.com Git - mirror_edk2.git/blob - ArmPkg/Library/ArmLib/Arm/ArmV7Lib.h
93183e67230e8c799750ec1f933cbc759a2d9d1f
[mirror_edk2.git] / ArmPkg / Library / ArmLib / Arm / ArmV7Lib.h
1 /** @file
2
3 Copyright (c) 2008 - 2009, Apple Inc. All rights reserved.<BR>
4
5 SPDX-License-Identifier: BSD-2-Clause-Patent
6
7 **/
8
9 #ifndef __ARM_V7_LIB_H__
10 #define __ARM_V7_LIB_H__
11
12 #define ID_MMFR0_SHARELVL_SHIFT 12
13 #define ID_MMFR0_SHARELVL_MASK 0xf
14 #define ID_MMFR0_SHARELVL_ONE 0
15 #define ID_MMFR0_SHARELVL_TWO 1
16
17 #define ID_MMFR0_INNERSHR_SHIFT 28
18 #define ID_MMFR0_INNERSHR_MASK 0xf
19 #define ID_MMFR0_OUTERSHR_SHIFT 8
20 #define ID_MMFR0_OUTERSHR_MASK 0xf
21
22 #define ID_MMFR0_SHR_IMP_UNCACHED 0
23 #define ID_MMFR0_SHR_IMP_HW_COHERENT 1
24 #define ID_MMFR0_SHR_IGNORED 0xf
25
26 typedef VOID (*ARM_V7_CACHE_OPERATION)(UINT32);
27
28 VOID
29 ArmV7AllDataCachesOperation (
30 IN ARM_V7_CACHE_OPERATION DataCacheOperation
31 );
32
33 VOID
34 EFIAPI
35 ArmInvalidateDataCacheEntryBySetWay (
36 IN UINTN SetWayFormat
37 );
38
39 VOID
40 EFIAPI
41 ArmCleanDataCacheEntryBySetWay (
42 IN UINTN SetWayFormat
43 );
44
45 VOID
46 EFIAPI
47 ArmCleanInvalidateDataCacheEntryBySetWay (
48 IN UINTN SetWayFormat
49 );
50
51 #endif // __ARM_V7_LIB_H__
52