From c7d265a94a3ee2517430e4f19f5b24482e5e7132 Mon Sep 17 00:00:00 2001 From: yshang1 Date: Fri, 22 Jun 2007 16:22:26 +0000 Subject: Checked in part of MDE library instances following PI and UEFI. It includes: 1) UefiLib adds features of RFC 3066/Iso639 language string and driver model protocols installation. 2) PeiCoreEntryPoint following PI. 3) UefiDriverEntryPoint following UEFI/EFI. 4) PeiServicesTablePointerLib following PI for IPF and x86. 5) Remove many CommonHeader.h. If there is only one C file in module, we should add the common headers in C file instead of creating a new CommonHeader.h. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@2723 6f19259b-4bc3-4df7-8a09-765794883524 --- .../PeiServicesTablePointer.c | 50 ++++++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointer.c (limited to 'MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointer.c') diff --git a/MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointer.c b/MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointer.c new file mode 100644 index 0000000000..4c9b3d3541 --- /dev/null +++ b/MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointer.c @@ -0,0 +1,50 @@ +/*++ + +Copyright (c) 2006 Intel Corporation. All rights reserved +This software and associated documentation (if any) is furnished +under a license and may only be used or copied in accordance +with the terms of the license. Except as permitted by such +license, no part of this software or documentation may be +reproduced, stored in a retrieval system, or transmitted in any +form or by any means without the express written consent of +Intel Corporation. + + +Module Name: + + PeiServicesTablePointer.c + +Abstract: + + PEI Services Table Pointer Library. + +--*/ + +#include "InternalPeiServicesTablePointer.h" + +/** + + The function returns the pointer to PeiServicee following + PI1.0. + + For IA32, the four-bytes field immediately prior to new IDT + base addres is used to save the EFI_PEI_SERVICES**. + For x64, the eight-bytes field immediately prior to new IDT + base addres is used to save the EFI_PEI_SERVICES**. + + @retval The pointer to PeiServices. + +**/ +EFI_PEI_SERVICES ** +EFIAPI +GetPeiServicesTablePointer ( + VOID + ) +{ + EFI_PEI_SERVICES **PeiServices; + + PeiServices = (EFI_PEI_SERVICES **) AsmPeiSevicesTablePointer (); + ASSERT (PeiServices != NULL); + return PeiServices; +} + -- cgit v1.2.3