mirror of https://github.com/acidanthera/audk.git
Publish definition of MCA/INIT/PMI Protocol & ESAL, as introduced in PI 1.2.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9616 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
parent
e8ade0efd0
commit
41335d2244
|
@ -0,0 +1,214 @@
|
||||||
|
/** @file
|
||||||
|
Definition of Extended SAL Boot Service Protocol
|
||||||
|
|
||||||
|
The Extended SAL Boot Service Protocol provides a mechanisms for platform specific
|
||||||
|
drivers to update the SAL System Table and register Extended SAL Procedures that are
|
||||||
|
callable in physical or virtual mode using the SAL calling convention.
|
||||||
|
|
||||||
|
Copyright (c) 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 _EXTENDED_SAL_BOOT_SERVICE_PROTOCOL_H_
|
||||||
|
#define _EXTENDED_SAL_BOOT_SERVICE_PROTOCOL_H_
|
||||||
|
|
||||||
|
#include <IndustryStandard/Sal.h>
|
||||||
|
|
||||||
|
#define EXTENDED_SAL_BOOT_SERVICE_PROTOCOL_GUID \
|
||||||
|
{ 0xde0ee9a4, 0x3c7a, 0x44f2, {0xb7, 0x8b, 0xe3, 0xcc, 0xd6, 0x9c, 0x3a, 0xf7 } }
|
||||||
|
|
||||||
|
typedef struct _EXTENDED_SAL_BOOT_SERVICE_PROTOCOL EXTENDED_SAL_BOOT_SERVICE_PROTOCOL;
|
||||||
|
|
||||||
|
/**
|
||||||
|
Adds platform specific information to the to the header of the SAL System Table.
|
||||||
|
|
||||||
|
@param This A pointer to the EXTENDED_SAL_BOOT_SERVICE_PROTOCOL instance.
|
||||||
|
@param SalAVersion Version of recovery SAL PEIM(s) in BCD format. Higher byte contains
|
||||||
|
the major revision and the lower byte contains the minor revision.
|
||||||
|
@param SalBVersion Version of DXE SAL Driver in BCD format. Higher byte contains
|
||||||
|
the major revision and the lower byte contains the minor revision.
|
||||||
|
@param OemId A pointer to a Null-terminated ASCII string that contains OEM unique string.
|
||||||
|
The string cannot be longer than 32 bytes in total length
|
||||||
|
@param ProductId A pointer to a Null-terminated ASCII string that uniquely identifies a family of
|
||||||
|
compatible products. The string cannot be longer than 32 bytes in total length.
|
||||||
|
|
||||||
|
@retval EFI_SUCCESS The SAL System Table header was updated successfully.
|
||||||
|
@retval EFI_INVALID_PARAMETER OemId is NULL.
|
||||||
|
@retval EFI_INVALID_PARAMETER ProductId is NULL.
|
||||||
|
@retval EFI_INVALID_PARAMETER The length of OemId is greater than 32 characters.
|
||||||
|
@retval EFI_INVALID_PARAMETER The length of ProductId is greater than 32 characters.
|
||||||
|
|
||||||
|
**/
|
||||||
|
typedef
|
||||||
|
EFI_STATUS
|
||||||
|
(EFIAPI *EXTENDED_SAL_ADD_SST_INFO) (
|
||||||
|
IN EXTENDED_SAL_BOOT_SERVICE_PROTOCOL *This,
|
||||||
|
IN UINT16 SalAVersion,
|
||||||
|
IN UINT16 SalBVersion,
|
||||||
|
IN CHAR8 *OemId,
|
||||||
|
IN CHAR8 *ProductId
|
||||||
|
);
|
||||||
|
|
||||||
|
/**
|
||||||
|
Adds an entry to the SAL System Table.
|
||||||
|
|
||||||
|
This function adds the SAL System Table Entry specified by TableEntry and EntrySize
|
||||||
|
to the SAL System Table.
|
||||||
|
|
||||||
|
@param This A pointer to the EXTENDED_SAL_BOOT_SERVICE_PROTOCOL instance.
|
||||||
|
@param TableEntry Pointer to a buffer containing a SAL System Table entry that is EntrySize bytes
|
||||||
|
in length. The first byte of the TableEntry describes the type of entry.
|
||||||
|
@param EntrySize The size, in bytes, of TableEntry.
|
||||||
|
|
||||||
|
@retval EFI_SUCCESSThe SAL System Table was updated successfully.
|
||||||
|
@retval EFI_INVALID_PARAMETER TableEntry is NULL.
|
||||||
|
@retval EFI_INVALID_PARAMETER TableEntry specifies an invalid entry type.
|
||||||
|
@retval EFI_INVALID_PARAMETER EntrySize is not valid for this type of entry.
|
||||||
|
|
||||||
|
**/
|
||||||
|
typedef
|
||||||
|
EFI_STATUS
|
||||||
|
(EFIAPI *EXTENDED_SAL_ADD_SST_ENTRY) (
|
||||||
|
IN EXTENDED_SAL_BOOT_SERVICE_PROTOCOL *This,
|
||||||
|
IN UINT8 *TableEntry,
|
||||||
|
IN UINTN EntrySize
|
||||||
|
);
|
||||||
|
|
||||||
|
/**
|
||||||
|
Internal ESAL procedures.
|
||||||
|
|
||||||
|
This is prototype of internal Extended SAL procedures, which is registerd by
|
||||||
|
EXTENDED_SAL_REGISTER_INTERNAL_PROC service.
|
||||||
|
|
||||||
|
@param FunctionId The Function ID associated with this Extended SAL Procedure.
|
||||||
|
@param Arg2 Second argument to the Extended SAL procedure.
|
||||||
|
@param Arg3 Third argument to the Extended SAL procedure.
|
||||||
|
@param Arg4 Fourth argument to the Extended SAL procedure.
|
||||||
|
@param Arg5 Fifth argument to the Extended SAL procedure.
|
||||||
|
@param Arg6 Sixth argument to the Extended SAL procedure.
|
||||||
|
@param Arg7 Seventh argument to the Extended SAL procedure.
|
||||||
|
@param Arg8 Eighth argument to the Extended SAL procedure.
|
||||||
|
@param VirtualMode TRUE if the Extended SAL Procedure is being invoked in virtual mode.
|
||||||
|
FALSE if the Extended SAL Procedure is being invoked in physical mode.
|
||||||
|
@param ModuleGlobal A pointer to the global context associated with this Extended SAL Procedure.
|
||||||
|
|
||||||
|
@return The result returned from the specified Extended SAL Procedure
|
||||||
|
|
||||||
|
**/
|
||||||
|
typedef
|
||||||
|
SAL_RETURN_REGS
|
||||||
|
(EFIAPI *SAL_INTERNAL_EXTENDED_SAL_PROC) (
|
||||||
|
IN UINT64 FunctionId,
|
||||||
|
IN UINT64 Arg2,
|
||||||
|
IN UINT64 Arg3,
|
||||||
|
IN UINT64 Arg4,
|
||||||
|
IN UINT64 Arg5,
|
||||||
|
IN UINT64 Arg6,
|
||||||
|
IN UINT64 Arg7,
|
||||||
|
IN UINT64 Arg8,
|
||||||
|
IN BOOLEAN VirtualMode,
|
||||||
|
IN VOID *ModuleGlobal OPTIONAL
|
||||||
|
);
|
||||||
|
|
||||||
|
/**
|
||||||
|
Registers an Extended SAL Procedure.
|
||||||
|
|
||||||
|
The Extended SAL Procedure specified by InternalSalProc and named by ClassGuidLo,
|
||||||
|
ClassGuidHi, and FunctionId is added to the set of available Extended SAL Procedures.
|
||||||
|
|
||||||
|
@param This A pointer to the EXTENDED_SAL_BOOT_SERVICE_PROTOCOL instance.
|
||||||
|
@param ClassGuidLo The lower 64-bits of the class GUID for the Extended SAL Procedure being added.
|
||||||
|
Each class GUID contains one or more functions specified by a Function ID.
|
||||||
|
@param ClassGuidHi The upper 64-bits of the class GUID for the Extended SAL Procedure being added.
|
||||||
|
Each class GUID contains one or more functions specified by a Function ID.
|
||||||
|
@param FunctionId The Function ID for the Extended SAL Procedure that is being added. This Function
|
||||||
|
ID is a member of the Extended SAL Procedure class specified by ClassGuidLo
|
||||||
|
and ClassGuidHi.
|
||||||
|
@param InternalSalProc A pointer to the Extended SAL Procedure being added.
|
||||||
|
@param PhysicalModuleGlobal Pointer to a module global structure. This is a physical mode pointer.
|
||||||
|
This pointer is passed to the Extended SAL Procedure specified by ClassGuidLo,
|
||||||
|
ClassGuidHi, FunctionId, and InternalSalProc. If the system is in physical mode,
|
||||||
|
then this pointer is passed unmodified to InternalSalProc. If the system is in
|
||||||
|
virtual mode, then the virtual address associated with this pointer is passed to
|
||||||
|
InternalSalProc.
|
||||||
|
|
||||||
|
@retval EFI_SUCCESS The Extended SAL Procedure was added.
|
||||||
|
@retval EFI_OUT_OF_RESOURCES There are not enough resources available to add the Extended SAL Procedure.
|
||||||
|
|
||||||
|
**/
|
||||||
|
typedef
|
||||||
|
EFI_STATUS
|
||||||
|
(EFIAPI *EXTENDED_SAL_REGISTER_INTERNAL_PROC) (
|
||||||
|
IN EXTENDED_SAL_BOOT_SERVICE_PROTOCOL *This,
|
||||||
|
IN UINT64 ClassGuidLo,
|
||||||
|
IN UINT64 ClassGuidHi,
|
||||||
|
IN UINT64 FunctionId,
|
||||||
|
IN SAL_INTERNAL_EXTENDED_SAL_PROC InternalSalProc,
|
||||||
|
IN VOID *PhysicalModuleGlobal OPTIONAL
|
||||||
|
);
|
||||||
|
|
||||||
|
/**
|
||||||
|
Calls a previously registered Extended SAL Procedure.
|
||||||
|
|
||||||
|
This function calls the Extended SAL Procedure specified by ClassGuidLo, ClassGuidHi,
|
||||||
|
and FunctionId. The set of previously registered Extended SAL Procedures is searched for a
|
||||||
|
matching ClassGuidLo, ClassGuidHi, and FunctionId. If a match is not found, then
|
||||||
|
EFI_SAL_NOT_IMPLEMENTED is returned.
|
||||||
|
|
||||||
|
@param ClassGuidLo The lower 64-bits of the class GUID for the Extended SAL Procedure
|
||||||
|
that is being called.
|
||||||
|
@param ClassGuidHi The upper 64-bits of the class GUID for the Extended SAL Procedure
|
||||||
|
that is being called.
|
||||||
|
@param FunctionId Function ID for the Extended SAL Procedure being called.
|
||||||
|
@param Arg2 Second argument to the Extended SAL procedure.
|
||||||
|
@param Arg3 Third argument to the Extended SAL procedure.
|
||||||
|
@param Arg4 Fourth argument to the Extended SAL procedure.
|
||||||
|
@param Arg5 Fifth argument to the Extended SAL procedure.
|
||||||
|
@param Arg6 Sixth argument to the Extended SAL procedure.
|
||||||
|
@param Arg7 Seventh argument to the Extended SAL procedure.
|
||||||
|
@param Arg8 Eighth argument to the Extended SAL procedure.
|
||||||
|
|
||||||
|
@retval EFI_SAL_NOT_IMPLEMENTED The Extended SAL Procedure specified by ClassGuidLo,
|
||||||
|
ClassGuidHi, and FunctionId has not been registered.
|
||||||
|
@retval EFI_SAL_VIRTUAL_ADDRESS_ERROR This function was called in virtual mode before virtual mappings
|
||||||
|
for the specified Extended SAL Procedure are available.
|
||||||
|
@retval Other The result returned from the specified Extended SAL Procedure
|
||||||
|
|
||||||
|
**/
|
||||||
|
typedef
|
||||||
|
SAL_RETURN_REGS
|
||||||
|
(EFIAPI *EXTENDED_SAL_PROC) (
|
||||||
|
IN UINT64 ClassGuidLo,
|
||||||
|
IN UINT64 ClassGuidHi,
|
||||||
|
IN UINT64 FunctionId,
|
||||||
|
IN UINT64 Arg2,
|
||||||
|
IN UINT64 Arg3,
|
||||||
|
IN UINT64 Arg4,
|
||||||
|
IN UINT64 Arg5,
|
||||||
|
IN UINT64 Arg6,
|
||||||
|
IN UINT64 Arg7,
|
||||||
|
IN UINT64 Arg8
|
||||||
|
);
|
||||||
|
|
||||||
|
///
|
||||||
|
/// The EXTENDED_SAL_BOOT_SERVICE_PROTOCOL provides a mechanisms for platform specific
|
||||||
|
/// drivers to update the SAL System Table and register Extended SAL Procedures that are
|
||||||
|
/// callable in physical or virtual mode using the SAL calling convention.
|
||||||
|
///
|
||||||
|
struct _EXTENDED_SAL_BOOT_SERVICE_PROTOCOL {
|
||||||
|
EXTENDED_SAL_ADD_SST_INFO AddSalSystemTableInfo;
|
||||||
|
EXTENDED_SAL_ADD_SST_ENTRY AddSalSystemTableEntry;
|
||||||
|
EXTENDED_SAL_REGISTER_INTERNAL_PROC RegisterExtendedSalProc;
|
||||||
|
EXTENDED_SAL_PROC ExtendedSalProc;
|
||||||
|
};
|
||||||
|
|
||||||
|
extern EFI_GUID gEfiExtendedSalBootServiceProtocolGuid;
|
||||||
|
|
||||||
|
#endif
|
|
@ -0,0 +1,275 @@
|
||||||
|
/** @file
|
||||||
|
The standard set of Extended SAL service classes.
|
||||||
|
|
||||||
|
Copyright (c) 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 _EXTENDED_SAL_SERVICE_CLASSES_H_
|
||||||
|
#define _EXTENDED_SAL_SERVICE_CLASSES_H_
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Extended SAL Base I/O Services Class
|
||||||
|
///
|
||||||
|
///@{
|
||||||
|
#define EFI_EXTENDED_SAL_BASE_IO_SERVICES_PROTOCOL_GUID_LO 0x451531e15aea42b5
|
||||||
|
#define EFI_EXTENDED_SAL_BASE_IO_SERVICES_PROTOCOL_GUID_HI 0xa6657525d5b831bc
|
||||||
|
#define EFI_EXTENDED_SAL_BASE_IO_SERVICES_PROTOCOL_GUID \
|
||||||
|
{ 0x5aea42b5, 0x31e1, 0x4515, {0xbc, 0x31, 0xb8, 0xd5, 0x25, 0x75, 0x65, 0xa6 } }
|
||||||
|
|
||||||
|
typedef enum {
|
||||||
|
IoReadFunctionId,
|
||||||
|
IoWriteFunctionId,
|
||||||
|
MemReadFunctionId,
|
||||||
|
MemWriteFunctionId
|
||||||
|
} EFI_EXTENDED_SAL_BASE_IO_SERVICES_FUNC_ID;
|
||||||
|
///@}
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Extended SAL Stall Services Class
|
||||||
|
///
|
||||||
|
///@{
|
||||||
|
#define EFI_EXTENDED_SAL_STALL_SERVICES_PROTOCOL_GUID_LO 0x4d8cac2753a58d06
|
||||||
|
#define EFI_EXTENDED_SAL_STALL_SERVICES_PROTOCOL_GUID_HI 0x704165808af0e9b5
|
||||||
|
#define EFI_EXTENDED_SAL_STALL_SERVICES_PROTOCOL_GUID \
|
||||||
|
{ 0x53a58d06, 0xac27, 0x4d8c, {0xb5, 0xe9, 0xf0, 0x8a, 0x80, 0x65, 0x41, 0x70 } }
|
||||||
|
|
||||||
|
typedef enum {
|
||||||
|
StallFunctionId
|
||||||
|
} EFI_EXTENDED_SAL_STALL_FUNC_ID;
|
||||||
|
///@}
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Extended SAL Real Time Clock Services Class
|
||||||
|
///
|
||||||
|
///@{
|
||||||
|
#define EFI_EXTENDED_SAL_RTC_SERVICES_PROTOCOL_GUID_LO 0x4d02efdb7e97a470
|
||||||
|
#define EFI_EXTENDED_SAL_RTC_SERVICES_PROTOCOL_GUID_HI 0x96a27bd29061ce8f
|
||||||
|
#define EFI_EXTENDED_SAL_RTC_SERVICES_PROTOCOL_GUID \
|
||||||
|
{ 0x7e97a470, 0xefdb, 0x4d02, {0x8f, 0xce, 0x61, 0x90, 0xd2, 0x7b, 0xa2, 0x96 } }
|
||||||
|
|
||||||
|
typedef enum {
|
||||||
|
GetTimeFunctionId,
|
||||||
|
SetTimeFunctionId,
|
||||||
|
GetWakeupTimeFunctionId,
|
||||||
|
SetWakeupTimeFunctionId,
|
||||||
|
GetRtcFreqFunctionId,
|
||||||
|
InitializeThresholdFunctionId,
|
||||||
|
BumpThresholdCountFunctionId,
|
||||||
|
GetThresholdCountFunctionId
|
||||||
|
} EFI_EXTENDED_SAL_RTC_SERVICES_FUNC_ID;
|
||||||
|
///@}
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Extended SAL Variable Services Class
|
||||||
|
///
|
||||||
|
///@{
|
||||||
|
#define EFI_EXTENDED_SAL_VARIABLE_SERVICES_PROTOCOL_GUID_LO 0x4370c6414ecb6c53
|
||||||
|
#define EFI_EXTENDED_SAL_VARIABLE_SERVICES_PROTOCOL_GUID_HI 0x78836e490e3bb28c
|
||||||
|
#define EFI_EXTENDED_SAL_VARIABLE_SERVICES_PROTOCOL_GUID \
|
||||||
|
{ 0x4ecb6c53, 0xc641, 0x4370, {0x8c, 0xb2, 0x3b, 0x0e, 0x49, 0x6e, 0x83, 0x78 } }
|
||||||
|
|
||||||
|
typedef enum {
|
||||||
|
EsalGetVariableFunctionId,
|
||||||
|
EsalGetNextVariableNameFunctionId,
|
||||||
|
EsalSetVariableFunctionId,
|
||||||
|
EsalQueryVariableInfoFunctionId
|
||||||
|
} EFI_EXTENDED_SAL_VARIABLE_SERVICES_FUNC_ID;
|
||||||
|
///@}
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Extended SAL Monotonic Counter Services Class
|
||||||
|
///
|
||||||
|
///@{
|
||||||
|
#define EFI_EXTENDED_SAL_MTC_SERVICES_PROTOCOL_GUID_LO 0x408b75e8899afd18
|
||||||
|
#define EFI_EXTENDED_SAL_MTC_SERVICES_PROTOCOL_GUID_HI 0x54f4cd7e2e6e1aa4
|
||||||
|
#define EFI_EXTENDED_SAL_MTC_SERVICES_PROTOCOL_GUID \
|
||||||
|
{ 0x899afd18, 0x75e8, 0x408b, {0xa4, 0x1a, 0x6e, 0x2e, 0x7e, 0xcd, 0xf4, 0x54 } }
|
||||||
|
|
||||||
|
typedef enum {
|
||||||
|
GetNextHighMonotonicCountFunctionId
|
||||||
|
} EFI_EXTENDED_SAL_MTC_SERVICES_FUNC_ID;
|
||||||
|
///@}
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Extended SAL Reset Services Class
|
||||||
|
///
|
||||||
|
///@{
|
||||||
|
#define EFI_EXTENDED_SAL_RESET_SERVICES_PROTOCOL_GUID_LO 0x46f58ce17d019990
|
||||||
|
#define EFI_EXTENDED_SAL_RESET_SERVICES_PROTOCOL_GUID_HI 0xa06a6798513c76a7
|
||||||
|
#define EFI_EXTENDED_SAL_RESET_SERVICES_PROTOCOL_GUID \
|
||||||
|
{ 0x7d019990, 0x8ce1, 0x46f5, {0xa7, 0x76, 0x3c, 0x51, 0x98, 0x67, 0x6a, 0xa0 } }
|
||||||
|
|
||||||
|
typedef enum {
|
||||||
|
ResetSystemFunctionId
|
||||||
|
} EFI_EXTENDED_SAL_RESET_SERVICES_FUNC_ID;
|
||||||
|
///@}
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Extended SAL Status Code Services Class
|
||||||
|
///
|
||||||
|
///@{
|
||||||
|
#define EFI_EXTENDED_SAL_STATUS_CODE_SERVICES_PROTOCOL_GUID_LO 0x420f55e9dbd91d
|
||||||
|
#define EFI_EXTENDED_SAL_STATUS_CODE_SERVICES_PROTOCOL_GUID_HI 0x4fb437849f5e3996
|
||||||
|
#define EFI_EXTENDED_SAL_STATUS_CODE_SERVICES_PROTOCOL_GUID \
|
||||||
|
{ 0xdbd91d, 0x55e9, 0x420f, {0x96, 0x39, 0x5e, 0x9f, 0x84, 0x37, 0xb4, 0x4f } }
|
||||||
|
|
||||||
|
typedef enum {
|
||||||
|
ReportStatusCodeServiceFunctionId
|
||||||
|
} EFI_EXTENDED_SAL_STATUS_CODE_SERVICES_FUNC_ID;
|
||||||
|
///@}
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Extended SAL Firmware Volume Block Services Class
|
||||||
|
///
|
||||||
|
///@{
|
||||||
|
#define EFI_EXTENDED_SAL_FV_BLOCK_SERVICES_PROTOCOL_GUID_LO 0x4f1dbcbba2271df1
|
||||||
|
#define EFI_EXTENDED_SAL_FV_BLOCK_SERVICES_PROTOCOL_GUID_HI 0x1a072f17bc06a998
|
||||||
|
#define EFI_EXTENDED_SAL_FV_BLOCK_SERVICES_PROTOCOL_GUID \
|
||||||
|
{ 0xa2271df1, 0xbcbb, 0x4f1d, {0x98, 0xa9, 0x06, 0xbc, 0x17, 0x2f, 0x07, 0x1a } }
|
||||||
|
|
||||||
|
typedef enum {
|
||||||
|
ReadFunctionId,
|
||||||
|
WriteFunctionId,
|
||||||
|
EraseBlockFunctionId,
|
||||||
|
GetVolumeAttributesFunctionId,
|
||||||
|
SetVolumeAttributesFunctionId,
|
||||||
|
GetPhysicalAddressFunctionId,
|
||||||
|
GetBlockSizeFunctionId,
|
||||||
|
} EFI_EXTENDED_SAL_FV_BLOCK_SERVICES_FUNC_ID;
|
||||||
|
///@}
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Extended SAL MP Services Class
|
||||||
|
///
|
||||||
|
///@{
|
||||||
|
#define EFI_EXTENDED_SAL_MP_SERVICES_PROTOCOL_GUID_LO 0x4dc0cf18697d81a2
|
||||||
|
#define EFI_EXTENDED_SAL_MP_SERVICES_PROTOCOL_GUID_HI 0x3f8a613b11060d9e
|
||||||
|
#define EFI_EXTENDED_SAL_MP_SERVICES_PROTOCOL_GUID \
|
||||||
|
{ 0x697d81a2, 0xcf18, 0x4dc0, {0x9e, 0x0d, 0x06, 0x11, 0x3b, 0x61, 0x8a, 0x3f } }
|
||||||
|
|
||||||
|
typedef enum {
|
||||||
|
AddCpuDataFunctionId,
|
||||||
|
RemoveCpuDataFunctionId,
|
||||||
|
ModifyCpuDataFunctionId,
|
||||||
|
GetCpuDataByIDFunctionId,
|
||||||
|
GetCpuDataByIndexFunctionId,
|
||||||
|
SendIpiFunctionId,
|
||||||
|
CurrentProcInfoFunctionId,
|
||||||
|
NumProcessorsFunctionId,
|
||||||
|
SetMinStateFunctionId,
|
||||||
|
GetMinStateFunctionId
|
||||||
|
} EFI_EXTENDED_SAL_MP_SERVICES_FUNC_ID;
|
||||||
|
///@}
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Extended SAL PAL Services Class
|
||||||
|
///
|
||||||
|
///@{
|
||||||
|
#define EFI_EXTENDED_SAL_PAL_SERVICES_PROTOCOL_GUID_LO 0x438d0fc2e1cd9d21
|
||||||
|
#define EFI_EXTENDED_SAL_PAL_SERVICES_PROTOCOL_GUID_HI 0x571e966de6040397
|
||||||
|
#define EFI_EXTENDED_SAL_PAL_SERVICES_PROTOCOL_GUID \
|
||||||
|
{ 0xe1cd9d21, 0x0fc2, 0x438d, {0x97, 0x03, 0x04, 0xe6, 0x6d, 0x96, 0x1e, 0x57 } }
|
||||||
|
|
||||||
|
typedef enum {
|
||||||
|
PalProcFunctionId,
|
||||||
|
SetNewPalEntryFunctionId,
|
||||||
|
GetNewPalEntryFunctionId,
|
||||||
|
EsalUpdatePalFunctionId
|
||||||
|
} EFI_EXTENDED_SAL_PAL_SERVICES_FUNC_ID;
|
||||||
|
///@}
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Extended SAL Base Services Class
|
||||||
|
///
|
||||||
|
///@{
|
||||||
|
#define EFI_EXTENDED_SAL_BASE_SERVICES_PROTOCOL_GUID_LO 0x41c30fe0d9e9fa06
|
||||||
|
#define EFI_EXTENDED_SAL_BASE_SERVICES_PROTOCOL_GUID_HI 0xf894335a4283fb96
|
||||||
|
#define EFI_EXTENDED_SAL_BASE_SERVICES_PROTOCOL_GUID \
|
||||||
|
{ 0xd9e9fa06, 0x0fe0, 0x41c3, {0x96, 0xfb, 0x83, 0x42, 0x5a, 0x33, 0x94, 0xf8 } }
|
||||||
|
|
||||||
|
typedef enum {
|
||||||
|
SalSetVectorsFunctionId,
|
||||||
|
SalMcRendezFunctionId,
|
||||||
|
SalMcSetParamsFunctionId,
|
||||||
|
EsalGetVectorsFunctionId,
|
||||||
|
EsalMcGetParamsFunctionId,
|
||||||
|
EsalMcGetMcParamsFunctionId,
|
||||||
|
EsalGetMcCheckinFlagsFunctionId,
|
||||||
|
EsalGetPlatformBaseFreqFunctionId,
|
||||||
|
EsalPhysicalIdInfoFunctionId,
|
||||||
|
EsalRegisterPhysicalAddrFunctionId
|
||||||
|
} EFI_EXTENDED_SAL_BASE_SERVICES_FUNC_ID;
|
||||||
|
///@}
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Extended SAL MCA Services Class
|
||||||
|
///
|
||||||
|
///@{
|
||||||
|
#define EFI_EXTENDED_SAL_MCA_SERVICES_PROTOCOL_GUID_LO 0x42b16cc72a591128
|
||||||
|
#define EFI_EXTENDED_SAL_MCA_SERVICES_PROTOCOL_GUID_HI 0xbb2d683b9358f08a
|
||||||
|
#define EFI_EXTENDED_SAL_MCA_SERVICES_PROTOCOL_GUID \
|
||||||
|
{ 0x2a591128, 0x6cc7, 0x42b1, {0x8a, 0xf0, 0x58, 0x93, 0x3b, 0x68, 0x2d, 0xbb } }
|
||||||
|
|
||||||
|
typedef enum {
|
||||||
|
McaGetStateInfoFunctionId,
|
||||||
|
McaRegisterCpuFunctionId
|
||||||
|
} EFI_EXTENDED_SAL_MCA_SERVICES_FUNC_ID;
|
||||||
|
///@}
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Extended SAL PCI Services Class
|
||||||
|
///
|
||||||
|
///@{
|
||||||
|
#define EFI_EXTENDED_SAL_PCI_SERVICES_PROTOCOL_GUID_LO 0x4905ad66a46b1a31
|
||||||
|
#define EFI_EXTENDED_SAL_PCI_SERVICES_PROTOCOL_GUID_HI 0x6330dc59462bf692
|
||||||
|
#define EFI_EXTENDED_SAL_PCI_SERVICES_PROTOCOL_GUID \
|
||||||
|
{ 0xa46b1a31, 0xad66, 0x4905, {0x92, 0xf6, 0x2b, 0x46, 0x59, 0xdc, 0x30, 0x63 } }
|
||||||
|
|
||||||
|
typedef enum {
|
||||||
|
SalPciConfigReadFunctionId,
|
||||||
|
SalPciConfigWriteFunctionId
|
||||||
|
} EFI_EXTENDED_SAL_PCI_SERVICES_FUNC_ID;
|
||||||
|
///@}
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Extended SAL Cache Services Class
|
||||||
|
///
|
||||||
|
///@{
|
||||||
|
#define EFI_EXTENDED_SAL_CACHE_SERVICES_PROTOCOL_GUID_LO 0x4ba52743edc9494
|
||||||
|
#define EFI_EXTENDED_SAL_CACHE_SERVICES_PROTOCOL_GUID_HI 0x88f11352ef0a1888
|
||||||
|
#define EFI_EXTENDED_SAL_CACHE_SERVICES_PROTOCOL_GUID \
|
||||||
|
{ 0xedc9494, 0x2743, 0x4ba5, { 0x88, 0x18, 0x0a, 0xef, 0x52, 0x13, 0xf1, 0x88 } }
|
||||||
|
|
||||||
|
typedef enum {
|
||||||
|
SalCacheInitFunctionId,
|
||||||
|
SalCacheFlushFunctionId
|
||||||
|
} EFI_EXTENDED_SAL_CACHE_SERVICES_FUNC_ID;
|
||||||
|
///@}
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Extended SAL MCA Log Services Class
|
||||||
|
///
|
||||||
|
///@{
|
||||||
|
#define EFI_EXTENDED_SAL_MCA_LOG_SERVICES_PROTOCOL_GUID_LO 0x4c0338a3cb3fd86e
|
||||||
|
#define EFI_EXTENDED_SAL_MCA_LOG_SERVICES_PROTOCOL_GUID_HI 0x7aaba2a3cf905c9a
|
||||||
|
#define EFI_EXTENDED_SAL_MCA_LOG_SERVICES_PROTOCOL_GUID \
|
||||||
|
{ 0xcb3fd86e, 0x38a3, 0x4c03, {0x9a, 0x5c, 0x90, 0xcf, 0xa3, 0xa2, 0xab, 0x7a } }
|
||||||
|
|
||||||
|
typedef enum {
|
||||||
|
SalGetStateInfoFunctionId,
|
||||||
|
SalGetStateInfoSizeFunctionId,
|
||||||
|
SalClearStateInfoFunctionId,
|
||||||
|
EsalGetStateBufferFunctionId,
|
||||||
|
EsalSaveStateBufferFunctionId
|
||||||
|
} EFI_EXTENDED_SAL_MCA_LOG_SERVICES_FUNC_ID;
|
||||||
|
///@}
|
||||||
|
|
||||||
|
#endif
|
|
@ -0,0 +1,207 @@
|
||||||
|
/** @file
|
||||||
|
MCA/PMI/INIT Protocol as defined in PI Specification VOLUME 4.
|
||||||
|
|
||||||
|
This protocol provides services to handle Machine Checks (MCA),
|
||||||
|
Initialization (INIT) events, and Platform Management Interrupt (PMI) events
|
||||||
|
on an Intel Itanium Processor Family based system.
|
||||||
|
|
||||||
|
Copyright (c) 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 __MCA_INIT_PMI_PROTOCOL_H__
|
||||||
|
#define __MCA_INIT_PMI_PROTOCOL_H__
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Global ID for the MCA/PMI/INIT Protocol.
|
||||||
|
///
|
||||||
|
#define EFI_SAL_MCA_INIT_PMI_PROTOCOL_GUID \
|
||||||
|
{ 0xb60dc6e8, 0x3b6f, 0x11d5, {0xaf, 0x9, 0x0, 0xa0, 0xc9, 0x44, 0xa0, 0x5b} }
|
||||||
|
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Declare forward reference for the Timer Architectural Protocol
|
||||||
|
///
|
||||||
|
typedef struct _EFI_SAL_MCA_INIT_PMI_PROTOCOL EFI_SAL_MCA_INIT_PMI_PROTOCOL;
|
||||||
|
|
||||||
|
#pragma pack(1)
|
||||||
|
///
|
||||||
|
/// MCA Records Structure
|
||||||
|
///
|
||||||
|
typedef struct {
|
||||||
|
UINT64 First : 1;
|
||||||
|
UINT64 Last : 1;
|
||||||
|
UINT64 EntryCount : 16;
|
||||||
|
UINT64 DispatchedCount : 16;
|
||||||
|
UINT64 Reserved : 30;
|
||||||
|
} SAL_MCA_COUNT_STRUCTURE;
|
||||||
|
|
||||||
|
#pragma pack()
|
||||||
|
|
||||||
|
/**
|
||||||
|
Prototype of MCA handler.
|
||||||
|
|
||||||
|
@param ModuleGlobal The context of MCA Handler
|
||||||
|
@param ProcessorStateParameters The processor state parameters (PSP)
|
||||||
|
@param MinstateBase Base address of the min-state
|
||||||
|
@param RendezvouseStateInformation Rendezvous state information to be passed to
|
||||||
|
the OS on OS MCA entry
|
||||||
|
@param CpuIndex Index of the logical processor
|
||||||
|
@param McaCountStructure Pointer to the MCA records structure
|
||||||
|
@param CorrectedMachineCheck This flag is set to TRUE is the MCA has been
|
||||||
|
corrected by the handler or by a previous handler
|
||||||
|
|
||||||
|
@retval EFI_SUCCESS Handler successfully returned
|
||||||
|
|
||||||
|
**/
|
||||||
|
typedef
|
||||||
|
EFI_STATUS
|
||||||
|
(EFIAPI *EFI_SAL_MCA_HANDLER) (
|
||||||
|
IN VOID *ModuleGlobal,
|
||||||
|
IN UINT64 ProcessorStateParameters,
|
||||||
|
IN EFI_PHYSICAL_ADDRESS MinstateBase,
|
||||||
|
IN UINT64 RendezvouseStateInformation,
|
||||||
|
IN UINT64 CpuIndex,
|
||||||
|
IN SAL_MCA_COUNT_STRUCTURE *McaCountStructure,
|
||||||
|
OUT BOOLEAN *CorrectedMachineCheck
|
||||||
|
);
|
||||||
|
|
||||||
|
/**
|
||||||
|
Prototype of INIT handler.
|
||||||
|
|
||||||
|
@param ModuleGlobal The context of INIT Handler
|
||||||
|
@param ProcessorStateParameters The processor state parameters (PSP)
|
||||||
|
@param MinstateBase Base address of the min-state
|
||||||
|
@param McaInProgress This flag indicates if an MCA is in progress
|
||||||
|
@param CpuIndex Index of the logical processor
|
||||||
|
@param McaCountStructure Pointer to the MCA records structure
|
||||||
|
@param DumpSwitchPressed This flag indicates the crash dump switch has been pressed
|
||||||
|
|
||||||
|
@retval EFI_SUCCESS Handler successfully returned
|
||||||
|
|
||||||
|
**/
|
||||||
|
typedef
|
||||||
|
EFI_STATUS
|
||||||
|
(EFIAPI *EFI_SAL_INIT_HANDLER) (
|
||||||
|
IN VOID *ModuleGlobal,
|
||||||
|
IN UINT64 ProcessorStateParameters,
|
||||||
|
IN EFI_PHYSICAL_ADDRESS MinstateBase,
|
||||||
|
IN BOOLEAN McaInProgress,
|
||||||
|
IN UINT64 CpuIndex,
|
||||||
|
IN SAL_MCA_COUNT_STRUCTURE *McaCountStructure,
|
||||||
|
OUT BOOLEAN *DumpSwitchPressed
|
||||||
|
);
|
||||||
|
|
||||||
|
/**
|
||||||
|
Prototype of PMI handler
|
||||||
|
|
||||||
|
@param ModuleGlobal The context of PMI Handler
|
||||||
|
@param CpuIndex Index of the logical processor
|
||||||
|
@param PmiVector The PMI vector number as received from the PALE_PMI exit state (GR24)
|
||||||
|
|
||||||
|
@retval EFI_SUCCESS Handler successfully returned
|
||||||
|
|
||||||
|
**/
|
||||||
|
typedef
|
||||||
|
EFI_STATUS
|
||||||
|
(EFIAPI *EFI_SAL_PMI_HANDLER) (
|
||||||
|
IN VOID *ModuleGlobal,
|
||||||
|
IN UINT64 CpuIndex,
|
||||||
|
IN UINT64 PmiVector
|
||||||
|
);
|
||||||
|
|
||||||
|
/**
|
||||||
|
Register a MCA handler with the MCA dispatcher.
|
||||||
|
|
||||||
|
@param This The EFI_SAL_MCA_INIT_PMI_PROTOCOL instance
|
||||||
|
@param McaHandler The MCA handler to register
|
||||||
|
@param ModuleGlobal The context of MCA Handler
|
||||||
|
@param MakeFirst This flag specifies the handler should be made first in the list
|
||||||
|
@param MakeLast This flag specifies the handler should be made last in the list
|
||||||
|
|
||||||
|
@retval EFI_SUCCESS MCA Handle was registered
|
||||||
|
@retval EFI_OUT_OF_RESOURCES No more resources to register an MCA handler
|
||||||
|
@retval EFI_INVALID_PARAMETER Invalid parameters were passed
|
||||||
|
|
||||||
|
**/
|
||||||
|
typedef
|
||||||
|
EFI_STATUS
|
||||||
|
(EFIAPI *EFI_SAL_REGISTER_MCA_HANDLER) (
|
||||||
|
IN EFI_SAL_MCA_INIT_PMI_PROTOCOL *This,
|
||||||
|
IN EFI_SAL_MCA_HANDLER McaHandler,
|
||||||
|
IN VOID *ModuleGlobal,
|
||||||
|
IN BOOLEAN MakeFirst,
|
||||||
|
IN BOOLEAN MakeLast
|
||||||
|
);
|
||||||
|
|
||||||
|
/**
|
||||||
|
Register an INIT handler with the INIT dispatcher.
|
||||||
|
|
||||||
|
@param This The EFI_SAL_MCA_INIT_PMI_PROTOCOL instance
|
||||||
|
@param InitHandler The INIT handler to register
|
||||||
|
@param ModuleGlobal The context of INIT Handler
|
||||||
|
@param MakeFirst This flag specifies the handler should be made first in the list
|
||||||
|
@param MakeLast This flag specifies the handler should be made last in the list
|
||||||
|
|
||||||
|
@retval EFI_SUCCESS INIT Handle was registered
|
||||||
|
@retval EFI_OUT_OF_RESOURCES No more resources to register an INIT handler
|
||||||
|
@retval EFI_INVALID_PARAMETER Invalid parameters were passed
|
||||||
|
|
||||||
|
**/
|
||||||
|
typedef
|
||||||
|
EFI_STATUS
|
||||||
|
(EFIAPI *EFI_SAL_REGISTER_INIT_HANDLER) (
|
||||||
|
IN EFI_SAL_MCA_INIT_PMI_PROTOCOL *This,
|
||||||
|
IN EFI_SAL_INIT_HANDLER InitHandler,
|
||||||
|
IN VOID *ModuleGlobal,
|
||||||
|
IN BOOLEAN MakeFirst,
|
||||||
|
IN BOOLEAN MakeLast
|
||||||
|
);
|
||||||
|
|
||||||
|
/**
|
||||||
|
Register a PMI handler with the PMI dispatcher.
|
||||||
|
|
||||||
|
@param This The EFI_SAL_MCA_INIT_PMI_PROTOCOL instance
|
||||||
|
@param PmiHandler The PMI handler to register
|
||||||
|
@param ModuleGlobal The context of PMI Handler
|
||||||
|
@param MakeFirst This flag specifies the handler should be made first in the list
|
||||||
|
@param MakeLast This flag specifies the handler should be made last in the list
|
||||||
|
|
||||||
|
@retval EFI_SUCCESS PMI Handle was registered
|
||||||
|
@retval EFI_OUT_OF_RESOURCES No more resources to register an PMI handler
|
||||||
|
@retval EFI_INVALID_PARAMETER Invalid parameters were passed
|
||||||
|
|
||||||
|
**/
|
||||||
|
typedef
|
||||||
|
EFI_STATUS
|
||||||
|
(EFIAPI *EFI_SAL_REGISTER_PMI_HANDLER) (
|
||||||
|
IN EFI_SAL_MCA_INIT_PMI_PROTOCOL *This,
|
||||||
|
IN EFI_SAL_PMI_HANDLER PmiHandler,
|
||||||
|
IN VOID *ModuleGlobal,
|
||||||
|
IN BOOLEAN MakeFirst,
|
||||||
|
IN BOOLEAN MakeLast
|
||||||
|
);
|
||||||
|
|
||||||
|
///
|
||||||
|
/// This protocol is used to register MCA, INIT and PMI handlers with their respective dispatcher
|
||||||
|
///
|
||||||
|
struct _EFI_SAL_MCA_INIT_PMI_PROTOCOL {
|
||||||
|
EFI_SAL_REGISTER_MCA_HANDLER RegisterMcaHandler;
|
||||||
|
EFI_SAL_REGISTER_INIT_HANDLER RegisterInitHandler;
|
||||||
|
EFI_SAL_REGISTER_PMI_HANDLER RegisterPmiHandler;
|
||||||
|
BOOLEAN McaInProgress; ///< Whether MCA handler is in progress
|
||||||
|
BOOLEAN InitInProgress; ///< Whether Init handler is in progress
|
||||||
|
BOOLEAN PmiInProgress; ///< Whether Pmi handler is in progress
|
||||||
|
};
|
||||||
|
|
||||||
|
extern EFI_GUID gEfiSalMcaInitPmiProtocolGuid;
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
|
@ -730,6 +730,29 @@
|
||||||
## Include/Protocol/LegacyRegion2.h
|
## Include/Protocol/LegacyRegion2.h
|
||||||
gEfiLegacyRegion2ProtocolGuid = {0x70101eaf, 0x85, 0x440c, {0xb3, 0x56, 0x8e, 0xe3, 0x6f, 0xef, 0x24, 0xf0 } }
|
gEfiLegacyRegion2ProtocolGuid = {0x70101eaf, 0x85, 0x440c, {0xb3, 0x56, 0x8e, 0xe3, 0x6f, 0xef, 0x24, 0xf0 } }
|
||||||
|
|
||||||
|
## Include/Protocol/McaInitPmi.h
|
||||||
|
gEfiSalMcaInitPmiProtocolGuid = { 0xb60dc6e8, 0x3b6f, 0x11d5, {0xaf, 0x9, 0x0, 0xa0, 0xc9, 0x44, 0xa0, 0x5b } }
|
||||||
|
|
||||||
|
## Include/Protocol/ExtendedSalBootService.h
|
||||||
|
gEfiExtendedSalBootServiceProtocolGuid = { 0xde0ee9a4, 0x3c7a, 0x44f2, {0xb7, 0x8b, 0xe3, 0xcc, 0xd6, 0x9c, 0x3a, 0xf7 } }
|
||||||
|
|
||||||
|
## Include/Protocol/ExtendedSalServiceClasses.h
|
||||||
|
gEfiExtendedSalBaseIoServicesProtocolGuid = { 0x5aea42b5, 0x31e1, 0x4515, {0xbc, 0x31, 0xb8, 0xd5, 0x25, 0x75, 0x65, 0xa6 } }
|
||||||
|
gEfiExtendedSalStallServicesProtocolGuid = { 0x53a58d06, 0xac27, 0x4d8c, {0xb5, 0xe9, 0xf0, 0x8a, 0x80, 0x65, 0x41, 0x70 } }
|
||||||
|
gEfiExtendedSalRtcServicesProtocolGuid = { 0x7e97a470, 0xefdb, 0x4d02, {0x8f, 0xce, 0x61, 0x90, 0xd2, 0x7b, 0xa2, 0x96 } }
|
||||||
|
gEfiExtendedSalVariableServicesProtocolGuid = { 0x4ecb6c53, 0xc641, 0x4370, {0x8c, 0xb2, 0x3b, 0x0e, 0x49, 0x6e, 0x83, 0x78 } }
|
||||||
|
gEfiExtendedSalMtcServicesProtocolGuid = { 0x899afd18, 0x75e8, 0x408b, {0xa4, 0x1a, 0x6e, 0x2e, 0x7e, 0xcd, 0xf4, 0x54 } }
|
||||||
|
gEfiExtendedSalResetServicesProtocolGuid = { 0x7d019990, 0x8ce1, 0x46f5, {0xa7, 0x76, 0x3c, 0x51, 0x98, 0x67, 0x6a, 0xa0 } }
|
||||||
|
gEfiExtendedSalStatusCodeServicesProtocolGuid = { 0xdbd91d, 0x55e9, 0x420f, {0x96, 0x39, 0x5e, 0x9f, 0x84, 0x37, 0xb4, 0x4f } }
|
||||||
|
gEfiExtendedSalFvBlockServicesProtocolGuid = { 0xa2271df1, 0xbcbb, 0x4f1d, {0x98, 0xa9, 0x06, 0xbc, 0x17, 0x2f, 0x07, 0x1a } }
|
||||||
|
gEfiExtendedSalMpServicesProtocolGuid = { 0x697d81a2, 0xcf18, 0x4dc0, {0x9e, 0x0d, 0x06, 0x11, 0x3b, 0x61, 0x8a, 0x3f } }
|
||||||
|
gEfiExtendedSalPalServicesProtocolGuid = { 0xe1cd9d21, 0x0fc2, 0x438d, {0x97, 0x03, 0x04, 0xe6, 0x6d, 0x96, 0x1e, 0x57 } }
|
||||||
|
gEfiExtendedSalBaseServicesProtocolGuid = { 0xd9e9fa06, 0x0fe0, 0x41c3, {0x96, 0xfb, 0x83, 0x42, 0x5a, 0x33, 0x94, 0xf8 } }
|
||||||
|
gEfiExtendedSalMcaServicesProtocolGuid = { 0x2a591128, 0x6cc7, 0x42b1, {0x8a, 0xf0, 0x58, 0x93, 0x3b, 0x68, 0x2d, 0xbb } }
|
||||||
|
gEfiExtendedSalPciServicesProtocolGuid = { 0xa46b1a31, 0xad66, 0x4905, {0x92, 0xf6, 0x2b, 0x46, 0x59, 0xdc, 0x30, 0x63 } }
|
||||||
|
gEfiExtendedSalCacheServicesProtocolGuid = { 0xedc9494, 0x2743, 0x4ba5, { 0x88, 0x18, 0x0a, 0xef, 0x52, 0x13, 0xf1, 0x88 } }
|
||||||
|
gEfiExtendedSalMcaLogServicesProtocolGuid = { 0xcb3fd86e, 0x38a3, 0x4c03, {0x9a, 0x5c, 0x90, 0xcf, 0xa3, 0xa2, 0xab, 0x7a } }
|
||||||
|
|
||||||
#
|
#
|
||||||
# Protocols defined in UEFI2.1/UEFI2.0/EFI1.1
|
# Protocols defined in UEFI2.1/UEFI2.0/EFI1.1
|
||||||
#
|
#
|
||||||
|
|
Loading…
Reference in New Issue