summaryrefslogtreecommitdiffstats
path: root/MdePkg/Include/Protocol
diff options
context:
space:
mode:
authorShenglei Zhang <shenglei.zhang@intel.com>2019-03-27 10:24:08 +0800
committerLiming Gao <liming.gao@intel.com>2019-04-28 09:50:14 +0800
commit4e1daa60f5372c22a11503961061ffa569eaf873 (patch)
tree0c0fc271d01b7c31e2046c900415adc95b9d463b /MdePkg/Include/Protocol
parent5a1ca93a1fa14ef4d76f93548d77b0322fbb809b (diff)
downloadedk2-4e1daa60f5372c22a11503961061ffa569eaf873.tar.gz
MdePkg: Removed IPF related code
A previous commit(3cb0a311cb7e747d7be5c5076d0fff76ad256d2b) didn't clean all IPF contents. So this change removes the rest contents. https://bugzilla.tianocore.org/show_bug.cgi?id=1560 v2: Withdraw the removal of Mps.h. It is written in Mps.h that MPS only was included to support Itanium-based platform power on. But we found MPS is not so relevant to Itanium architecture. Cc: Michael D Kinney <michael.d.kinney@intel.com> Cc: Liming Gao <liming.gao@intel.com> Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Shenglei Zhang <shenglei.zhang@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com>
Diffstat (limited to 'MdePkg/Include/Protocol')
-rw-r--r--MdePkg/Include/Protocol/ExtendedSalBootService.h211
-rw-r--r--MdePkg/Include/Protocol/ExtendedSalServiceClasses.h272
-rw-r--r--MdePkg/Include/Protocol/McaInitPmi.h201
3 files changed, 0 insertions, 684 deletions
diff --git a/MdePkg/Include/Protocol/ExtendedSalBootService.h b/MdePkg/Include/Protocol/ExtendedSalBootService.h
deleted file mode 100644
index fd76532be6..0000000000
--- a/MdePkg/Include/Protocol/ExtendedSalBootService.h
+++ /dev/null
@@ -1,211 +0,0 @@
-/** @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 - 2018, Intel Corporation. All rights reserved.<BR>
- SPDX-License-Identifier: BSD-2-Clause-Patent
-
- @par Revision Reference:
- This Protocol was introduced in PI Specification 1.2.
-
-**/
-
-#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
diff --git a/MdePkg/Include/Protocol/ExtendedSalServiceClasses.h b/MdePkg/Include/Protocol/ExtendedSalServiceClasses.h
deleted file mode 100644
index 847a149b69..0000000000
--- a/MdePkg/Include/Protocol/ExtendedSalServiceClasses.h
+++ /dev/null
@@ -1,272 +0,0 @@
-/** @file
- The standard set of Extended SAL service classes.
-
- Copyright (c) 2009 - 2018, Intel Corporation. All rights reserved.<BR>
- SPDX-License-Identifier: BSD-2-Clause-Patent
-
- @par Revision Reference:
- This Protocol was introduced in PI Specification 1.2.
-
-**/
-
-#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
diff --git a/MdePkg/Include/Protocol/McaInitPmi.h b/MdePkg/Include/Protocol/McaInitPmi.h
deleted file mode 100644
index 617154d19b..0000000000
--- a/MdePkg/Include/Protocol/McaInitPmi.h
+++ /dev/null
@@ -1,201 +0,0 @@
-/** @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 - 2018, Intel Corporation. All rights reserved.<BR>
- SPDX-License-Identifier: BSD-2-Clause-Patent
-
-**/
-
-#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
-