/*++\r
\r
-Copyright (c) 2006 - 2010, Intel Corporation \r
-Portions copyright (c) 2008-2009 Apple Inc.\r
-All rights reserved. This program and the accompanying materials \r
+Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved.<BR>\r
+Portions copyright (c) 2008 - 2010, Apple Inc. All rights reserved.<BR>\r
+This program and the accompanying materials \r
are licensed and made available under the terms and conditions of the BSD License \r
which accompanies this distribution. The full text of the license may be found at \r
http://opensource.org/licenses/bsd-license.php \r
#include <Library/PcdLib.h>\r
#include <Library/DebugLib.h>\r
#include <Library/ReportStatusCodeLib.h>\r
+#include <Library/SecDispatchTableLib.h>\r
+\r
\r
#define STACK_SIZE 0x20000 \r
\r
EFI_STATUS\r
EFIAPI\r
SecUnixPeiLoadFile (\r
+ VOID *Pe32Data, // TODO: add IN/OUT modifier to Pe32Data\r
+ EFI_PHYSICAL_ADDRESS *ImageAddress, // TODO: add IN/OUT modifier to ImageAddress\r
+ UINT64 *ImageSize, // TODO: add IN/OUT modifier to ImageSize\r
+ EFI_PHYSICAL_ADDRESS *EntryPoint // TODO: add IN/OUT modifier to EntryPoint\r
+ );\r
+\r
+EFI_STATUS\r
+EFIAPI\r
+GasketSecUnixPeiLoadFile (\r
VOID *Pe32Data, // TODO: add IN/OUT modifier to Pe32Data\r
EFI_PHYSICAL_ADDRESS *ImageAddress, // TODO: add IN/OUT modifier to ImageAddress\r
UINT64 *ImageSize, // TODO: add IN/OUT modifier to ImageSize\r
EFI_STATUS\r
EFIAPI\r
SecUnixPeiAutoScan (\r
+ IN UINTN Index,\r
+ OUT EFI_PHYSICAL_ADDRESS *MemoryBase,\r
+ OUT UINT64 *MemorySize\r
+ );\r
+ \r
+EFI_STATUS\r
+EFIAPI\r
+GasketSecUnixPeiAutoScan (\r
IN UINTN Index,\r
OUT EFI_PHYSICAL_ADDRESS *MemoryBase,\r
OUT UINT64 *MemorySize\r
VOID *\r
EFIAPI\r
SecUnixUnixThunkAddress (\r
+ VOID\r
+ );\r
+ \r
+VOID *\r
+EFIAPI\r
+GasketSecUnixUnixThunkAddress (\r
VOID\r
)\r
/*++\r
EFI_STATUS\r
EFIAPI\r
SecUnixUnixFwhAddress (\r
+ IN OUT UINT64 *FwhSize,\r
+ IN OUT EFI_PHYSICAL_ADDRESS *FwhBase\r
+ );\r
+ \r
+EFI_STATUS\r
+EFIAPI\r
+GasketSecUnixUnixFwhAddress (\r
IN OUT UINT64 *FwhSize,\r
IN OUT EFI_PHYSICAL_ADDRESS *FwhBase\r
)\r
EFI_STATUS\r
EFIAPI\r
SecPeiReportStatusCode (\r
+ IN CONST EFI_PEI_SERVICES **PeiServices,\r
+ IN EFI_STATUS_CODE_TYPE CodeType,\r
+ IN EFI_STATUS_CODE_VALUE Value,\r
+ IN UINT32 Instance,\r
+ IN CONST EFI_GUID *CallerId,\r
+ IN CONST EFI_STATUS_CODE_DATA *Data OPTIONAL\r
+ );\r
+ \r
+EFI_STATUS\r
+EFIAPI\r
+GasketSecPeiReportStatusCode (\r
IN CONST EFI_PEI_SERVICES **PeiServices,\r
IN EFI_STATUS_CODE_TYPE CodeType,\r
IN EFI_STATUS_CODE_VALUE Value,\r
)\r
;\r
\r
+EFI_STATUS\r
+EFIAPI\r
+GasketSecUnixFdAddress (\r
+ IN UINTN Index,\r
+ IN OUT EFI_PHYSICAL_ADDRESS *FdBase,\r
+ IN OUT UINT64 *FdSize,\r
+ IN OUT EFI_PHYSICAL_ADDRESS *FixUp\r
+ )\r
+;\r
+\r
+\r
EFI_STATUS\r
GetImageReadFunction (\r
IN PE_COFF_LOADER_IMAGE_CONTEXT *ImageContext,\r
IN EFI_PHYSICAL_ADDRESS PermanentMemoryBase,\r
IN UINTN CopySize\r
);\r
+ \r
+EFI_STATUS\r
+EFIAPI\r
+GasketSecTemporaryRamSupport (\r
+ IN CONST EFI_PEI_SERVICES **PeiServices,\r
+ IN EFI_PHYSICAL_ADDRESS TemporaryMemoryBase,\r
+ IN EFI_PHYSICAL_ADDRESS PermanentMemoryBase,\r
+ IN UINTN CopySize\r
+ );\r
\r
\r
RETURN_STATUS\r
);\r
\r
\r
-\r
VOID SetTimer (UINT64 PeriodMs, VOID (*CallBack)(UINT64 DeltaMs));\r
void msSleep (unsigned long Milliseconds);\r
void GetLocalTime (EFI_TIME *Time);\r
long GetTimeZone(void);\r
int GetDayLight(void);\r
int GetErrno(void);\r
+void UnixEnableInterrupt (void);\r
+void UnixDisableInterrupt (void);\r
+BOOLEAN UnixInterruptEanbled (void);\r
\r
\r
\r