--- /dev/null
+/** @file\r
+ SAL Library Functions\r
+\r
+ Copyright (c) 2007, Intel Corporation\r
+ All rights reserved. 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
+\r
+ THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
+ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
+\r
+ Module Name: SalLib.h\r
+\r
+**/\r
+\r
+#ifndef __SAL_LIB__\r
+#define __SAL_LIB__\r
+\r
+#include <IndustryStandard/Sal.h>\r
+\r
+/**\r
+ Makes a SAL procedure call.\r
+ \r
+ This is a wrapper function to make a SAL procedure call. \r
+ No parameter checking is performed on the 8 input parameters,\r
+ but there are some common rules that the caller should follow\r
+ when making a SAL call. Any address passed to SAL as buffers\r
+ for return parameters must be 8-byte aligned. Unaligned\r
+ addresses may cause undefined results. For those parameters\r
+ defined as reserved or some fields defined as reserved must be\r
+ zero filled or the invalid argument return value may be returned\r
+ or undefined result may occur during the execution of the procedure.\r
+ This function is only available on IPF.\r
+\r
+ @param Index The SAL procedure Index number\r
+ @param Arg2 The 2nd parameter for SAL procedure calls\r
+ @param Arg3 The 3rd parameter for SAL procedure calls\r
+ @param Arg4 The 4th parameter for SAL procedure calls\r
+ @param Arg5 The 5th parameter for SAL procedure calls\r
+ @param Arg6 The 6th parameter for SAL procedure calls\r
+ @param Arg7 The 7th parameter for SAL procedure calls\r
+ @param Arg8 The 8th parameter for SAL procedure calls\r
+\r
+ @return SAL returned registers.\r
+\r
+**/\r
+SAL_RETURN_REGS\r
+EFIAPI\r
+SalCall (\r
+ IN UINT64 Index,\r
+ IN UINT64 Arg2,\r
+ IN UINT64 Arg3,\r
+ IN UINT64 Arg4,\r
+ IN UINT64 Arg5,\r
+ IN UINT64 Arg6,\r
+ IN UINT64 Arg7,\r
+ IN UINT64 Arg8\r
+ );\r
+\r
+#endif\r
<IncludeHeader>Include/Library/CustomDecompressLib.h</IncludeHeader>\r
<HelpText/>\r
</LibraryClass>\r
+ <LibraryClass Name="SalLib" SupArchList="IPF">\r
+ <IncludeHeader>Include/Library/SalLib.h</IncludeHeader>\r
+ <HelpText>Implement the SAL call</HelpText>\r
+ </LibraryClass>\r
</LibraryClassDeclarations>\r
<MsaFiles>\r
<Filename>Library/BaseCacheMaintenanceLib/BaseCacheMaintenanceLib.msa</Filename>\r