Remove status code modules' dependency on IntelFrameworkModulePkg.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9603 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
xli24 2009-12-25 06:33:46 +00:00
parent 61d4f8f92a
commit 10c5d87ef7
3 changed files with 155 additions and 0 deletions

View File

@ -0,0 +1,83 @@
/** @file
GUID used to identify status code records HOB that originate from the PEI status code
Copyright (c) 2006 - 2009, 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 __MEMORY_STATUS_CODE_RECORD_H__
#define __MEMORY_STATUS_CODE_RECORD_H__
///
/// Global ID used to identify GUIDed HOBs that start with a structure of type
/// MEMORY_STATUSCODE_PACKET_HEADER followed by an array of structures of type
/// MEMORY_STATUSCODE_RECORD. These GUIDed HOBs record all the information
/// passed into the ReportStatusCode() service of PEI Services Table.
///
/// <pre>
/// Memory status code records packet structure :
/// +---------------+----------+----------+-----+----------+-----+----------+
/// | Packet Header | Record 1 | Record 2 | ... + Record n | ... | Record m |
/// +---------------+----------+----------+-----+----------+-----+----------+
/// ^ ^ ^
/// +--------- RecordIndex -----------+ |
/// +---------------- MaxRecordsNumber----------------------+
/// </pre>
///
#define MEMORY_STATUS_CODE_RECORD_GUID \
{ \
0x60cc026, 0x4c0d, 0x4dda, {0x8f, 0x41, 0x59, 0x5f, 0xef, 0x0, 0xa5, 0x2} \
}
///
/// A header structure that is followed by an array of records that contain the
/// parameters passed into the ReportStatusCode() service in the PEI Services Table.
///
typedef struct {
///
/// Index of the packet
///
UINT16 PacketIndex;
///
/// The number of active records in the packet
///
UINT16 RecordIndex;
///
/// The maximum number of records that the packet can store
///
UINT32 MaxRecordsNumber;
} MEMORY_STATUSCODE_PACKET_HEADER;
///
/// A structure that contains the parameters passed into the ReportStatusCode()
/// service in the PEI Services Table.
///
typedef struct {
///
/// Status Code type to be reported.
///
EFI_STATUS_CODE_TYPE CodeType;
///
/// An operation, plus value information about the class and subclass, used to
/// classify the hardware and software entity.
///
EFI_STATUS_CODE_VALUE Value;
///
/// The enumeration of a hardware or software entity within
/// the system. Valid instance numbers start with 1
///
UINT32 Instance;
} MEMORY_STATUSCODE_RECORD;
extern EFI_GUID gMemoryStatusCodeRecordGuid;
#endif

View File

@ -0,0 +1,49 @@
/** @file
This file defines the GUID and data structure used to pass DEBUG() macro
information to the Status Code Protocol and Status Code PPI.
Copyright (c) 2007 - 2009, 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 _STATUS_CODE_DATA_TYPE_DEBUG_H_
#define _STATUS_CODE_DATA_TYPE_DEBUG_H_
///
/// Global ID used to identify a structure of type EFI_DEBUG_INFO
///
#define EFI_STATUS_CODE_DATA_TYPE_DEBUG_GUID \
{ \
0x9A4E9246, 0xD553, 0x11D5, { 0x87, 0xE2, 0x00, 0x06, 0x29, 0x45, 0xC3, 0xb9 } \
}
///
/// The maximum size of an EFI_DEBUG_INFO structure
///
#define EFI_STATUS_CODE_DATA_MAX_SIZE 200
///
/// This structure contains the ErrorLevel passed into the DEBUG() macro, followed
/// by a 96-byte buffer that contains the variable argument list passed to the
// DEBUG() macro that has been converted to a BASE_LIST. The 96-byte buffer is
/// followed by a Null-terminated ASCII string that is the Format string passed
/// to the DEBUG() macro. The maximum size of this structure is defined by
/// EFI_STATUS_CODE_DATA_MAX_SIZE.
///
typedef struct {
///
/// The debug error level passed into a DEBUG() macro.
///
UINT32 ErrorLevel;
} EFI_DEBUG_INFO;
extern EFI_GUID gEfiStatusCodeDataTypeDebugGuid;
#endif // _STATUS_CODE_DATA_TYPE_DEBUG_H_

View File

@ -131,6 +131,14 @@
## Include/Guid/StatusCodeCallbackGuid.h ## Include/Guid/StatusCodeCallbackGuid.h
gStatusCodeCallbackGuid = {0xe701458c, 0x4900, 0x4ca5, {0xb7, 0x72, 0x3d, 0x37, 0x94, 0x9f, 0x79, 0x27}} gStatusCodeCallbackGuid = {0xe701458c, 0x4900, 0x4ca5, {0xb7, 0x72, 0x3d, 0x37, 0x94, 0x9f, 0x79, 0x27}}
## GUID identifies status code records HOB that originate from the PEI status code
# Include/Guid/MemoryStatusCodeRecord.h
gMemoryStatusCodeRecordGuid = { 0x060CC026, 0x4C0D, 0x4DDA, { 0x8F, 0x41, 0x59, 0x5F, 0xEF, 0x00, 0xA5, 0x02 }}
## GUID used to pass DEBUG() macro information through the Status Code Protocol and Status Code PPI
# Include/Guid/StatusCodeDataTypeDebug.h
gEfiStatusCodeDataTypeDebugGuid = { 0x9A4E9246, 0xD553, 0x11D5, { 0x87, 0xE2, 0x00, 0x06, 0x29, 0x45, 0xC3, 0xB9 }}
[Protocols.common] [Protocols.common]
## Load File protocol provides capability to load and unload EFI image into memory and execute it. ## Load File protocol provides capability to load and unload EFI image into memory and execute it.
# Include/Protocol/LoadPe32Image.h # Include/Protocol/LoadPe32Image.h
@ -247,6 +255,15 @@
## This PCD specifies whether the PCI bus driver probes non-standard, ## This PCD specifies whether the PCI bus driver probes non-standard,
# such as 2K/1K/512, granularity for PCI to PCI bridge I/O window. # such as 2K/1K/512, granularity for PCI to PCI bridge I/O window.
gEfiMdeModulePkgTokenSpaceGuid.PcdPciBridgeIoAlignmentProbe|FALSE|BOOLEAN|0x10000047 gEfiMdeModulePkgTokenSpaceGuid.PcdPciBridgeIoAlignmentProbe|FALSE|BOOLEAN|0x10000047
## This PCD specifies whether StatusCode is reported via Serial port.
gEfiMdeModulePkgTokenSpaceGuid.PcdStatusCodeUseSerial|TRUE|BOOLEAN|0x00010022
## This PCD specifies whether StatusCode is stored in memory.
# The memory is boot time memory in PEI Phase and is runtime memory in DXE Phase.
gEfiMdeModulePkgTokenSpaceGuid.PcdStatusCodeUseMemory|FALSE|BOOLEAN|0x00010023
## This PCD specifies whether Peiphase StatusCode is replayed in DxePhase.
gEfiMdeModulePkgTokenSpaceGuid.PcdStatusCodeReplayIn|FALSE|BOOLEAN|0x0001002d
[PcdsFeatureFlag.IA32] [PcdsFeatureFlag.IA32]
## ##
@ -379,3 +396,9 @@
## Null-terminated Unicode string that contains the date the formware was released ## Null-terminated Unicode string that contains the date the formware was released
gEfiMdeModulePkgTokenSpaceGuid.PcdFirmwareReleaseDateString|L""|VOID*|0x00010053 gEfiMdeModulePkgTokenSpaceGuid.PcdFirmwareReleaseDateString|L""|VOID*|0x00010053
## PcdStatusCodeMemorySize is used when PcdStatusCodeUseMemory is set to true
# (PcdStatusCodeMemorySize * KBytes) is the total taken memory size.
# The default value in PeiPhase is 1 KBytes.
# The default value in DxePhase is 128 KBytes.
gEfiMdeModulePkgTokenSpaceGuid.PcdStatusCodeMemorySize|1|UINT16|0x00010054