]> git.proxmox.com Git - mirror_edk2.git/blame - ArmPkg/Include/Library/ArmTrustZoneLib.h
Arm Packages: Fixed coding style/Line endings to follow EDK2 coding convention
[mirror_edk2.git] / ArmPkg / Include / Library / ArmTrustZoneLib.h
CommitLineData
1bfda055 1/** @file\r
2*\r
3* Copyright (c) 2011, ARM Limited. All rights reserved.\r
4* \r
5* This program and the accompanying materials \r
6* are licensed and made available under the terms and conditions of the BSD License \r
7* which accompanies this distribution. The full text of the license may be found at \r
8* http://opensource.org/licenses/bsd-license.php \r
9*\r
10* THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, \r
11* WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. \r
12*\r
13**/\r
14\r
15#ifndef __ARM_TRUSTZONE_LIB_H__\r
16#define __ARM_TRUSTZONE_LIB_H__\r
17\r
18#include <Uefi.h>\r
19\r
20// Setup TZ Protection Controller\r
21#define TZPC_DECPROT_0 0\r
22#define TZPC_DECPROT_1 1\r
23#define TZPC_DECPROT_2 2\r
24#define TZPC_DECPROT_MAX 2\r
25\r
26/**\r
27 FIXME: Need documentation\r
28**/\r
11c20f4e 29EFI_STATUS\r
30TZPCSetDecProtBits (\r
31 IN UINTN TzpcBase,\r
32 IN UINTN TzpcId,\r
33 IN UINTN Bits\r
34 );\r
1bfda055 35\r
36/**\r
37 FIXME: Need documentation\r
38**/\r
11c20f4e 39EFI_STATUS\r
40TZPCClearDecProtBits (\r
41 IN UINTN TzpcBase,\r
42 IN UINTN TzpcId,\r
43 IN UINTN Bits\r
44 );\r
1bfda055 45\r
46// Setup TZ Address Space Controller\r
47#define TZASC_REGION_ENABLED 1\r
48#define TZASC_REGION_DISABLED 0\r
49#define TZASC_REGION_SIZE_32KB 0xE\r
50#define TZASC_REGION_SIZE_64KB 0xF\r
51#define TZASC_REGION_SIZE_128KB 0x10\r
52#define TZASC_REGION_SIZE_256KB 0x11\r
53#define TZASC_REGION_SIZE_512KB 0x12\r
54#define TZASC_REGION_SIZE_1MB 0x13\r
55#define TZASC_REGION_SIZE_2MB 0x14\r
56#define TZASC_REGION_SIZE_4MB 0x15\r
57#define TZASC_REGION_SIZE_8MB 0x16\r
58#define TZASC_REGION_SIZE_16MB 0x17\r
59#define TZASC_REGION_SIZE_32MB 0x18\r
60#define TZASC_REGION_SIZE_64MB 0x19\r
61#define TZASC_REGION_SIZE_128MB 0x1A\r
62#define TZASC_REGION_SIZE_256MB 0x1B\r
63#define TZASC_REGION_SIZE_512MB 0x1C\r
64#define TZASC_REGION_SIZE_1GB 0x1D\r
65#define TZASC_REGION_SIZE_2GB 0x1E\r
66#define TZASC_REGION_SIZE_4GB 0x1F\r
67#define TZASC_REGION_SECURITY_SR (1 << 3)\r
68#define TZASC_REGION_SECURITY_SW (1 << 2)\r
69#define TZASC_REGION_SECURITY_SRW (TZASC_REGION_SECURITY_SR|TZASC_REGION_SECURITY_SW)\r
70#define TZASC_REGION_SECURITY_NSR (1 << 1)\r
71#define TZASC_REGION_SECURITY_NSW 1\r
72#define TZASC_REGION_SECURITY_NSRW (TZASC_REGION_SECURITY_NSR|TZASC_REGION_SECURITY_NSW)\r
73\r
74/**\r
75 FIXME: Need documentation\r
76**/\r
11c20f4e 77EFI_STATUS\r
78TZASCSetRegion (\r
79 IN INTN TzascBase,\r
80 IN UINTN RegionId,\r
81 IN UINTN Enabled,\r
82 IN UINTN LowAddress,\r
83 IN UINTN HighAddress,\r
84 IN UINTN Size,\r
85 IN UINTN Security\r
86 );\r
1bfda055 87\r
88#endif\r