]> git.proxmox.com Git - mirror_edk2.git/blame - ArmPlatformPkg/Sec/SecInternal.h
MdeModulePkg/Ide: return correct status when DRQ is not ready for ATAPI
[mirror_edk2.git] / ArmPlatformPkg / Sec / SecInternal.h
CommitLineData
5b1928ff 1/** @file\r
2* Main file supporting the SEC Phase on ARM PLatforms\r
3*\r
d5cd447b 4* Copyright (c) 2011-2013, ARM Limited. All rights reserved.\r
5b1928ff 5*\r
6* This program and the accompanying materials\r
7* are licensed and made available under the terms and conditions of the BSD License\r
8* which accompanies this distribution. The full text of the license may be found at\r
9* http://opensource.org/licenses/bsd-license.php\r
10*\r
11* THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
12* WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
13*\r
14**/\r
15\r
16#ifndef __SEC_H__\r
17#define __SEC_H__\r
18\r
19#include <Base.h>\r
90d6a1bb 20#include <Library/ArmLib.h>\r
21#include <Library/ArmCpuLib.h>\r
bebda7ce 22#include <Library/ArmPlatformLib.h>\r
e314d564 23#include <Library/ArmPlatformSecLib.h>\r
5b1928ff 24#include <Library/BaseLib.h>\r
25#include <Library/DebugLib.h>\r
90d6a1bb 26#include <Library/PcdLib.h>\r
5b1928ff 27\r
28#define IS_ALIGNED(Address, Align) (((UINTN)Address & (Align-1)) == 0)\r
29\r
a8530889 30VOID\r
31TrustedWorldInitialization (\r
a75568e9 32 IN UINTN MpId,\r
33 IN UINTN SecBootMode\r
a8530889 34 );\r
35\r
36VOID\r
37NonTrustedWorldTransition (\r
3d93aeae 38 IN UINTN MpId,\r
39 IN UINTN JumpAddress\r
a8530889 40 );\r
41\r
5b1928ff 42VOID\r
43ArmSetupGicNonSecure (\r
a8530889 44 IN INTN GicDistributorBase,\r
45 IN INTN GicInterruptInterfaceBase\r
5b1928ff 46);\r
47\r
5b1928ff 48VOID\r
49enter_monitor_mode (\r
a8530889 50 IN UINTN MonitorEntryPoint,\r
51 IN UINTN MpId,\r
a75568e9 52 IN UINTN SecBootMode,\r
53 IN VOID* MonitorStackBase\r
5b1928ff 54 );\r
55\r
56VOID\r
57return_from_exception (\r
a8530889 58 IN UINTN NonSecureBase\r
5b1928ff 59 );\r
60\r
61VOID\r
62copy_cpsr_into_spsr (\r
63 VOID\r
64 );\r
65\r
513aa349 66VOID\r
67set_non_secure_mode (\r
a8530889 68 IN ARM_PROCESSOR_MODE Mode\r
513aa349 69 );\r
70\r
5b1928ff 71VOID\r
72SecCommonExceptionEntry (\r
73 IN UINT32 Entry,\r
d5cd447b 74 IN UINTN LR\r
5b1928ff 75 );\r
76\r
d6dc67ba
OM
77VOID\r
78EFIAPI\r
79ArmSecArchTrustzoneInit (\r
80 VOID\r
81 );\r
82\r
5b1928ff 83#endif\r