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
This commit is contained in:
yshang1 2007-06-22 16:22:26 +00:00
parent 1a5589a183
commit c7d265a94a
119 changed files with 1033 additions and 1279 deletions

View File

@ -17,6 +17,8 @@
#ifndef __BASE_LIB__
#define __BASE_LIB__
#include <IndustryStandard/Pal.h>
//
// Definitions for architecture specific types
// These include SPIN_LOCK and BASE_LIBRARY_JUMP_BUFFER

View File

@ -32,15 +32,12 @@
The allocated and initialized packages.
**/
EFI_HII_PACKAGE_LIST_HEADER*
EFI_HII_PACKAGE_LIST_HEADER *
EFIAPI
PreparePackages (
IN UINTN NumberOfPackages,
IN CONST EFI_GUID *Guid OPTIONAL,
IN CONST UINTN NumberOfPackages,
IN CONST EFI_GUID *Guid OPTIONAL,
...
)
;
);
#endif

View File

@ -16,19 +16,35 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
#define __MODULE_ENTRY_POINT_H__
/**
Enrty point to PEI core.
@param PeiStartupDescriptor Pointer of start up information.
@return Status returned by entry points of core and drivers.
@param SecCoreData Points to a data structure containing
information about the PEI core's
operating environment, such as the size
and location of temporary RAM, the stack
location and the BFV location. The type
EFI_SEC_PEI_HAND_OFF is
@param PpiList Points to a list of one or more PPI
descriptors to be installed initially by
the PEI core. An empty PPI list consists
of a single descriptor with the end-tag
EFI_PEI_PPI_DESCRIPTOR_TERMINATE_LIST.
As part of its initialization phase, the
PEI Foundation will add these SEC-hosted
PPIs to its PPI database such that both
the PEI Foundation and any modules can
leverage the associated service calls
and/or code in these early PPIs.
**/
EFI_STATUS
EFIAPI
_ModuleEntryPoint (
VOID
EFIAPI
_ModuleEntryPoint(
IN CONST EFI_SEC_PEI_HAND_OFF *SecCoreData,
IN CONST EFI_PEI_PPI_DESCRIPTOR *PpiList
);
);
/**
Wrapper of enrty point to PEI core.
@ -38,7 +54,7 @@ _ModuleEntryPoint (
@return Status returned by entry points of core and drivers.
**/
EFI_STATUS
VOID
EFIAPI
EfiMain (
IN CONST EFI_SEC_PEI_HAND_OFF *SecCoreData,
@ -69,7 +85,7 @@ ProcessLibraryConstructorList (
@return Status returned by entry points of drivers.
**/
EFI_STATUS
VOID
EFIAPI
ProcessModuleEntryPointList (
IN CONST EFI_SEC_PEI_HAND_OFF *SecCoreData,

View File

@ -15,6 +15,8 @@
#ifndef __REPORT_STATUS_CODE_LIB_H__
#define __REPORT_STATUS_CODE_LIB_H__
#include <Protocol/DevicePath.h>
//
// Declare bits for PcdReportStatusCodePropertyMask
//
@ -26,150 +28,6 @@
// Extended Data structure definitions with EFI_STATUS_CODE_DATA headers removed
//
///
/// Voltage Extended Error Data
///
typedef struct {
EFI_EXP_BASE10_DATA Voltage;
EFI_EXP_BASE10_DATA Threshold;
} REPORT_STATUS_CODE_LIBRARY_COMPUTING_UNIT_VOLTAGE_ERROR_DATA;
///
/// Microcode Update Extended Error Data
///
typedef struct {
UINT32 Version;
} REPORT_STATUS_CODE_LIBRARY_COMPUTING_UNIT_MICROCODE_UPDATE_ERROR_DATA;
///
/// Asynchronous Timer Extended Error Data
///
typedef struct {
EFI_EXP_BASE10_DATA TimerLimit;
} REPORT_STATUS_CODE_LIBRARY_COMPUTING_UNIT_TIMER_EXPIRED_ERROR_DATA;
///
/// Host Processor Mismatch Extended Error Data
///
typedef struct {
UINT32 Instance;
UINT16 Attributes;
} REPORT_STATUS_CODE_LIBRARY_HOST_PROCESSOR_MISMATCH_ERROR_DATA;
///
/// Thermal Extended Error Data
///
typedef struct {
EFI_EXP_BASE10_DATA Temperature;
EFI_EXP_BASE10_DATA Threshold;
} REPORT_STATUS_CODE_LIBRARY_COMPUTING_UNIT_THERMAL_ERROR_DATA;
///
/// Processor Disabled Extended Error Data
///
typedef struct {
UINT32 Cause;
BOOLEAN SoftwareDisabled;
} REPORT_STATUS_CODE_LIBRARY_COMPUTING_UNIT_CPU_DISABLED_ERROR_DATA;
///
/// Embedded cache init extended data
///
typedef struct {
UINT32 Level;
EFI_INIT_CACHE_TYPE Type;
} REPORT_STATUS_CODE_LIBRARY_CACHE_INIT_DATA;
///
/// Memory Extended Error Data
///
typedef struct {
EFI_MEMORY_ERROR_GRANULARITY Granularity;
EFI_MEMORY_ERROR_OPERATION Operation;
UINTN Syndrome;
EFI_PHYSICAL_ADDRESS Address;
UINTN Resolution;
} REPORT_STATUS_CODE_LIBRARY_MEMORY_EXTENDED_ERROR_DATA;
///
/// DIMM number
///
typedef struct {
UINT16 Array;
UINT16 Device;
} REPORT_STATUS_CODE_LIBRARY_STATUS_CODE_DIMM_NUMBER;
///
/// Memory Module Mismatch Extended Error Data
///
typedef struct {
EFI_STATUS_CODE_DIMM_NUMBER Instance;
} REPORT_STATUS_CODE_LIBRARY_MEMORY_MODULE_MISMATCH_ERROR_DATA;
///
/// Memory Range Extended Data
///
typedef struct {
EFI_PHYSICAL_ADDRESS Start;
EFI_PHYSICAL_ADDRESS Length;
} REPORT_STATUS_CODE_LIBRARY_MEMORY_RANGE_EXTENDED_DATA;
///
/// Device handle Extended Data. Used for many
/// errors and progress codes to point to the device.
///
typedef struct {
EFI_HANDLE Handle;
} REPORT_STATUS_CODE_LIBRARY_DEVICE_HANDLE_EXTENDED_DATA;
typedef struct {
UINT8 *DevicePath;
} REPORT_STATUS_CODE_LIBRARY_DEVICE_PATH_EXTENDED_DATA;
typedef struct {
EFI_HANDLE ControllerHandle;
EFI_HANDLE DriverBindingHandle;
UINT16 DevicePathSize;
UINT8 *RemainingDevicePath;
} REPORT_STATUS_CODE_LIBRARY_STATUS_CODE_START_EXTENDED_DATA;
///
/// Resource Allocation Failure Extended Error Data
///
typedef struct {
UINT32 Bar;
UINT16 DevicePathSize;
UINT16 ReqResSize;
UINT16 AllocResSize;
UINT8 *DevicePath;
UINT8 *ReqRes;
UINT8 *AllocRes;
} REPORT_STATUS_CODE_LIBRARY_RESOURCE_ALLOC_FAILURE_ERROR_DATA;
///
/// Extended Error Data for Assert
///
typedef struct {
UINT32 LineNumber;
UINT32 FileNameSize;
EFI_STATUS_CODE_STRING_DATA *FileName;
} REPORT_STATUS_CODE_LIBRARY_DEBUG_ASSERT_DATA;
///
/// System Context Data EBC/IA32/IPF
///
typedef struct {
EFI_STATUS_CODE_EXCEP_SYSTEM_CONTEXT Context;
} REPORT_STATUS_CODE_LIBRARY_STATUS_CODE_EXCEP_EXTENDED_DATA;
///
/// Legacy Oprom extended data
///
typedef struct {
EFI_HANDLE DeviceHandle;
EFI_PHYSICAL_ADDRESS RomImageBase;
} REPORT_STATUS_CODE_LIBRARY_LEGACY_OPROM_EXTENDED_DATA;
//
// Extern for the modules Caller ID GUID
//

View File

@ -24,6 +24,8 @@ Module Name:
#ifndef _SCSI_LIB_H
#define _SCSI_LIB_H
#include <Protocol/ScsiIo.h>
//
// the time unit is 100ns, since the SCSI I/O defines timeout in 100ns unit.
//

View File

@ -15,6 +15,13 @@
#ifndef __UEFI_LIB_H__
#define __UEFI_LIB_H__
#include <Protocol/DriverBinding.h>
#include <Protocol/DriverConfiguration.h>
#include <Protocol/ComponentName.h>
#include <Protocol/ComponentName2.h>
#include <Protocol/DriverDiagnostics.h>
#include <Protocol/DriverDiagnostics2.h>
//
// Unicode String Table
//
@ -708,4 +715,125 @@ AsciiErrorPrint (
...
);
/**
Intialize a driver by installing the Driver Binding Protocol onto the
driver's DriverBindingHandle. This is typically the same as the driver's
ImageHandle, but it can be different if the driver produces multiple
DriverBinding Protocols. This function also initializes the EFI Driver
Library that initializes the global variables gST, gBS, gRT.
@param ImageHandle The image handle of the driver
@param SystemTable The EFI System Table that was passed to the driver's entry point
@param DriverBinding A Driver Binding Protocol instance that this driver is producing
@param DriverBindingHandle The handle that DriverBinding is to be installe onto. If this
parameter is NULL, then a new handle is created.
@retval EFI_SUCCESS DriverBinding is installed onto DriverBindingHandle
@retval Other Status from gBS->InstallProtocolInterface()
**/
EFI_STATUS
EFIAPI
EfiLibInstallDriverBinding (
IN CONST EFI_HANDLE ImageHandle,
IN CONST EFI_SYSTEM_TABLE *SystemTable,
IN EFI_DRIVER_BINDING_PROTOCOL *DriverBinding,
IN EFI_HANDLE DriverBindingHandle
);
/**
Intialize a driver by installing the Driver Binding Protocol onto the
driver's DriverBindingHandle. This is typically the same as the driver's
ImageHandle, but it can be different if the driver produces multiple
DriverBinding Protocols. This function also initializes the EFI Driver
Library that initializes the global variables gST, gBS, gRT.
@ImageHandle The image handle of the driver
@SystemTable The EFI System Table that was passed to the driver's entry point
@DriverBinding A Driver Binding Protocol instance that this driver is producing
@DriverBindingHandle The handle that DriverBinding is to be installe onto. If this
parameter is NULL, then a new handle is created.
@ComponentName A Component Name Protocol instance that this driver is producing
@DriverConfiguration A Driver Configuration Protocol instance that this driver is producing
@DriverDiagnostics A Driver Diagnostics Protocol instance that this driver is producing
@retval EFI_SUCCESS DriverBinding is installed onto DriverBindingHandle
@retval Other Status from gBS->InstallProtocolInterface()
**/
EFI_STATUS
EFIAPI
EfiLibInstallAllDriverProtocols (
IN CONST EFI_HANDLE ImageHandle,
IN CONST EFI_SYSTEM_TABLE *SystemTable,
IN EFI_DRIVER_BINDING_PROTOCOL *DriverBinding,
IN EFI_HANDLE DriverBindingHandle,
IN CONST EFI_COMPONENT_NAME_PROTOCOL *ComponentName, OPTIONAL
IN CONST EFI_DRIVER_CONFIGURATION_PROTOCOL *DriverConfiguration, OPTIONAL
IN CONST EFI_DRIVER_DIAGNOSTICS_PROTOCOL *DriverDiagnostics OPTIONAL
);
/**
Intialize a driver by installing the Driver Binding Protocol
onto the driver's DriverBindingHandle. This is typically the
same as the driver's ImageHandle, but it can be different if
the driver produces multiple DriverBinding Protocols. This
function also initializes the EFI Driver Library that
initializes the global variables gST, gBS, gRT.
@ImageHandle The image handle of the driver
@SystemTable The EFI System Table that was
passed to the driver's entry
point
@DriverBinding A Driver Binding Protocol
instance that this driver is
producing
@DriverBindingHandle The handle that DriverBinding is
to be installe onto. If this
parameter is NULL, then a new
handle is created.
@ComponentName A Component Name Protocol
instance that this driver is
producing
@ComponentName2 A Component Name 2 Protocol
instance that this driver is
producing
@DriverConfiguration A Driver Configuration Protocol
instance that this driver is
producing
@DriverDiagnostics A Driver Diagnostics Protocol
instance that this driver is
producing
@DriverDiagnostics2 A Driver Diagnostics 2 Protocol
instance that this driver is
producing
@retval EFI_SUCCESS DriverBinding is installed onto DriverBindingHandle
@retval Other Status from gBS->InstallProtocolInterface()
**/
EFI_STATUS
EFIAPI
EfiLibInstallAllDriverProtocols2 (
IN CONST EFI_HANDLE ImageHandle,
IN CONST EFI_SYSTEM_TABLE *SystemTable,
IN EFI_DRIVER_BINDING_PROTOCOL *DriverBinding,
IN EFI_HANDLE DriverBindingHandle,
IN CONST EFI_COMPONENT_NAME_PROTOCOL *ComponentName, OPTIONAL
IN CONST EFI_COMPONENT_NAME2_PROTOCOL *ComponentName2, OPTIONAL
IN CONST EFI_DRIVER_CONFIGURATION_PROTOCOL *DriverConfiguration, OPTIONAL
IN CONST EFI_DRIVER_DIAGNOSTICS_PROTOCOL *DriverDiagnostics, OPTIONAL
IN CONST EFI_DRIVER_DIAGNOSTICS2_PROTOCOL *DriverDiagnostics2 OPTIONAL
);
#endif

View File

@ -25,6 +25,7 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
#ifndef _USB_DXE_LIB_H
#define _USB_DXE_LIB_H
#include <Protocol/UsbIo.h>
//
// define the timeout time as 3ms
//

View File

@ -21,8 +21,8 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
#ifndef __PI_UEFI_H__
#define __PI_UEFI_H__
#include <UefiBaseType.h>
#include <UefiSpec.h>
#include <Uefi/UefiBaseType.h>
#include <Uefi/UefiSpec.h>
#endif

View File

@ -44,7 +44,6 @@
[Sources.common]
DebugLib.c
CommonHeader.h
################################################################################

View File

@ -1,31 +0,0 @@
/**@file
Common header file shared by all source files.
This file includes package header files, library classes and protocol, PPI & GUID definitions.
Copyright (c) 2007 - 2007, Intel Corporation.
All rights reserved. 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.
**/
#ifndef __COMMON_HEADER_H_
#define __COMMON_HEADER_H_
//
// The package level header files this module uses
//
#include <Base.h>
//
// The protocols, PPI and GUID defintions for this module
//
//
// The Library classes this module consumes
//
#include <Library/DebugLib.h>
#endif

View File

@ -13,9 +13,14 @@
**/
//
// Include common header file for this module.
// The package level header files this module uses
//
#include "CommonHeader.h"
#include <Base.h>
//
// The Library classes this module produced
//
#include <Library/DebugLib.h>
/**

View File

@ -45,7 +45,6 @@
[Sources.common]
PciLib.c
CommonHeader.h
################################################################################

View File

@ -1,33 +0,0 @@
/**@file
Common header file shared by all source files.
This file includes package header files, library classes and protocol, PPI & GUID definitions.
Copyright (c) 2007, Intel Corporation.
All rights reserved. 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.
**/
#ifndef __COMMON_HEADER_H_
#define __COMMON_HEADER_H_
//
// The package level header files this module uses
//
#include <Base.h>
//
// The protocols, PPI and GUID defintions for this module
//
//
// The Library classes this module consumes
//
#include <Library/PciCf8Lib.h>
#include <Library/IoLib.h>
#include <Library/DebugLib.h>
#endif

View File

@ -15,9 +15,18 @@
**/
//
// Include common header file for this module.
// The package level header files this module uses
//
#include "CommonHeader.h"
#include <Base.h>
//
// The protocols, PPI and GUID defintions for this module
//
//
// The Library classes this module consumes
//
#include <Library/PciCf8Lib.h>
#include <Library/IoLib.h>
#include <Library/DebugLib.h>
//
// Declare I/O Ports used to perform PCI Confguration Cycles

View File

@ -45,7 +45,6 @@
[Sources.common]
PciLib.c
CommonHeader.h
################################################################################

View File

@ -1,34 +0,0 @@
/**@file
Common header file shared by all source files.
This file includes package header files, library classes and protocol, PPI & GUID definitions.
Copyright (c) 2007, Intel Corporation.
All rights reserved. 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.
**/
#ifndef __COMMON_HEADER_H_
#define __COMMON_HEADER_H_
//
// The package level header files this module uses
//
#include <Base.h>
//
// The protocols, PPI and GUID defintions for this module
//
//
// The Library classes this module consumes
//
#include <Library/PciExpressLib.h>
#include <Library/IoLib.h>
#include <Library/DebugLib.h>
#include <Library/PcdLib.h>
#endif

View File

@ -21,9 +21,20 @@
**/
//
// Include common header file for this module.
// The package level header files this module uses
//
#include "CommonHeader.h"
#include <Base.h>
//
// The protocols, PPI and GUID defintions for this module
//
//
// The Library classes this module consumes
//
#include <Library/PciExpressLib.h>
#include <Library/IoLib.h>
#include <Library/DebugLib.h>
#include <Library/PcdLib.h>
/**
Assert the validity of a PCI address. A valid PCI address should contain 1's

View File

@ -45,7 +45,6 @@
[Sources.common]
PciLib.c
CommonHeader.h
################################################################################

View File

@ -1,32 +0,0 @@
/**@file
Common header file shared by all source files.
This file includes package header files, library classes and protocol, PPI & GUID definitions.
Copyright (c) 2007 - 2007, Intel Corporation.
All rights reserved. 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.
**/
#ifndef __COMMON_HEADER_H_
#define __COMMON_HEADER_H_
//
// The package level header files this module uses
//
#include <Base.h>
//
// The protocols, PPI and GUID defintions for this module
//
//
// The Library classes this module consumes
//
#include <Library/PciLib.h>
#include <Library/PciCf8Lib.h>
#endif

View File

@ -15,9 +15,17 @@
**/
//
// Include common header file for this module.
// The package level header files this module uses
//
#include "CommonHeader.h"
#include <Base.h>
//
// The protocols, PPI and GUID defintions for this module
//
//
// The Library classes this module consumes
//
#include <Library/PciLib.h>
#include <Library/PciCf8Lib.h>
/**
Reads an 8-bit PCI configuration register.

View File

@ -45,7 +45,6 @@
[Sources.common]
PciLib.c
CommonHeader.h
################################################################################

View File

@ -1,32 +0,0 @@
/**@file
Common header file shared by all source files.
This file includes package header files, library classes and protocol, PPI & GUID definitions.
Copyright (c) 2007 - 2007, Intel Corporation.
All rights reserved. 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.
**/
#ifndef __COMMON_HEADER_H_
#define __COMMON_HEADER_H_
//
// The package level header files this module uses
//
#include <Base.h>
//
// The protocols, PPI and GUID defintions for this module
//
//
// The Library classes this module consumes
//
#include <Library/PciLib.h>
#include <Library/PciExpressLib.h>
#endif

View File

@ -15,9 +15,17 @@
**/
//
// Include common header file for this module.
// The package level header files this module uses
//
#include "CommonHeader.h"
#include <Base.h>
//
// The protocols, PPI and GUID defintions for this module
//
//
// The Library classes this module consumes
//
#include <Library/PciLib.h>
#include <Library/PciExpressLib.h>
/**
Reads an 8-bit PCI configuration register.

View File

@ -44,7 +44,6 @@
[Sources.common]
PeCoffGetEntryPoint.c
CommonHeader.h
################################################################################

View File

@ -1,32 +0,0 @@
/**@file
Common header file shared by all source files.
This file includes package header files, library classes and protocol, PPI & GUID definitions.
Copyright (c) 2007, Intel Corporation.
All rights reserved. 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.
**/
#ifndef __COMMON_HEADER_H_
#define __COMMON_HEADER_H_
//
// The package level header files this module uses
//
#include <Base.h>
//
// The protocols, PPI and GUID defintions for this module
//
//
// The Library classes this module consumes
//
#include <Library/PeCoffGetEntryPointLib.h>
#include <Library/DebugLib.h>
#endif

View File

@ -14,13 +14,20 @@
**/
//
// Include common header file for this module.
// The package level header files this module uses
//
#include "CommonHeader.h"
#include <Include/IndustryStandard/PeImage.h>
#include <Base.h>
//
// The protocols, PPI and GUID defintions for this module
//
//
// The Library classes this module consumes
//
#include <Library/PeCoffGetEntryPointLib.h>
#include <Library/DebugLib.h>
#include <IndustryStandard/PeImage.h>
/**
Retrieves and returns a pointer to the entry point to a PE/COFF image that has been loaded

View File

@ -45,7 +45,6 @@
[Sources.common]
PerformanceLib.c
CommonHeader.h
################################################################################

View File

@ -1,33 +0,0 @@
/**@file
Common header file shared by all source files.
This file includes package header files, library classes and protocol, PPI & GUID definitions.
Copyright (c) 2007, Intel Corporation.
All rights reserved. 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.
**/
#ifndef __COMMON_HEADER_H_
#define __COMMON_HEADER_H_
//
// The package level header files this module uses
//
#include <Base.h>
//
// The protocols, PPI and GUID defintions for this module
//
//
// The Library classes this module consumes
//
#include <Library/PerformanceLib.h>
#include <Library/DebugLib.h>
#include <Library/PcdLib.h>
#endif

View File

@ -15,9 +15,18 @@
**/
//
// Include common header file for this module.
// The package level header files this module uses
//
#include "CommonHeader.h"
#include <Base.h>
//
// The protocols, PPI and GUID defintions for this module
//
//
// The Library classes this module consumes
//
#include <Library/PerformanceLib.h>
#include <Library/DebugLib.h>
#include <Library/PcdLib.h>
/**
Creates a record for the beginning of a performance measurement.

View File

@ -44,7 +44,6 @@
[Sources.common]
PostCode.c
CommonHeader.h
################################################################################

View File

@ -1,33 +0,0 @@
/**@file
Common header file shared by all source files.
This file includes package header files, library classes and protocol, PPI & GUID definitions.
Copyright (c) 2007, Intel Corporation.
All rights reserved. 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.
**/
#ifndef __COMMON_HEADER_H_
#define __COMMON_HEADER_H_
//
// The package level header files this module uses
//
#include <Base.h>
//
// The protocols, PPI and GUID defintions for this module
//
//
// The Library classes this module consumes
//
#include <Library/PostCodeLib.h>
#include <Library/DebugLib.h>
#include <Library/PcdLib.h>
#endif

View File

@ -14,9 +14,18 @@
//
// Include common header file for this module.
// The package level header files this module uses
//
#include "CommonHeader.h"
#include <Base.h>
//
// The protocols, PPI and GUID defintions for this module
//
//
// The Library classes this module consumes
//
#include <Library/PostCodeLib.h>
#include <Library/DebugLib.h>
#include <Library/PcdLib.h>
/**
Sends an 32-bit value to a POST card.

View File

@ -44,7 +44,6 @@
[Sources.common]
PostCode.c
CommonHeader.h
################################################################################

View File

@ -1,33 +0,0 @@
/**@file
Common header file shared by all source files.
This file includes package header files, library classes and protocol, PPI & GUID definitions.
Copyright (c) 2007, Intel Corporation.
All rights reserved. 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.
**/
#ifndef __COMMON_HEADER_H_
#define __COMMON_HEADER_H_
//
// The package level header files this module uses
//
#include <Base.h>
//
// The protocols, PPI and GUID defintions for this module
//
//
// The Library classes this module consumes
//
#include <Library/PostCodeLib.h>
#include <Library/PcdLib.h>
#include <Library/IoLib.h>
#endif

View File

@ -14,9 +14,18 @@
//
// Include common header file for this module.
// The package level header files this module uses
//
#include "CommonHeader.h"
#include <Base.h>
//
// The protocols, PPI and GUID defintions for this module
//
//
// The Library classes this module consumes
//
#include <Library/PostCodeLib.h>
#include <Library/PcdLib.h>
#include <Library/IoLib.h>
/**
Sends an 32-bit value to a POST card.

View File

@ -47,7 +47,6 @@
[Sources.common]
TimerLibNull.c
CommonHeader.h
################################################################################

View File

@ -1,32 +0,0 @@
/**@file
Common header file shared by all source files.
This file includes package header files, library classes and protocol, PPI & GUID definitions.
Copyright (c) 2007, Intel Corporation.
All rights reserved. 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.
**/
#ifndef __COMMON_HEADER_H_
#define __COMMON_HEADER_H_
//
// The package level header files this module uses
//
#include <Base.h>
//
// The protocols, PPI and GUID defintions for this module
//
//
// The Library classes this module consumes
//
#include <Library/TimerLib.h>
#include <Library/DebugLib.h>
#endif

View File

@ -15,9 +15,17 @@
**/
//
// Include common header file for this module.
// The package level header files this module uses
//
#include "CommonHeader.h"
#include <Base.h>
//
// The protocols, PPI and GUID defintions for this module
//
//
// The Library classes this module consumes
//
#include <Library/TimerLib.h>
#include <Library/DebugLib.h>
/**
Stalls the CPU for at least the given number of microseconds.

View File

@ -15,9 +15,18 @@
**/
//
// Include common header file for this module.
// The package level header files this module uses
//
#include "CommonHeader.h"
#include <Base.h>
//
// The protocols, PPI and GUID defintions for this module
//
//
// The Library classes this module consumes
//
#include <Library/UefiDecompressLib.h>
#include <Library/DebugLib.h>
#include <Library/BaseMemoryLib.h>
#include "BaseUefiDecompressLibInternals.h"

View File

@ -45,7 +45,6 @@
[Sources.common]
BaseUefiDecompressLibInternals.h
BaseUefiDecompressLib.c
CommonHeader.h
################################################################################

View File

@ -1,33 +0,0 @@
/**@file
Common header file shared by all source files.
This file includes package header files, library classes and protocol, PPI & GUID definitions.
Copyright (c) 2007, Intel Corporation.
All rights reserved. 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.
**/
#ifndef __COMMON_HEADER_H_
#define __COMMON_HEADER_H_
//
// The package level header files this module uses
//
#include <Base.h>
//
// The protocols, PPI and GUID defintions for this module
//
//
// The Library classes this module consumes
//
#include <Library/UefiDecompressLib.h>
#include <Library/DebugLib.h>
#include <Library/BaseMemoryLib.h>
#endif

View File

@ -1,33 +0,0 @@
/**@file
Common header file shared by all source files.
This file includes package header files, library classes and protocol, PPI & GUID definitions.
Copyright (c) 2007, Intel Corporation.
All rights reserved. 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.
**/
#ifndef __COMMON_HEADER_H_
#define __COMMON_HEADER_H_
//
// The package level header files this module uses
//
#include <PiDxe.h>
//
// The protocols, PPI and GUID defintions for this module
//
//
// The Library classes this module consumes
//
#include <Library/DxeCoreEntryPoint.h>
#include <Library/DebugLib.h>
#include <Library/BaseLib.h>
#endif

View File

@ -13,9 +13,18 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
**/
//
// Include common header file for this module.
// The package level header files this module uses
//
#include "CommonHeader.h"
#include <PiDxe.h>
//
// The protocols, PPI and GUID defintions for this module
//
//
// The Library classes this module consumes
//
#include <Library/DxeCoreEntryPoint.h>
#include <Library/DebugLib.h>
#include <Library/BaseLib.h>
//
// Cache copy of HobList pointer.

View File

@ -44,7 +44,6 @@
[Sources.common]
DxeCoreEntryPoint.c
CommonHeader.h
################################################################################

View File

@ -1,33 +0,0 @@
/**@file
Common header file shared by all source files.
This file includes package header files, library classes and protocol, PPI & GUID definitions.
Copyright (c) 2007, Intel Corporation.
All rights reserved. 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.
**/
#ifndef __COMMON_HEADER_H_
#define __COMMON_HEADER_H_
//
// The package level header files this module uses
//
#include <PiDxe.h>
//
// The protocols, PPI and GUID defintions for this module
//
//
// The Library classes this module consumes
//
#include <Library/HobLib.h>
#include <Library/DebugLib.h>
#include <Library/BaseMemoryLib.h>
#endif

View File

@ -44,9 +44,8 @@
################################################################################
[Sources.common]
HobLib.h
InternalHobLib.h
HobLib.c
CommonHeader.h
################################################################################

View File

@ -14,12 +14,22 @@
**/
//
// Include common header file for this module.
//
#include "CommonHeader.h"
#include "HobLib.h"
//
// The package level header files this module uses
//
#include <PiDxe.h>
//
// The protocols, PPI and GUID defintions for this module
//
//
// The Library classes this module consumes
//
#include <Library/HobLib.h>
#include <Library/DebugLib.h>
#include <Library/BaseMemoryLib.h>
#include "InternalHobLib.h""
/**
Returns the pointer to the HOB list.

View File

@ -17,11 +17,6 @@
#ifndef __DXE_ENTRY_POINT_HOB_LIB_H__
#define __DXE_ENTRY_POINT_HOB_LIB_H__
//
// Include common header file for this module.
//
#include "CommonHeader.h"
extern VOID *gHobList;
#endif

View File

@ -1,35 +0,0 @@
/**@file
Common header file shared by all source files.
This file includes package header files, library classes and protocol, PPI & GUID definitions.
Copyright (c) 2007, Intel Corporation.
All rights reserved. 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.
**/
#ifndef __COMMON_HEADER_H_
#define __COMMON_HEADER_H_
//
// The package level header files this module uses
//
#include <PiDxe.h>
//
// The protocols, PPI and GUID defintions for this module
//
#include <Guid/HobList.h>
//
// The Library classes this module consumes
//
#include <Library/HobLib.h>
#include <Library/UefiLib.h>
#include <Library/DebugLib.h>
#include <Library/BaseMemoryLib.h>
#endif

View File

@ -46,7 +46,6 @@
[Sources.common]
HobLib.c
CommonHeader.h
################################################################################

View File

@ -15,11 +15,21 @@
**/
//
// Include common header file for this module.
// The package level header files this module uses
//
#include "CommonHeader.h"
#include <PiDxe.h>
//
// The protocols, PPI and GUID defintions for this module
//
#include <Guid/HobList.h>
//
// The Library classes this module consumes
//
#include <Library/HobLib.h>
#include <Library/UefiLib.h>
#include <Library/DebugLib.h>
#include <Library/BaseMemoryLib.h>
STATIC VOID *mHobList = NULL;

View File

@ -46,7 +46,6 @@
[Sources.common]
MemoryAllocationLibInternals.h
MemoryAllocationLib.c
CommonHeader.h
################################################################################

View File

@ -15,9 +15,19 @@
**/
//
// Include common header file for this module.
// The package level header files this module uses
//
#include "CommonHeader.h"
#include <PiDxe.h>
//
// The protocols, PPI and GUID defintions for this module
//
//
// The Library classes this module consumes
//
#include <Library/MemoryAllocationLib.h>
#include <Library/UefiBootServicesTableLib.h>
#include <Library/BaseMemoryLib.h>
#include <Library/DebugLib.h>
#include "MemoryAllocationLibInternals.h"

View File

@ -17,11 +17,6 @@
#ifndef __DXE_MEMORY_ALLOCATION_LIB_INTERNALS_H__
#define __DXE_MEMORY_ALLOCATION_LIB_INTERNALS_H__
//
// Include common header file for this module.
//
#include "CommonHeader.h"
/**
Allocates one or more 4KB pages of a certain memory type.

View File

@ -1,35 +0,0 @@
/**@file
Common header file shared by all source files.
This file includes package header files, library classes and protocol, PPI & GUID definitions.
Copyright (c) 2007, Intel Corporation.
All rights reserved. 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.
**/
#ifndef __COMMON_HEADER_H_
#define __COMMON_HEADER_H_
//
// The package level header files this module uses
//
#include <PiDxe.h>
//
// The protocols, PPI and GUID defintions for this module
//
#include <Protocol/Pcd.h>
//
// The Library classes this module consumes
//
#include <Library/PcdLib.h>
#include <Library/DebugLib.h>
#include <Library/UefiBootServicesTableLib.h>
#include <Library/BaseMemoryLib.h>
#endif

View File

@ -16,9 +16,20 @@ Module Name: DxePcdLib.c
**/
//
// Include common header file for this module.
// The package level header files this module uses
//
#include "CommonHeader.h"
#include <PiDxe.h>
//
// The protocols, PPI and GUID defintions for this module
//
#include <Protocol/Pcd.h>
//
// The Library classes this module consumes
//
#include <Library/PcdLib.h>
#include <Library/DebugLib.h>
#include <Library/UefiBootServicesTableLib.h>
#include <Library/BaseMemoryLib.h>
static PCD_PROTOCOL *mPcd;

View File

@ -47,7 +47,6 @@
[Sources.common]
DxePcdLib.c
CommonHeader.h
################################################################################

View File

@ -14,11 +14,20 @@
**/
//
// Include common header file for this module.
// The package level header files this module uses
//
#include "CommonHeader.h"
#include <PiDxe.h>
//
// The protocols, PPI and GUID defintions for this module
//
#include <Guid/DxeServices.h>
//
// The Library classes this module consumes
//
#include <Library/DxeServicesTableLib.h>
#include <Library/DebugLib.h>
#include <Library/UefiLib.h>
//
// Cache copy of the DXE Services Table

View File

@ -46,7 +46,6 @@
[Sources.common]
DxeServicesTableLib.c
CommonHeader.h
################################################################################

View File

@ -1,31 +0,0 @@
/**@file
Common header file shared by all source files.
This file includes package header files, library classes and protocol, PPI & GUID definitions.
Copyright (c) 2007 - 2007, Intel Corporation.
All rights reserved. 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.
**/
#ifndef __COMMON_HEADER_H_
#define __COMMON_HEADER_H_
//
// The package level header files this module uses
//
#include <PiPei.h>
//
// The protocols, PPI and GUID defintions for this module
//
//
// The Library classes this module consumes
//
#include <Library/PeiCoreEntryPoint.h>
#endif

View File

@ -1,7 +1,7 @@
/** @file
Entry point to a the PEI Core.
Copyright (c) 2007, Intel Corporation<BR>
Copyright (c) 2006 - 2007, Intel Corporation<BR>
All rights reserved. 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
@ -13,11 +13,19 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
**/
//
// Include common header file for this module.
// The package level header files this module uses
//
#include "CommonHeader.h"
#include <PiPei.h>
//
// The protocols, PPI and GUID defintions for this module
//
//
// The Library classes this module produced
//
#include <Library/PeiCoreEntryPoint.h>
/**
Enrty point to PEI core.
@param SecCoreData Points to a data structure containing
@ -40,23 +48,21 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
and/or code in these early PPIs.
**/
EFI_STATUS
EFIAPI
_ModuleEntryPoint (
IN CONST EFI_SEC_PEI_HAND_OFF *SecCoreData,
IN CONST EFI_PEI_PPI_DESCRIPTOR *PpiList
)
VOID
EFIAPI
_ModuleEntryPoint(
IN CONST EFI_SEC_PEI_HAND_OFF *SecCoreData,
IN CONST EFI_PEI_PPI_DESCRIPTOR *PpiList
)
{
//
// Call the PEI Core entry point
//
return ProcessModuleEntryPointList (SecCoreData, PpiList, NULL);
ProcessModuleEntryPointList (SecCoreData, PpiList, NULL);
}
/**
Wrapper of enrty point to PEI core.
@param SecCoreData Points to a data structure containing
information about the PEI core's
operating environment, such as the size
@ -77,11 +83,12 @@ _ModuleEntryPoint (
and/or code in these early PPIs.
**/
EFI_STATUS
VOID
EFIAPI
EfiMain (
IN CONST EFI_SEC_PEI_HAND_OFF *SecCoreData,
IN CONST EFI_PEI_PPI_DESCRIPTOR *PpiList
IN CONST EFI_SEC_PEI_HAND_OFF *SecCoreData,
IN CONST EFI_PEI_PPI_DESCRIPTOR *PpiList
)
{
return _ModuleEntryPoint (SecCoreData, PpiList);
_ModuleEntryPoint (SecCoreData, PpiList);
}

View File

@ -44,7 +44,6 @@
[Sources.common]
PeiCoreEntryPoint.c
CommonHeader.h
################################################################################

View File

@ -1,34 +0,0 @@
/**@file
Common header file shared by all source files.
This file includes package header files, library classes and protocol, PPI & GUID definitions.
Copyright (c) 2007, Intel Corporation
All rights reserved. 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.
**/
#ifndef __COMMON_HEADER_H_
#define __COMMON_HEADER_H_
//
// The package level header files this module uses
//
#include <PiPei.h>
//
// The protocols, PPI and GUID defintions for this module
//
//
// The Library classes this module consumes
//
#include <Library/MemoryAllocationLib.h>
#include <Library/PeiServicesTablePointerLib.h>
#include <Library/BaseMemoryLib.h>
#include <Library/DebugLib.h>
#endif

View File

@ -15,9 +15,19 @@
**/
//
// Include common header file for this module.
// The package level header files this module uses
//
#include "CommonHeader.h"
#include <PiPei.h>
//
// The protocols, PPI and GUID defintions for this module
//
//
// The Library classes this module consumes
//
#include <Library/MemoryAllocationLib.h>
#include <Library/PeiServicesTablePointerLib.h>
#include <Library/BaseMemoryLib.h>
#include <Library/DebugLib.h>
#include "MemoryAllocationLibInternals.h"

View File

@ -17,11 +17,6 @@
#ifndef __PEI_MEMORY_ALLOCATION_LIB_INTERNALS_H__
#define __PEI_MEMORY_ALLOCATION_LIB_INTERNALS_H__
//
// Include common header file for this module.
//
#include "CommonHeader.h"
/**
Allocates one or more 4KB pages of a certain memory type.

View File

@ -46,7 +46,6 @@
[Sources.common]
MemoryAllocationLibInternals.h
MemoryAllocationLib.c
CommonHeader.h
################################################################################

View File

@ -1,35 +0,0 @@
/**@file
Common header file shared by all source files.
This file includes package header files, library classes and protocol, PPI & GUID definitions.
Copyright (c) 2007, Intel Corporation
All rights reserved. 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.
**/
#ifndef __COMMON_HEADER_H_
#define __COMMON_HEADER_H_
//
// The package level header files this module uses
//
#include <PiPei.h>
//
// The protocols, PPI and GUID defintions for this module
//
#include <Ppi/Pcd.h>
//
// The Library classes this module consumes
//
#include <Library/PcdLib.h>
#include <Library/DebugLib.h>
#include <Library/PeiServicesTablePointerLib.h>
#include <Library/BaseMemoryLib.h>
#endif

View File

@ -18,9 +18,20 @@ Module Name: PeiPcdLib.c
//
// Include common header file for this module.
// The package level header files this module uses
//
#include "CommonHeader.h"
#include <PiPei.h>
//
// The protocols, PPI and GUID defintions for this module
//
#include <Ppi/Pcd.h>
//
// The Library classes this module consumes
//
#include <Library/PcdLib.h>
#include <Library/DebugLib.h>
#include <Library/PeiServicesTablePointerLib.h>
#include <Library/BaseMemoryLib.h>
/**
The constructor function retrieve the PCD_PPI pointer.

View File

@ -46,7 +46,6 @@
[Sources.common]
PeiPcdLib.c
CommonHeader.h
################################################################################

View File

@ -1,33 +0,0 @@
/**@file
Common header file shared by all source files.
This file includes package header files, library classes and protocol, PPI & GUID definitions.
Copyright (c) 2007, Intel Corporation
All rights reserved. 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.
**/
#ifndef __COMMON_HEADER_H_
#define __COMMON_HEADER_H_
//
// The package level header files this module uses
//
#include <PiPei.h>
//
// The protocols, PPI and GUID defintions for this module
//
//
// The Library classes this module consumes
//
#include <Library/ResourcePublicationLib.h>
#include <Library/PeiServicesLib.h>
#include <Library/DebugLib.h>
#endif

View File

@ -16,9 +16,19 @@
//
// Include common header file for this module.
// The package level header files this module uses
//
#include "CommonHeader.h"
#include <PiPei.h>
//
// The protocols, PPI and GUID defintions for this module
//
//
// The Library classes this module consumes
//
#include <Library/ResourcePublicationLib.h>
#include <Library/PeiServicesLib.h>
#include <Library/DebugLib.h>
/**

View File

@ -44,7 +44,6 @@
[Sources.common]
PeiResourcePublicationLib.c
CommonHeader.h
################################################################################

View File

@ -1,32 +0,0 @@
/**@file
Common header file shared by all source files.
This file includes package header files, library classes and protocol, PPI & GUID definitions.
Copyright (c) 2007 - 2007, Intel Corporation.
All rights reserved. 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.
**/
#ifndef __COMMON_HEADER_H_
#define __COMMON_HEADER_H_
//
// The package level header files this module uses
//
#include <PiPei.h>
//
// The protocols, PPI and GUID defintions for this module
//
//
// The Library classes this module consumes
//
#include <Library/PeiServicesLib.h>
#include <Library/PeiServicesTablePointerLib.h>
#endif

View File

@ -15,9 +15,17 @@
**/
//
// Include common header file for this module.
// The package level header files this module uses
//
#include "CommonHeader.h"
#include <PiPei.h>
//
// The protocols, PPI and GUID defintions for this module
//
//
// The Library classes this module consumes
//
#include <Library/PeiServicesLib.h>
#include <Library/PeiServicesTablePointerLib.h>
/**
This service enables a given PEIM to register an interface into the PEI Foundation.

View File

@ -44,7 +44,6 @@
[Sources.common]
PeiServicesLib.c
CommonHeader.h
################################################################################

View File

@ -17,9 +17,17 @@
//
// Include common header file for this module.
// The package level header files this module uses
//
#include "CommonHeader.h"
#include <PiPei.h>
//
// The protocols, PPI and GUID defintions for this module
//
//
// The Library classes this module consumes
//
#include <Library/PeiServicesTablePointerLib.h>
#include <Library/DebugLib.h>
static EFI_PEI_SERVICES **gPeiServices;

View File

@ -47,7 +47,6 @@
[Sources.common]
PeiServicesTablePointer.c
CommonHeader.h
################################################################################

View File

@ -0,0 +1,36 @@
#------------------------------------------------------------------------------
#
# Copyright (c) 2006, Intel Corporation
# All rights reserved. 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.
#
# Module Name:
#
# ReadIdtr.Asm
#
# Abstract:
#
# AsmPeiSevicesTablePointer function
#
# Notes:
#
#------------------------------------------------------------------------------
.globl ASM_PFX(AsmPeiSevicesTablePointer)
#------------------------------------------------------------------------------
# EFI_PEI_SERVICES **
# EFIAPI
# AsmPeiSevicesTablePointer (
# );
#------------------------------------------------------------------------------
ASM_PFX(AsmPeiSevicesTablePointer):
movl 4(%esp), %eax
sidt (%eax)
movl -4(%eax), %eax
ret

View File

@ -0,0 +1,41 @@
;------------------------------------------------------------------------------
;
; Copyright (c) 2006, Intel Corporation
; All rights reserved. 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.
;
; Module Name:
;
; AsmPeiSevicesTablePointer.Asm
;
; Abstract:
;
; AsmPeiSevicesTablePointer function
;
; Notes:
;
;------------------------------------------------------------------------------
.386
.model flat,C
.code
;------------------------------------------------------------------------------
; EFI_PEI_SERVICES **
; EFIAPI
; AsmPeiSevicesTablePointer (
; );
;------------------------------------------------------------------------------
PeiServicesTablePointer PROC
mov eax, [esp + 4]
sidt fword ptr [eax]
mov eax, [eax - 4]
ret
PeiServicesTablePointer ENDP
END

View File

@ -0,0 +1,25 @@
/** @file
AsmReadIdtr function
Copyright (c) 2006 - 2007, Intel Corporation<BR>
All rights reserved. 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.
**/
EFI_PEI_SERVICES **
EFIAPI
AsmPeiSevicesTablePointer (
VOID
)
{
_asm {
sidt fword ptr [eax]
mov eax, [eax - 4]
}
}

View File

@ -0,0 +1,31 @@
/*++
Copyright (c) 2006 - 2007 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:
InternalPeiServicesTablePointer.h
--*/
#ifndef __INTERNAL_PEI_SERVICES_TABLE_POINTER_H__
#define __INTERNAL_PEI_SERVICES_TABLE_POINTER_H__
extern
EFI_PEI_SERVICES **
EFIAPI
AsmPeiSevicesTablePointer (
VOID
);
#endif

View File

@ -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;
}

View File

@ -0,0 +1,50 @@
<?xml version="1.0" encoding="UTF-8"?>
<ModuleSurfaceArea xmlns="http://www.TianoCore.org/2006/Edk2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<MsaHeader>
<ModuleName>PeiServicesTablePointerLibIdt</ModuleName>
<ModuleType>PEIM</ModuleType>
<GuidValue>DED3F743-CE2C-4ba6-92A2-FFCE2A6D72D9</GuidValue>
<Version>1.0</Version>
<Abstract>Component description file for IPF KR1 Pei Services Table Pointer Library</Abstract>
<Description>PEI Services Table Library implementation that retrieves a pointer to the PEI
Services Table from the KR1 register on IPF.</Description>
<Copyright>Copyright (c) 2006 - 2007, Intel Corporation.</Copyright>
<License>All rights reserved. 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.</License>
<Specification>FRAMEWORK_BUILD_PACKAGING_SPECIFICATION 0x00000052</Specification>
</MsaHeader>
<ModuleDefinitions>
<SupportedArchitectures>IA32 X64</SupportedArchitectures>
<BinaryModule>false</BinaryModule>
<OutputFileBasename>PeiServicesTablePointerLibIdt</OutputFileBasename>
</ModuleDefinitions>
<LibraryClassDefinitions>
<LibraryClass Usage="ALWAYS_PRODUCED" SupModuleList="PEIM PEI_CORE">
<Keyword>PeiServicesTablePointerLib</Keyword>
</LibraryClass>
<LibraryClass Usage="ALWAYS_CONSUMED">
<Keyword>DebugLib</Keyword>
</LibraryClass>
</LibraryClassDefinitions>
<SourceFiles>
<Filename SupArchList="IA32 X64">PeiServicesTablePointer.c</Filename>
<Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/AsmPeiSevicesTablePointer.S</Filename>
<Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/AsmPeiSevicesTablePointer.c</Filename>
<Filename SupArchList="X64" ToolChainFamily="GCC">x64/AsmPeiSevicesTablePointer.S</Filename>
<Filename SupArchList="X64" ToolChainFamily="MSFT">x64/AsmPeiSevicesTablePointer.asm</Filename>
</SourceFiles>
<NonProcessedFiles>
<Filename>Ia32/AsmPeiSevicesTablePointer.Asm</Filename>
</NonProcessedFiles>
<PackageDependencies>
<Package PackageGuid="5e0e9358-46b6-4ae2-8218-4ab8b9bbdcec"/>
</PackageDependencies>
<Externs>
<Specification>EFI_SPECIFICATION_VERSION 0x00020000</Specification>
<Specification>EDK_RELEASE_VERSION 0x00020000</Specification>
</Externs>
</ModuleSurfaceArea>

View File

@ -0,0 +1,36 @@
#------------------------------------------------------------------------------
#
# Copyright (c) 2006, Intel Corporation
# All rights reserved. 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.
#
# Module Name:
#
# AsmPeiSevicesTablePointer.S
#
# Abstract:
#
# AsmPeiSevicesTablePointer function
#
# Notes:
#
#------------------------------------------------------------------------------
#------------------------------------------------------------------------------
# EFI_PEI_SERVICES **
# EFIAPI
# AsmPeiSevicesTablePointer (
# );
#------------------------------------------------------------------------------
.global AsmPeiSevicesTablePointer;
.align 16;
AsmPeiSevicesTablePointer:
sidt (%rcx)
movq -8(%rcx), %rcx
ret

View File

@ -0,0 +1,38 @@
;------------------------------------------------------------------------------
;
; Copyright (c) 2006, Intel Corporation
; All rights reserved. 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.
;
; Module Name:
;
; ReadIdtr.Asm
;
; Abstract:
;
; AsmPeiSevicesTablePointer function
;
; Notes:
;
;------------------------------------------------------------------------------
.code
;------------------------------------------------------------------------------
; EFI_PEI_SERVICES **
; EFIAPI
; AsmPeiSevicesTablePointer (
; );
;------------------------------------------------------------------------------
AsmPeiSevicesTablePointer PROC
sidt fword ptr [rcx]
mov rcx, [rcx - 8]
ret
AsmPeiSevicesTablePointer ENDP
END

View File

@ -0,0 +1,46 @@
/*++
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 <Library/BaseLib.h>
/**
The function returns the pointer to PeiServices.
The function returns the pointer to PeiServices.
It will ASSERT() if the pointer to PeiServices is NULL.
@retval The pointer to PeiServices.
**/
EFI_PEI_SERVICES **
EFIAPI
GetPeiServicesTablePointer (
VOID
)
{
EFI_PEI_SERVICES **PeiServices;
PeiServices = (EFI_PEI_SERVICES **)(UINTN)AsmReadKr7 ();
ASSERT (PeiServices != NULL);
return PeiServices;
}

View File

@ -0,0 +1,43 @@
<?xml version="1.0" encoding="UTF-8"?>
<ModuleSurfaceArea xmlns="http://www.TianoCore.org/2006/Edk2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<MsaHeader>
<ModuleName>PeiServicesTablePointerLibKr7</ModuleName>
<ModuleType>PEIM</ModuleType>
<GuidValue>E0E7D776-E7EB-4e5f-9AA8-54CF3AA64A43</GuidValue>
<Version>1.0</Version>
<Abstract>Component description file for IPF KR1 Pei Services Table Pointer Library</Abstract>
<Description>PEI Services Table Library implementation that retrieves a pointer to the PEI
Services Table from the KR1 register on IPF.</Description>
<Copyright>Copyright (c) 2006 - 2007, Intel Corporation.</Copyright>
<License>All rights reserved. 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.</License>
<Specification>FRAMEWORK_BUILD_PACKAGING_SPECIFICATION 0x00000052</Specification>
</MsaHeader>
<ModuleDefinitions>
<SupportedArchitectures>IPF</SupportedArchitectures>
<BinaryModule>false</BinaryModule>
<OutputFileBasename>PeiServicesTablePointerLibKr7</OutputFileBasename>
</ModuleDefinitions>
<LibraryClassDefinitions>
<LibraryClass Usage="ALWAYS_PRODUCED" SupModuleList="PEIM PEI_CORE">
<Keyword>PeiServicesTablePointerLib</Keyword>
</LibraryClass>
<LibraryClass Usage="ALWAYS_CONSUMED">
<Keyword>DebugLib</Keyword>
</LibraryClass>
</LibraryClassDefinitions>
<SourceFiles>
<Filename>PeiServicesTablePointer.c</Filename>
</SourceFiles>
<PackageDependencies>
<Package PackageGuid="5e0e9358-46b6-4ae2-8218-4ab8b9bbdcec"/>
</PackageDependencies>
<Externs>
<Specification>EFI_SPECIFICATION_VERSION 0x00020000</Specification>
<Specification>EDK_RELEASE_VERSION 0x00020000</Specification>
</Externs>
</ModuleSurfaceArea>

View File

@ -1,32 +0,0 @@
/**@file
Common header file shared by all source files.
This file includes package header files, library classes and protocol, PPI & GUID definitions.
Copyright (c) 2007, Intel Corporation.
All rights reserved. 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.
**/
#ifndef __COMMON_HEADER_H_
#define __COMMON_HEADER_H_
//
// The package level header files this module uses
//
#include <PiPei.h>
//
// The protocols, PPI and GUID defintions for this module
//
//
// The Library classes this module consumes
//
#include <Library/PeimEntryPoint.h>
#include <Library/DebugLib.h>
#endif

View File

@ -14,9 +14,17 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
**/
//
// Include common header file for this module.
// The package level header files this module uses
//
#include "CommonHeader.h"
#include <PiPei.h>
//
// The protocols, PPI and GUID defintions for this module
//
//
// The Library classes this module consumes
//
#include <Library/PeimEntryPoint.h>
#include <Library/DebugLib.h>
/**
Image entry point of Peim.

View File

@ -44,7 +44,6 @@
[Sources.common]
PeimEntryPoint.c
CommonHeader.h
################################################################################

View File

@ -13,9 +13,17 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
**/
//
// Include common header file for this module.
// The package level header files this module uses
//
#include "CommonHeader.h"
#include <Uefi.h>
//
// The protocols, PPI and GUID defintions for this module
//
//
// The Library classes this module consumes
//
#include <Library/UefiApplicationEntryPoint.h>
#include <Library/UefiBootServicesTableLib.h>
/**
Enrty point to UEFI application.

View File

@ -44,7 +44,6 @@
[Sources.common]
ApplicationEntryPoint.c
CommonHeader.h
################################################################################

View File

@ -1,32 +0,0 @@
/**@file
Common header file shared by all source files.
This file includes package header files, library classes and protocol, PPI & GUID definitions.
Copyright (c) 2007, Intel Corporation.
All rights reserved. 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.
**/
#ifndef __COMMON_HEADER_H_
#define __COMMON_HEADER_H_
//
// The package level header files this module uses
//
#include <PiDxe.h>
//
// The protocols, PPI and GUID defintions for this module
//
//
// The Library classes this module consumes
//
#include <Library/UefiBootServicesTableLib.h>
#include <Library/DebugLib.h>
#endif

View File

@ -15,9 +15,17 @@
**/
//
// Include common header file for this module.
// The package level header files this module uses
//
#include "CommonHeader.h"
#include <PiDxe.h>
//
// The protocols, PPI and GUID defintions for this module
//
//
// The Library classes this module consumes
//
#include <Library/UefiBootServicesTableLib.h>
#include <Library/DebugLib.h>
EFI_HANDLE gImageHandle = NULL;
EFI_SYSTEM_TABLE *gST = NULL;

View File

@ -45,7 +45,6 @@
[Sources.common]
UefiBootServicesTableLib.c
CommonHeader.h
################################################################################

View File

@ -1,36 +0,0 @@
/**@file
Common header file shared by all source files.
This file includes package header files, library classes and protocol, PPI & GUID definitions.
Copyright (c) 2007, Intel Corporation.
All rights reserved. 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.
**/
#ifndef __COMMON_HEADER_H_
#define __COMMON_HEADER_H_
//
// The package level header files this module uses
//
#include <Uefi.h>
//
// The protocols, PPI and GUID defintions for this module
//
//
// The Library classes this module consumes
//
#include <Library/DebugLib.h>
#include <Library/UefiBootServicesTableLib.h>
#include <Library/PrintLib.h>
#include <Library/PcdLib.h>
#include <Library/BaseLib.h>
#include <Library/BaseMemoryLib.h>
#endif

View File

@ -13,9 +13,22 @@
**/
//
// Include common header file for this module.
// The package level header files this module uses
//
#include "CommonHeader.h"
#include <Uefi.h>
//
// The protocols, PPI and GUID defintions for this module
//
//
// The Library classes this module consumes
//
#include <Library/DebugLib.h>
#include <Library/UefiBootServicesTableLib.h>
#include <Library/PrintLib.h>
#include <Library/PcdLib.h>
#include <Library/BaseLib.h>
#include <Library/BaseMemoryLib.h>
//
// Define the maximum debug and assert message length that this library supports

View File

@ -44,7 +44,6 @@
[Sources.common]
DebugLib.c
CommonHeader.h
################################################################################

View File

@ -1,36 +0,0 @@
/**@file
Common header file shared by all source files.
This file includes package header files, library classes and protocol, PPI & GUID definitions.
Copyright (c) 2007, Intel Corporation.
All rights reserved. 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.
**/
#ifndef __COMMON_HEADER_H_
#define __COMMON_HEADER_H_
//
// The package level header files this module uses
//
#include <Uefi.h>
//
// The protocols, PPI and GUID defintions for this module
//
//
// The Library classes this module consumes
//
#include <Library/DebugLib.h>
#include <Library/UefiBootServicesTableLib.h>
#include <Library/PrintLib.h>
#include <Library/PcdLib.h>
#include <Library/BaseLib.h>
#include <Library/BaseMemoryLib.h>
#endif

View File

@ -13,9 +13,21 @@
**/
//
// Include common header file for this module.
// The package level header files this module uses
//
#include "CommonHeader.h"
#include <Uefi.h>
//
// The protocols, PPI and GUID defintions for this module
//
//
// The Library classes this module consumes
//
#include <Library/DebugLib.h>
#include <Library/UefiBootServicesTableLib.h>
#include <Library/PrintLib.h>
#include <Library/PcdLib.h>
#include <Library/BaseLib.h>
#include <Library/BaseMemoryLib.h>
//
// Define the maximum debug and assert message length that this library supports

Some files were not shown because too many files have changed in this diff Show More