Add in the 1st version of ECP.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@2832 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
@@ -0,0 +1,777 @@
|
||||
/*++
|
||||
|
||||
Copyright (c) 2004 - 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:
|
||||
|
||||
EdkIIGlueDepedencies.h
|
||||
|
||||
Abstract:
|
||||
|
||||
Header file that lists dependency relations among library instances
|
||||
|
||||
--*/
|
||||
|
||||
#ifndef __EDKII_GLUE_DEPENDENCIES_H__
|
||||
#define __EDKII_GLUE_DEPENDENCIES_H__
|
||||
|
||||
#include "EdkIIGlueProcessorBind.h"
|
||||
|
||||
//
|
||||
// Declarations of dependencies among EdkII Glue Library instances and R8 Libraries
|
||||
// Pay attention to the order of following #define structures
|
||||
//
|
||||
|
||||
|
||||
//
|
||||
// PeiDxeDebugLibReportStatusCode
|
||||
// Actually almost every module and GlueLib instance needs this library, but GlueLib
|
||||
// instances don't have to list this library in their own inf files. Module inf
|
||||
// does this.
|
||||
//
|
||||
#ifdef __EDKII_GLUE_PEI_DXE_DEBUG_LIB_REPORT_STATUS_CODE__
|
||||
#ifndef __EDKII_GLUE_BASE_LIB__
|
||||
#define __EDKII_GLUE_BASE_LIB__
|
||||
#endif
|
||||
#ifndef __EDKII_GLUE_BASE_MEMORY_LIB__
|
||||
#define __EDKII_GLUE_BASE_MEMORY_LIB__
|
||||
#endif
|
||||
#endif
|
||||
|
||||
//
|
||||
// BaseDebugLibNull
|
||||
//
|
||||
#ifdef __EDKII_GLUE_BASE_DEBUG_LIB_NULL__
|
||||
#ifndef __EDKII_GLUE_BASE_LIB__
|
||||
#define __EDKII_GLUE_BASE_LIB__
|
||||
#endif
|
||||
#ifndef __EDKII_GLUE_BASE_MEMORY_LIB__
|
||||
#define __EDKII_GLUE_BASE_MEMORY_LIB__
|
||||
#endif
|
||||
#ifndef __EDKII_GLUE_BASE_PRINT_LIB__
|
||||
#define __EDKII_GLUE_BASE_PRINT_LIB__
|
||||
#endif
|
||||
#endif
|
||||
|
||||
//
|
||||
// EdkDxeRuntimeDriverLib
|
||||
//
|
||||
#ifdef __EDKII_GLUE_EDK_DXE_RUNTIME_DRIVER_LIB__
|
||||
#ifndef __EDKII_GLUE_UEFI_LIB__
|
||||
#define __EDKII_GLUE_UEFI_LIB__
|
||||
#endif
|
||||
#ifndef __EDKII_GLUE_BASE_LIB__
|
||||
#define __EDKII_GLUE_BASE_LIB__
|
||||
#endif
|
||||
#ifndef __EDKII_GLUE_UEFI_BOOT_SERVICES_TABLE_LIB__
|
||||
#define __EDKII_GLUE_UEFI_BOOT_SERVICES_TABLE_LIB__
|
||||
#endif
|
||||
#ifdef MDE_CPU_IPF // IPF
|
||||
#ifndef __EDKII_GLUE_EDK_DXE_SAL_LIB__
|
||||
#define __EDKII_GLUE_EDK_DXE_SAL_LIB__
|
||||
#endif
|
||||
#endif // IPF
|
||||
#endif
|
||||
|
||||
//
|
||||
// EdkDxeSalLib
|
||||
//
|
||||
#ifdef __EDKII_GLUE_EDK_DXE_SAL_LIB__
|
||||
#ifndef __EDKII_GLUE_BASE_LIB__
|
||||
#define __EDKII_GLUE_BASE_LIB__
|
||||
#endif
|
||||
#ifndef __EDKII_GLUE_UEFI_BOOT_SERVICES_TABLE_LIB__
|
||||
#define __EDKII_GLUE_UEFI_BOOT_SERVICES_TABLE_LIB__
|
||||
#endif
|
||||
#endif
|
||||
|
||||
//
|
||||
// BasePciLibCf8
|
||||
//
|
||||
#ifdef __EDKII_GLUE_BASE_PCI_LIB_CF8__
|
||||
#ifndef __EDKII_GLUE_BASE_PCI_CF8_LIB__
|
||||
#define __EDKII_GLUE_BASE_PCI_CF8_LIB__
|
||||
#endif
|
||||
#endif
|
||||
|
||||
//
|
||||
// BasePciLibPciExpress
|
||||
//
|
||||
#ifdef __EDKII_GLUE_BASE_PCI_LIB_PCI_EXPRESS__
|
||||
#ifndef __EDKII_GLUE_BASE_PCI_EXPRESS_LIB__
|
||||
#define __EDKII_GLUE_BASE_PCI_EXPRESS_LIB__
|
||||
#endif
|
||||
#endif
|
||||
|
||||
//
|
||||
// BasePciCf8Lib
|
||||
//
|
||||
#ifdef __EDKII_GLUE_BASE_PCI_CF8_LIB__
|
||||
#ifndef MDE_CPU_EBC
|
||||
#ifndef __EDKII_GLUE_BASE_IO_LIB_INTRINSIC__
|
||||
#define __EDKII_GLUE_BASE_IO_LIB_INTRINSIC__
|
||||
#endif
|
||||
#else
|
||||
#ifndef __EDKII_GLUE_DXE_IO_LIB_CPU_IO__
|
||||
#define __EDKII_GLUE_DXE_IO_LIB_CPU_IO__
|
||||
#endif
|
||||
#endif
|
||||
#endif
|
||||
|
||||
//
|
||||
// BasePciExpressLib
|
||||
//
|
||||
#ifdef __EDKII_GLUE_BASE_PCI_EXPRESS_LIB__
|
||||
#ifndef MDE_CPU_EBC
|
||||
#ifndef __EDKII_GLUE_BASE_IO_LIB_INTRINSIC__
|
||||
#define __EDKII_GLUE_BASE_IO_LIB_INTRINSIC__
|
||||
#endif
|
||||
#else
|
||||
#ifndef __EDKII_GLUE_DXE_IO_LIB_CPU_IO__
|
||||
#define __EDKII_GLUE_DXE_IO_LIB_CPU_IO__
|
||||
#endif
|
||||
#endif
|
||||
#endif
|
||||
|
||||
//
|
||||
// BaseTimerLibLocalApic
|
||||
//
|
||||
#ifdef __EDKII_GLUE_BASE_TIMER_LIB_LOCAL_APIC__
|
||||
#ifndef __EDKII_GLUE_BASE_LIB__
|
||||
#define __EDKII_GLUE_BASE_LIB__
|
||||
#endif
|
||||
#ifndef MDE_CPU_EBC
|
||||
#ifndef __EDKII_GLUE_BASE_IO_LIB_INTRINSIC__
|
||||
#define __EDKII_GLUE_BASE_IO_LIB_INTRINSIC__
|
||||
#endif
|
||||
#else
|
||||
#ifndef __EDKII_GLUE_DXE_IO_LIB_CPU_IO__
|
||||
#define __EDKII_GLUE_DXE_IO_LIB_CPU_IO__
|
||||
#endif
|
||||
#endif
|
||||
#endif
|
||||
|
||||
//
|
||||
// DxeReportStatusCodeLib
|
||||
//
|
||||
#ifdef __EDKII_GLUE_DXE_REPORT_STATUS_CODE_LIB__
|
||||
#ifndef __EDKII_GLUE_BASE_LIB__
|
||||
#define __EDKII_GLUE_BASE_LIB__
|
||||
#endif
|
||||
#ifndef MDE_CPU_EBC
|
||||
#ifndef __EDKII_GLUE_BASE_IO_LIB_INTRINSIC__
|
||||
#define __EDKII_GLUE_BASE_IO_LIB_INTRINSIC__
|
||||
#endif
|
||||
#else
|
||||
#ifndef __EDKII_GLUE_DXE_IO_LIB_CPU_IO__
|
||||
#define __EDKII_GLUE_DXE_IO_LIB_CPU_IO__
|
||||
#endif
|
||||
#endif
|
||||
#ifndef __EDKII_GLUE_BASE_MEMORY_LIB__
|
||||
#define __EDKII_GLUE_BASE_MEMORY_LIB__
|
||||
#endif
|
||||
#ifndef __EDKII_GLUE_UEFI_BOOT_SERVICES_TABLE_LIB__
|
||||
#define __EDKII_GLUE_UEFI_BOOT_SERVICES_TABLE_LIB__
|
||||
#endif
|
||||
#ifndef __EDKII_GLUE_UEFI_RUNTIME_SERVICES_TABLE_LIB__
|
||||
#define __EDKII_GLUE_UEFI_RUNTIME_SERVICES_TABLE_LIB__
|
||||
#endif
|
||||
#endif
|
||||
|
||||
//
|
||||
// PeiReportStatusCodeLib
|
||||
//
|
||||
#ifdef __EDKII_GLUE_PEI_REPORT_STATUS_CODE_LIB__
|
||||
#ifndef __EDKII_GLUE_BASE_LIB__
|
||||
#define __EDKII_GLUE_BASE_LIB__
|
||||
#endif
|
||||
#ifndef __EDKII_GLUE_BASE_MEMORY_LIB__
|
||||
#define __EDKII_GLUE_BASE_MEMORY_LIB__
|
||||
#endif
|
||||
#ifndef MDE_CPU_EBC
|
||||
#ifndef __EDKII_GLUE_BASE_IO_LIB_INTRINSIC__
|
||||
#define __EDKII_GLUE_BASE_IO_LIB_INTRINSIC__
|
||||
#endif
|
||||
#else
|
||||
#ifndef __EDKII_GLUE_DXE_IO_LIB_CPU_IO__
|
||||
#define __EDKII_GLUE_DXE_IO_LIB_CPU_IO__
|
||||
#endif
|
||||
#endif
|
||||
#if defined(MDE_CPU_IA32) || defined(MDE_CPU_X64)
|
||||
#ifndef __EDKII_GLUE_PEI_SERVICES_TABLE_POINTER_LIB_MM7__
|
||||
#define __EDKII_GLUE_PEI_SERVICES_TABLE_POINTER_LIB_MM7__
|
||||
#endif
|
||||
#elif defined(MDE_CPU_IPF)
|
||||
#ifndef __EDKII_GLUE_PEI_SERVICES_TABLE_POINTER_LIB_KR1__
|
||||
#define __EDKII_GLUE_PEI_SERVICES_TABLE_POINTER_LIB_KR1__
|
||||
#endif
|
||||
#endif
|
||||
//
|
||||
// If necessary, __EDKII_GLUE_PEI_SERVICES_TABLE_POINTER_LIB_MM7__ or
|
||||
// __EDKII_GLUE_PEI_SERVICES_TABLE_POINTER_LIB_KR1__ can be
|
||||
// replaced with __EDKII_GLUE_PEI_SERVICES_TABLE_POINTER_LIB__
|
||||
//
|
||||
#endif
|
||||
|
||||
//
|
||||
// BasePeCoffLib
|
||||
//
|
||||
#ifdef __EDKII_GLUE_BASE_PE_COFF_LIB__
|
||||
#ifndef __EDKII_GLUE_BASE_MEMORY_LIB__
|
||||
#define __EDKII_GLUE_BASE_MEMORY_LIB__
|
||||
#endif
|
||||
#endif
|
||||
|
||||
//
|
||||
// BaseUefiDecompressLib
|
||||
//
|
||||
#ifdef __EDKII_GLUE_BASE_UEFI_DECOMPRESS_LIB__
|
||||
#ifndef __EDKII_GLUE_BASE_MEMORY_LIB__
|
||||
#define __EDKII_GLUE_BASE_MEMORY_LIB__
|
||||
#endif
|
||||
#endif
|
||||
|
||||
//
|
||||
// DxeHobLib
|
||||
//
|
||||
#ifdef __EDKII_GLUE_DXE_HOB_LIB__
|
||||
#ifndef __EDKII_GLUE_BASE_MEMORY_LIB__
|
||||
#define __EDKII_GLUE_BASE_MEMORY_LIB__
|
||||
#endif
|
||||
#ifndef __EDKII_GLUE_UEFI_LIB__
|
||||
#define __EDKII_GLUE_UEFI_LIB__
|
||||
#endif
|
||||
#endif
|
||||
|
||||
//
|
||||
// HiiLib
|
||||
//
|
||||
#ifdef __EDKII_GLUE_HII_LIB__
|
||||
#ifndef __EDKII_GLUE_DXE_MEMORY_ALLOCATION_LIB__
|
||||
#define __EDKII_GLUE_DXE_MEMORY_ALLOCATION_LIB__
|
||||
#endif
|
||||
#endif
|
||||
|
||||
//
|
||||
// UefiDevicePathLib
|
||||
//
|
||||
#ifdef __EDKII_GLUE_UEFI_DEVICE_PATH_LIB__
|
||||
#ifndef __EDKII_GLUE_BASE_MEMORY_LIB__
|
||||
#define __EDKII_GLUE_BASE_MEMORY_LIB__
|
||||
#endif
|
||||
#ifndef __EDKII_GLUE_UEFI_BOOT_SERVICES_TABLE_LIB__
|
||||
#define __EDKII_GLUE_UEFI_BOOT_SERVICES_TABLE_LIB__
|
||||
#endif
|
||||
#ifndef __EDKII_GLUE_DXE_MEMORY_ALLOCATION_LIB__
|
||||
#define __EDKII_GLUE_DXE_MEMORY_ALLOCATION_LIB__
|
||||
#endif
|
||||
#endif
|
||||
|
||||
//
|
||||
// UefiLib
|
||||
//
|
||||
#ifdef __EDKII_GLUE_UEFI_LIB__
|
||||
#ifndef __EDKII_GLUE_BASE_LIB__
|
||||
#define __EDKII_GLUE_BASE_LIB__
|
||||
#endif
|
||||
#ifndef __EDKII_GLUE_BASE_MEMORY_LIB__
|
||||
#define __EDKII_GLUE_BASE_MEMORY_LIB__
|
||||
#endif
|
||||
#ifndef __EDKII_GLUE_UEFI_BOOT_SERVICES_TABLE_LIB__
|
||||
#define __EDKII_GLUE_UEFI_BOOT_SERVICES_TABLE_LIB__
|
||||
#endif
|
||||
#ifndef __EDKII_GLUE_DXE_MEMORY_ALLOCATION_LIB__
|
||||
#define __EDKII_GLUE_DXE_MEMORY_ALLOCATION_LIB__
|
||||
#endif
|
||||
#endif
|
||||
|
||||
//
|
||||
// DxeMemoryAllocationLib
|
||||
//
|
||||
#ifdef __EDKII_GLUE_DXE_MEMORY_ALLOCATION_LIB__
|
||||
#ifndef __EDKII_GLUE_BASE_MEMORY_LIB__
|
||||
#define __EDKII_GLUE_BASE_MEMORY_LIB__
|
||||
#endif
|
||||
#ifndef __EDKII_GLUE_UEFI_BOOT_SERVICES_TABLE_LIB__
|
||||
#define __EDKII_GLUE_UEFI_BOOT_SERVICES_TABLE_LIB__
|
||||
#endif
|
||||
#endif
|
||||
|
||||
//
|
||||
// DxeSmbusLib
|
||||
//
|
||||
#ifdef __EDKII_GLUE_DXE_SMBUS_LIB__
|
||||
#ifndef __EDKII_GLUE_BASE_MEMORY_LIB__
|
||||
#define __EDKII_GLUE_BASE_MEMORY_LIB__
|
||||
#endif
|
||||
#ifndef __EDKII_GLUE_UEFI_BOOT_SERVICES_TABLE_LIB__
|
||||
#define __EDKII_GLUE_UEFI_BOOT_SERVICES_TABLE_LIB__
|
||||
#endif
|
||||
#endif
|
||||
|
||||
//
|
||||
// PeiHobLib
|
||||
//
|
||||
#ifdef __EDKII_GLUE_PEI_HOB_LIB__
|
||||
#ifndef __EDKII_GLUE_BASE_MEMORY_LIB__
|
||||
#define __EDKII_GLUE_BASE_MEMORY_LIB__
|
||||
#endif
|
||||
#ifndef __EDKII_GLUE_PEI_SERVICES_LIB__
|
||||
#define __EDKII_GLUE_PEI_SERVICES_LIB__
|
||||
#endif
|
||||
#endif
|
||||
|
||||
//
|
||||
// PeiMemoryAllocationLib
|
||||
//
|
||||
#ifdef __EDKII_GLUE_PEI_MEMORY_ALLOCATION_LIB__
|
||||
#ifndef __EDKII_GLUE_BASE_MEMORY_LIB__
|
||||
#define __EDKII_GLUE_BASE_MEMORY_LIB__
|
||||
#endif
|
||||
#if defined(MDE_CPU_IA32) || defined(MDE_CPU_X64)
|
||||
#ifndef __EDKII_GLUE_PEI_SERVICES_TABLE_POINTER_LIB_MM7__
|
||||
#define __EDKII_GLUE_PEI_SERVICES_TABLE_POINTER_LIB_MM7__
|
||||
#endif
|
||||
#elif defined(MDE_CPU_IPF)
|
||||
#ifndef __EDKII_GLUE_PEI_SERVICES_TABLE_POINTER_LIB_KR1__
|
||||
#define __EDKII_GLUE_PEI_SERVICES_TABLE_POINTER_LIB_KR1__
|
||||
#endif
|
||||
#endif
|
||||
//
|
||||
// If necessary, __EDKII_GLUE_PEI_SERVICES_TABLE_POINTER_LIB_MM7__ or
|
||||
// __EDKII_GLUE_PEI_SERVICES_TABLE_POINTER_LIB_KR1__ can be
|
||||
// replaced with __EDKII_GLUE_PEI_SERVICES_TABLE_POINTER_LIB__
|
||||
//
|
||||
#endif
|
||||
|
||||
//
|
||||
// PeiResourcePublicationLib
|
||||
//
|
||||
#ifdef __EDKII_GLUE_PEI_RESOURCE_PUBLICATION_LIB__
|
||||
#ifndef __EDKII_GLUE_PEI_SERVICES_LIB__
|
||||
#define __EDKII_GLUE_PEI_SERVICES_LIB__
|
||||
#endif
|
||||
#endif
|
||||
|
||||
//
|
||||
// PeiServicesLib
|
||||
//
|
||||
#ifdef __EDKII_GLUE_PEI_SERVICES_LIB__
|
||||
#if defined(MDE_CPU_IA32) || defined(MDE_CPU_X64)
|
||||
#ifndef __EDKII_GLUE_PEI_SERVICES_TABLE_POINTER_LIB_MM7__
|
||||
#define __EDKII_GLUE_PEI_SERVICES_TABLE_POINTER_LIB_MM7__
|
||||
#endif
|
||||
#elif defined(MDE_CPU_IPF)
|
||||
#ifndef __EDKII_GLUE_PEI_SERVICES_TABLE_POINTER_LIB_KR1__
|
||||
#define __EDKII_GLUE_PEI_SERVICES_TABLE_POINTER_LIB_KR1__
|
||||
#endif
|
||||
#endif
|
||||
//
|
||||
// If necessary, __EDKII_GLUE_PEI_SERVICES_TABLE_POINTER_LIB_MM7__ or
|
||||
// __EDKII_GLUE_PEI_SERVICES_TABLE_POINTER_LIB_KR1__ can be
|
||||
// replaced with __EDKII_GLUE_PEI_SERVICES_TABLE_POINTER_LIB__
|
||||
//
|
||||
#endif
|
||||
|
||||
//
|
||||
// PeiSmbusLib
|
||||
//
|
||||
#ifdef __EDKII_GLUE_PEI_SMBUS_LIB__
|
||||
#ifndef __EDKII_GLUE_BASE_MEMORY_LIB__
|
||||
#define __EDKII_GLUE_BASE_MEMORY_LIB__
|
||||
#endif
|
||||
#if defined(MDE_CPU_IA32) || defined(MDE_CPU_X64)
|
||||
#ifndef __EDKII_GLUE_PEI_SERVICES_TABLE_POINTER_LIB_MM7__
|
||||
#define __EDKII_GLUE_PEI_SERVICES_TABLE_POINTER_LIB_MM7__
|
||||
#endif
|
||||
#elif defined(MDE_CPU_IPF)
|
||||
#ifndef __EDKII_GLUE_PEI_SERVICES_TABLE_POINTER_LIB_KR1__
|
||||
#define __EDKII_GLUE_PEI_SERVICES_TABLE_POINTER_LIB_KR1__
|
||||
#endif
|
||||
#endif
|
||||
//
|
||||
// If necessary, __EDKII_GLUE_PEI_SERVICES_TABLE_POINTER_LIB_MM7__ or
|
||||
// __EDKII_GLUE_PEI_SERVICES_TABLE_POINTER_LIB_KR1__ can be
|
||||
// replaced with __EDKII_GLUE_PEI_SERVICES_TABLE_POINTER_LIB__
|
||||
//
|
||||
#endif
|
||||
|
||||
//
|
||||
// PeiServicesTablePointerLibMm7
|
||||
//
|
||||
#ifdef __EDKII_GLUE_PEI_SERVICES_TABLE_POINTER_LIB_MM7__
|
||||
#ifndef __EDKII_GLUE_BASE_LIB__
|
||||
#define __EDKII_GLUE_BASE_LIB__
|
||||
#endif
|
||||
#endif
|
||||
|
||||
//
|
||||
// PeiServicesTablePointerLibKr1
|
||||
//
|
||||
#ifdef __EDKII_GLUE_PEI_SERVICES_TABLE_POINTER_LIB_KR1__
|
||||
#ifndef __EDKII_GLUE_BASE_LIB__
|
||||
#define __EDKII_GLUE_BASE_LIB__
|
||||
#endif
|
||||
#endif
|
||||
|
||||
|
||||
//
|
||||
// UefiDriverModelLib
|
||||
//
|
||||
#ifdef __EDKII_GLUE_UEFI_DRIVER_MODEL_LIB__
|
||||
#ifndef __EDKII_GLUE_UEFI_BOOT_SERVICES_TABLE_LIB__
|
||||
#define __EDKII_GLUE_UEFI_BOOT_SERVICES_TABLE_LIB__
|
||||
#endif
|
||||
#endif
|
||||
|
||||
//
|
||||
// DxeServicesTableLib
|
||||
//
|
||||
#ifdef __EDKII_GLUE_DXE_SERVICES_TABLE_LIB__
|
||||
#ifndef __EDKII_GLUE_UEFI_LIB__
|
||||
#define __EDKII_GLUE_UEFI_LIB__
|
||||
#endif
|
||||
#endif
|
||||
|
||||
//
|
||||
// BasePrintLib
|
||||
//
|
||||
#ifdef __EDKII_GLUE_BASE_PRINT_LIB__
|
||||
#ifndef __EDKII_GLUE_BASE_LIB__
|
||||
#define __EDKII_GLUE_BASE_LIB__
|
||||
#endif
|
||||
#endif
|
||||
|
||||
//
|
||||
// BaseMemoryLib
|
||||
//
|
||||
#ifdef __EDKII_GLUE_BASE_MEMORY_LIB__
|
||||
#ifndef __EDKII_GLUE_BASE_LIB__
|
||||
#define __EDKII_GLUE_BASE_LIB__
|
||||
#endif
|
||||
#endif
|
||||
|
||||
//
|
||||
// BasePostCodeLibPort80
|
||||
//
|
||||
#ifdef __EDKII_GLUE_BASE_POST_CODE_LIB_PORT_80__
|
||||
#ifndef MDE_CPU_EBC
|
||||
#ifndef __EDKII_GLUE_BASE_IO_LIB_INTRINSIC__
|
||||
#define __EDKII_GLUE_BASE_IO_LIB_INTRINSIC__
|
||||
#endif
|
||||
#else
|
||||
#ifndef __EDKII_GLUE_DXE_IO_LIB_CPU_IO__
|
||||
#define __EDKII_GLUE_DXE_IO_LIB_CPU_IO__
|
||||
#endif
|
||||
#endif
|
||||
#endif
|
||||
|
||||
//
|
||||
// BaseIoLibIntrinsic
|
||||
//
|
||||
#ifdef __EDKII_GLUE_BASE_IO_LIB_INTRINSIC__
|
||||
#ifndef __EDKII_GLUE_BASE_LIB__
|
||||
#define __EDKII_GLUE_BASE_LIB__
|
||||
#endif
|
||||
#endif
|
||||
|
||||
//
|
||||
// DxeIoLibCpuIo
|
||||
//
|
||||
#ifdef __EDKII_GLUE_DXE_IO_LIB_CPU_IO__
|
||||
#ifndef __EDKII_GLUE_BASE_LIB__
|
||||
#define __EDKII_GLUE_BASE_LIB__
|
||||
#endif
|
||||
#ifndef __EDKII_GLUE_UEFI_BOOT_SERVICES_TABLE_LIB__
|
||||
#define __EDKII_GLUE_UEFI_BOOT_SERVICES_TABLE_LIB__
|
||||
#endif
|
||||
#endif
|
||||
|
||||
//
|
||||
// UefiBootServicesTableLib
|
||||
//
|
||||
#ifdef __EDKII_GLUE_UEFI_BOOT_SERVICES_TABLE_LIB__
|
||||
#endif
|
||||
|
||||
//
|
||||
// BaseCacheMaintenanceLib
|
||||
//
|
||||
#ifdef __EDKII_GLUE_BASE_CACHE_MAINTENANCE_LIB__
|
||||
#ifndef __EDKII_GLUE_BASE_LIB__
|
||||
#define __EDKII_GLUE_BASE_LIB__
|
||||
#endif
|
||||
#endif
|
||||
|
||||
//
|
||||
// BaseLib
|
||||
//
|
||||
#ifdef __EDKII_GLUE_BASE_LIB__
|
||||
#endif
|
||||
|
||||
//
|
||||
// UefiRuntimeServicesTableLib
|
||||
//
|
||||
#ifdef __EDKII_GLUE_UEFI_RUNTIME_SERVICES_TABLE_LIB__
|
||||
#endif
|
||||
|
||||
//
|
||||
// BasePeCoffGetEntryPointLib
|
||||
//
|
||||
#ifdef __EDKII_GLUE_BASE_PE_COFF_GET_ENTRY_POINT_LIB__
|
||||
#endif
|
||||
|
||||
//
|
||||
// PeiServicesTablePointerLib
|
||||
//
|
||||
#ifdef __EDKII_GLUE_PEI_SERVICES_TABLE_POINTER_LIB__
|
||||
#endif
|
||||
|
||||
//
|
||||
// BasePostCodeLibDebug
|
||||
//
|
||||
#ifdef __EDKII_GLUE_BASE_POST_CODE_LIB_DEBUG__
|
||||
//
|
||||
// A DebugLib instance
|
||||
// Usually EdkIIGluePeiDxeDebugLibReportStatusCodeLib is listed in module inf
|
||||
//
|
||||
#endif
|
||||
|
||||
//
|
||||
// PeiDxePostCodeLibReportStatusCode
|
||||
//
|
||||
#ifdef __EDKII_GLUE_PEI_DXE_POST_CODE_LIB_REPORT_STATUS_CODE__
|
||||
//
|
||||
// PEI or DXE ReportStatusCodeLib instance
|
||||
// Usually EdkIIGluePei/DxeReportStatusCodeLib is listed in module inf
|
||||
//
|
||||
#endif
|
||||
|
||||
|
||||
//
|
||||
// Check against multiple instances of same library class being used
|
||||
//
|
||||
#if defined(__EDKII_GLUE_PEI_DXE_DEBUG_LIB_REPORT_STATUS_CODE__) && defined(__EDKII_GLUE_BASE_DEBUG_LIB_NULL__)
|
||||
#error EdkIIGluePeiDxeDebugLibReportStatusCode and EdkIIGlueBaseDebugLibNull: can only be mutual exclusively used.
|
||||
#endif
|
||||
|
||||
#if defined(__EDKII_GLUE_BASE_PCI_LIB_PCI_EXPRESS__) && defined(__EDKII_GLUE_BASE_PCI_LIB_CF8__)
|
||||
#error EdkIIGluePciLibPciExpress and EdkIIGluePciLibCf8: can only be mutual exclusively used.
|
||||
#endif
|
||||
|
||||
#if defined (__EDKII_GLUE_DXE_HOB_LIB__) && (__EDKII_GLUE_PEI_HOB_LIB__)
|
||||
#error EdkIIGlueDxeHobLib and EdkIIGluePeiHobLib: can only be mutual exclusively used.
|
||||
#endif
|
||||
|
||||
#if defined(__EDKII_GLUE_BASE_POST_CODE_LIB_PORT_80__) && defined(__EDKII_GLUE_BASE_POST_CODE_LIB_DEBUG__)
|
||||
#error EdkIIGlueBasePostCodeLibPort80 and EdkIIGlueBasePostCodeLibDebug: can only be mutual exclusively used.
|
||||
#endif
|
||||
|
||||
#if defined(__EDKII_GLUE_BASE_POST_CODE_LIB_PORT_80__) && defined(__EDKII_GLUE_PEI_DXE_POST_CODE_LIB_REPORT_STATUS_CODE__)
|
||||
#error EdkIIGlueBasePostCodeLibPort80 and EdkIIGluePeiDxePostCodeLibReportStatusCode: can only be mutual exclusively used.
|
||||
#endif
|
||||
|
||||
#if defined(__EDKII_GLUE_BASE_POST_CODE_LIB_DEBUG__) && defined(__EDKII_GLUE_PEI_DXE_POST_CODE_LIB_REPORT_STATUS_CODE__)
|
||||
#error EdkIIGlueBasePostCodeLibDebug and EdkIIGluePeiDxePostCodeLibReportStatusCode: can only be mutual exclusively used.
|
||||
#endif
|
||||
|
||||
#if defined(__EDKII_GLUE_PEI_SERVICES_TABLE_POINTER_LIB__) && defined(__EDKII_GLUE_PEI_SERVICES_TABLE_POINTER_LIB_MM7__)
|
||||
#error EdkIIGluePeiServicesTablePointerLib and EdkIIGluePeiServicesTablePointerLibMm7: can only be mutual exclusively used.
|
||||
#endif
|
||||
|
||||
#if defined(__EDKII_GLUE_PEI_SERVICES_TABLE_POINTER_LIB__) && defined(__EDKII_GLUE_PEI_SERVICES_TABLE_POINTER_LIB_KR1__)
|
||||
#error EdkIIGluePeiServicesTablePointerLib and EdkIIGluePeiServicesTablePointerLibKr1: can only be mutual exclusively used.
|
||||
#endif
|
||||
|
||||
#if defined(__EDKII_GLUE_PEI_SERVICES_TABLE_POINTER_LIB_MM7__) && defined(__EDKII_GLUE_PEI_SERVICES_TABLE_POINTER_LIB_KR1__)
|
||||
#error EdkIIGluePeiServicesTablePointerLibMm7 and EdkIIGluePeiServicesTablePointerLibKr1: can only be mutual exclusively used.
|
||||
#endif
|
||||
|
||||
#if defined(__EDKII_GLUE_DXE_REPORT_STATUS_CODE_LIB__) && defined(__EDKII_GLUE_PEI_REPORT_STATUS_CODE_LIB__)
|
||||
#error EdkIIGlueDxeReportStatusCodeLib and EdkIIGluePeiReportStatusCodeLib: can only be mutual exclusively used.
|
||||
#endif
|
||||
|
||||
#if defined(__EDKII_GLUE_DXE_MEMORY_ALLOCATION_LIB__) && defined(__EDKII_GLUE_PEI_MEMORY_ALLOCATION_LIB__)
|
||||
#error EdkIIGlueDxeMemoryAllocationLib and EdkIIGluePeiMemoryAllocationLib: can only be mutual exclusively used.
|
||||
#endif
|
||||
|
||||
#if defined(__EDKII_GLUE_DXE_SMBUS_LIB__) && defined(__EDKII_GLUE_PEI_SMBUS_LIB__)
|
||||
#error EdkIIGlueDxeSmbusLib and EdkIIGluePeiSmbusLib: can only be mutual exclusively used.
|
||||
#endif
|
||||
|
||||
#if defined(__EDKII_GLUE_BASE_IO_LIB_INTRINSIC__) && defined(__EDKII_GLUE_DXE_IO_LIB_CPU_IO__)
|
||||
#error EdkIIGlueBaseIoLibIntrinsic and EdkIIGlueDxeIoLibCpuIo: can only be mutual exclusively used.
|
||||
#endif
|
||||
|
||||
//
|
||||
// Some instances must be supplied
|
||||
//
|
||||
#ifdef __EDKII_GLUE_PEI_DXE_DEBUG_LIB_REPORT_STATUS_CODE__
|
||||
#if !defined(__EDKII_GLUE_DXE_REPORT_STATUS_CODE_LIB__) && !defined(__EDKII_GLUE_PEI_REPORT_STATUS_CODE_LIB__)
|
||||
#error You use EdkIIGluePeiDxeDebugLibReportStatusCode, so either EdkIIGlueDxeReportStatusCodeLib or EdkIIGluePeiReportStatusCodeLib must be supplied
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#ifdef __EDKII_GLUE_BASE_POST_CODE_LIB_DEBUG__
|
||||
#if !defined(__EDKII_GLUE_PEI_DXE_DEBUG_LIB_REPORT_STATUS_CODE__) && !defined(__EDKII_GLUE_BASE_DEBUG_LIB_NULL__)
|
||||
#error You use EdkIIGlueBasePostCodeLibDebug, so either EdkIIGluePeiDxeDebugLibReportStatusCode or EdkIIGlueBaseDebugLibNull must be supplied
|
||||
#endif
|
||||
#endif
|
||||
|
||||
//
|
||||
// EdkIIGlueUefiDriverModelLib used, but no Driver Binding Protocol defined
|
||||
//
|
||||
#ifdef __EDKII_GLUE_UEFI_DRIVER_MODEL_LIB__
|
||||
#ifndef __EDKII_GLUE_DRIVER_BINDING_PROTOCOL_INSTANCE__
|
||||
#error "EdkIIGlueUefiDriverModelLib used, but no Driver Binding Protocol defined. Please define __EDKII_GLUE_DRIVER_BINDING_PROTOCOL_INSTANCE__."
|
||||
#endif
|
||||
#endif
|
||||
|
||||
//
|
||||
// EdkII Glue Library Constructors:
|
||||
// NOTE: the constructors must be called according to dependency order
|
||||
//
|
||||
// UefiBootServicesTableLib UefiBootServicesTableLibConstructor()
|
||||
// DxeIoLibCpuIo IoLibConstructor()
|
||||
// UefiRuntimeServicesTableLib UefiRuntimeServicesTableLibConstructor()
|
||||
// EdkDxeRuntimeDriverLib RuntimeDriverLibConstruct()
|
||||
// DxeHobLib HobLibConstructor()
|
||||
// UefiDriverModelLib UefiDriverModelLibConstructor()
|
||||
// PeiServicesTablePointerLib PeiServicesTablePointerLibConstructor()
|
||||
// PeiServicesTablePointerLibMm7 PeiServicesTablePointerLibConstructor()
|
||||
// PeiServicesTablePointerLibKr1 PeiServicesTablePointerLibConstructor()
|
||||
// DxeSmbusLib SmbusLibConstructor()
|
||||
// DxeServicesTableLib DxeServicesTableLibConstructor()
|
||||
// DxeSalLib DxeSalLibConstructor()
|
||||
//
|
||||
|
||||
#ifdef __EDKII_GLUE_UEFI_BOOT_SERVICES_TABLE_LIB__
|
||||
EFI_STATUS
|
||||
UefiBootServicesTableLibConstructor (
|
||||
IN EFI_HANDLE ImageHandle,
|
||||
IN EFI_SYSTEM_TABLE *SystemTable
|
||||
);
|
||||
#endif
|
||||
|
||||
#ifdef __EDKII_GLUE_DXE_IO_LIB_CPU_IO__
|
||||
EFI_STATUS
|
||||
EFIAPI
|
||||
IoLibConstructor (
|
||||
IN EFI_HANDLE ImageHandle,
|
||||
IN EFI_SYSTEM_TABLE *SystemTable
|
||||
);
|
||||
#endif
|
||||
|
||||
#ifdef __EDKII_GLUE_UEFI_RUNTIME_SERVICES_TABLE_LIB__
|
||||
EFI_STATUS
|
||||
UefiRuntimeServicesTableLibConstructor (
|
||||
IN EFI_HANDLE ImageHandle,
|
||||
IN EFI_SYSTEM_TABLE *SystemTable
|
||||
);
|
||||
#endif
|
||||
|
||||
#ifdef __EDKII_GLUE_EDK_DXE_RUNTIME_DRIVER_LIB__
|
||||
EFI_STATUS
|
||||
RuntimeDriverLibConstruct (
|
||||
IN EFI_HANDLE ImageHandle,
|
||||
IN EFI_SYSTEM_TABLE *SystemTable
|
||||
);
|
||||
#endif
|
||||
|
||||
#ifdef __EDKII_GLUE_DXE_HOB_LIB__
|
||||
EFI_STATUS
|
||||
HobLibConstructor (
|
||||
IN EFI_HANDLE ImageHandle,
|
||||
IN EFI_SYSTEM_TABLE *SystemTable
|
||||
);
|
||||
#endif
|
||||
|
||||
#ifdef __EDKII_GLUE_UEFI_DRIVER_MODEL_LIB__
|
||||
EFI_STATUS
|
||||
UefiDriverModelLibConstructor (
|
||||
IN EFI_HANDLE ImageHandle,
|
||||
IN EFI_SYSTEM_TABLE *SystemTable
|
||||
);
|
||||
#endif
|
||||
|
||||
#ifdef __EDKII_GLUE_PEI_SERVICES_TABLE_POINTER_LIB__
|
||||
EFI_STATUS
|
||||
PeiServicesTablePointerLibConstructor (
|
||||
IN EFI_FFS_FILE_HEADER *FfsHeader,
|
||||
IN EFI_PEI_SERVICES **PeiServices
|
||||
);
|
||||
#endif
|
||||
|
||||
#ifdef __EDKII_GLUE_PEI_SERVICES_TABLE_POINTER_LIB_MM7__
|
||||
EFI_STATUS
|
||||
PeiServicesTablePointerLibConstructor (
|
||||
IN EFI_FFS_FILE_HEADER *FfsHeader,
|
||||
IN EFI_PEI_SERVICES **PeiServices
|
||||
);
|
||||
#endif
|
||||
|
||||
#ifdef __EDKII_GLUE_PEI_SERVICES_TABLE_POINTER_LIB_KR1__
|
||||
EFI_STATUS
|
||||
PeiServicesTablePointerLibConstructor (
|
||||
IN EFI_FFS_FILE_HEADER *FfsHeader,
|
||||
IN EFI_PEI_SERVICES **PeiServices
|
||||
);
|
||||
#endif
|
||||
|
||||
#ifdef __EDKII_GLUE_DXE_SMBUS_LIB__
|
||||
EFI_STATUS
|
||||
EFIAPI
|
||||
SmbusLibConstructor (
|
||||
IN EFI_HANDLE ImageHandle,
|
||||
IN EFI_SYSTEM_TABLE *SystemTable
|
||||
);
|
||||
#endif
|
||||
|
||||
#ifdef __EDKII_GLUE_DXE_SERVICES_TABLE_LIB__
|
||||
EFI_STATUS
|
||||
DxeServicesTableLibConstructor (
|
||||
IN EFI_HANDLE ImageHandle,
|
||||
IN EFI_SYSTEM_TABLE *SystemTable
|
||||
);
|
||||
#endif
|
||||
|
||||
#ifdef __EDKII_GLUE_EDK_DXE_SAL_LIB__
|
||||
EFI_STATUS
|
||||
EFIAPI
|
||||
DxeSalLibConstructor (
|
||||
IN EFI_HANDLE ImageHandle,
|
||||
IN EFI_SYSTEM_TABLE *SystemTable
|
||||
);
|
||||
#endif
|
||||
|
||||
//
|
||||
// EdkII Glue Library Destructors:
|
||||
// NOTE: the destructors must be called according to dependency order
|
||||
//
|
||||
// UefiDriverModelLibDestructor UefiDriverModelLibDestructor()
|
||||
// EdkDxeRuntimeDriverLib RuntimeDriverLibDeconstruct()
|
||||
//
|
||||
#ifdef __EDKII_GLUE_UEFI_DRIVER_MODEL_LIB__
|
||||
EFI_STATUS
|
||||
UefiDriverModelLibDestructor (
|
||||
IN EFI_HANDLE ImageHandle,
|
||||
IN EFI_SYSTEM_TABLE *SystemTable
|
||||
);
|
||||
#endif
|
||||
|
||||
#ifdef __EDKII_GLUE_EDK_DXE_RUNTIME_DRIVER_LIB__
|
||||
EFI_STATUS
|
||||
RuntimeDriverLibDeconstruct (
|
||||
IN EFI_HANDLE ImageHandle,
|
||||
IN EFI_SYSTEM_TABLE *SystemTable
|
||||
);
|
||||
#endif
|
||||
|
||||
#endif
|
Reference in New Issue
Block a user