summaryrefslogtreecommitdiffstats
path: root/MdePkg/Library/PeiPalLib/PeiPalLib.c
diff options
context:
space:
mode:
authorChen A Chen <chen.a.chen@intel.com>2018-07-02 09:21:05 +0800
committerZhang, Chao B <chao.b.zhang@intel.com>2018-09-25 23:48:21 +0800
commit3cb0a311cb7e747d7be5c5076d0fff76ad256d2b (patch)
tree750740cff2394d046712a5adac2d7872dc5467de /MdePkg/Library/PeiPalLib/PeiPalLib.c
parentba6037f8331d5a6e9acd4d26a53ded6aa2ae62fb (diff)
downloadedk2-3cb0a311cb7e747d7be5c5076d0fff76ad256d2b.tar.gz
edk2-3cb0a311cb7e747d7be5c5076d0fff76ad256d2b.tar.bz2
edk2-3cb0a311cb7e747d7be5c5076d0fff76ad256d2b.zip
MdePkg: Removing ipf which is no longer supported from edk2.
Removing rules for Ipf sources file: * Remove the source file which path with "ipf" and also listed in [Sources.IPF] section of INF file. * Remove the source file which listed in [Components.IPF] section of DSC file and not listed in any other [Components] section. * Remove the embedded Ipf code for MDE_CPU_IPF. Removing rules for Inf file: * Remove IPF from VALID_ARCHITECTURES comments. * Remove DXE_SAL_DRIVER from LIBRARY_CLASS in [Defines] section. * Remove the INF which only listed in [Components.IPF] section in DSC. * Remove statements from [BuildOptions] that provide IPF specific flags. * Remove any IPF sepcific sections. Removing rules for Dec file: * Remove [Includes.IPF] section from Dec. Removing rules for Dsc file: * Remove IPF from SUPPORTED_ARCHITECTURES in [Defines] section of DSC. * Remove any IPF specific sections. * Remove statements from [BuildOptions] that provide IPF specific flags. Cc: Liming Gao <liming.gao@intel.com> Cc: Michael D Kinney <michael.d.kinney@intel.com> Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Chen A Chen <chen.a.chen@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com>
Diffstat (limited to 'MdePkg/Library/PeiPalLib/PeiPalLib.c')
-rw-r--r--MdePkg/Library/PeiPalLib/PeiPalLib.c99
1 files changed, 0 insertions, 99 deletions
diff --git a/MdePkg/Library/PeiPalLib/PeiPalLib.c b/MdePkg/Library/PeiPalLib/PeiPalLib.c
deleted file mode 100644
index c35bf0118a..0000000000
--- a/MdePkg/Library/PeiPalLib/PeiPalLib.c
+++ /dev/null
@@ -1,99 +0,0 @@
-/** @file
- PAL Call Services Function.
-
- Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>
- This program and the accompanying materials
- are licensed and made available under the terms and conditions of the BSD License
- which accompanies this distribution. The full text of the license may be found at
- http://opensource.org/licenses/bsd-license.php.
-
- THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
- WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
-
-**/
-
-
-#include <PiPei.h>
-
-#include <Ppi/SecPlatformInformation.h>
-
-#include <Library/PalLib.h>
-#include <Library/PeiServicesTablePointerLib.h>
-#include <Library/PeiServicesLib.h>
-#include <Library/BaseLib.h>
-#include <Library/DebugLib.h>
-
-/**
- Makes a PAL procedure call.
-
- This is a wrapper function to make a PAL procedure call. Based on the Index value,
- this API will make static or stacked PAL call. Architected procedures may be designated
- as required or optional. If a PAL procedure is specified as optional, a unique return
- code of 0xFFFFFFFFFFFFFFFF is returned in the Status field of the PAL_CALL_RETURN structure.
- This indicates that the procedure is not present in this PAL implementation. It is the
- caller's responsibility to check for this return code after calling any optional PAL
- procedure. No parameter checking is performed on the 4 input parameters, but there are
- some common rules that the caller should follow when making a PAL call. Any address
- passed to PAL as buffers for return parameters must be 8-byte aligned. Unaligned addresses
- may cause undefined results. For those parameters defined as reserved or some fields
- defined as reserved must be zero filled or the invalid argument return value may be
- returned or undefined result may occur during the execution of the procedure.
- This function is only available on IPF.
-
- @param Index The PAL procedure Index number.
- @param Arg2 The 2nd parameter for PAL procedure calls.
- @param Arg3 The 3rd parameter for PAL procedure calls.
- @param Arg4 The 4th parameter for PAL procedure calls.
-
- @return Structure returned from the PAL Call procedure, including the status and return value.
-
-**/
-PAL_CALL_RETURN
-EFIAPI
-PalCall (
- IN UINT64 Index,
- IN UINT64 Arg2,
- IN UINT64 Arg3,
- IN UINT64 Arg4
- )
-{
- UINT64 PalCallAddress;
- PAL_CALL_RETURN ReturnVal;
- CONST EFI_PEI_SERVICES **PeiServices;
- EFI_STATUS Status;
- EFI_SEC_PLATFORM_INFORMATION_PPI *SecPlatformPpi;
- EFI_SEC_PLATFORM_INFORMATION_RECORD SecPlatformInfoRecord;
- UINT64 RecordSize;
-
- //
- // Get PEI Service Table Pointer
- //
- PeiServices = GetPeiServicesTablePointer ();
-
- //
- // Locate SEC Platform Information PPI
- //
- Status = PeiServicesLocatePpi (
- &gEfiSecPlatformInformationPpiGuid,
- 0,
- NULL,
- (VOID **)&SecPlatformPpi
- );
- ASSERT_EFI_ERROR (Status);
-
- //
- // Retrieve PAL call address from platform information reported by the PPI
- //
- RecordSize = sizeof (SecPlatformInfoRecord);
- SecPlatformPpi->PlatformInformation (
- PeiServices,
- &RecordSize,
- &SecPlatformInfoRecord
- );
- PalCallAddress = SecPlatformInfoRecord.ItaniumHealthFlags.PalCallAddress;
-
- ReturnVal = AsmPalCall (PalCallAddress, Index, Arg2, Arg3, Arg4);
-
- return ReturnVal;
-}
-