X-Git-Url: https://git.proxmox.com/?p=mirror_edk2.git;a=blobdiff_plain;f=IntelFrameworkPkg%2FInclude%2FFramework%2FSmmCis.h;h=59cc701dbefe72d6fd8b1b3651844c7b8465609f;hp=b8fce5494e2e0ac4dd8b39d1c12a19deb969061c;hb=a2bb197e806240386b5bbb8e77a7d4f2208d14ce;hpb=aa2614b7284dde81ce2e846eb065c85bc0dcc5da diff --git a/IntelFrameworkPkg/Include/Framework/SmmCis.h b/IntelFrameworkPkg/Include/Framework/SmmCis.h index b8fce5494e..59cc701dbe 100644 --- a/IntelFrameworkPkg/Include/Framework/SmmCis.h +++ b/IntelFrameworkPkg/Include/Framework/SmmCis.h @@ -16,6 +16,12 @@ #ifndef _SMM_CIS_H_ #define _SMM_CIS_H_ +// +// Share some common definitions with PI SMM +// +#include +#include + #define EFI_SMM_CPU_IO_GUID \ { \ 0x5f439a0b, 0x45d8, 0x4682, {0xa4, 0xf4, 0xf0, 0x57, 0x6b, 0x51, 0x34, 0x41 } \ @@ -28,21 +34,8 @@ typedef struct _EFI_SMM_CPU_IO_INTERFACE EFI_SMM_CPU_IO_INTERFACE; // // SMM Base specification constant and types // -#define SMM_SMST_SIGNATURE SIGNATURE_32 ('S', 'M', 'S', 'T') #define EFI_SMM_SYSTEM_TABLE_REVISION (0 << 16) | (0x09) -// -// ******************************************************* -// EFI_SMM_IO_WIDTH -// ******************************************************* -// -typedef enum { - SMM_IO_UINT8 = 0, - SMM_IO_UINT16 = 1, - SMM_IO_UINT32 = 2, - SMM_IO_UINT64 = 3 -} EFI_SMM_IO_WIDTH; - /** Provides the basic memory and I/O interfaces that are used to abstract accesses to devices. @@ -181,35 +174,6 @@ EFI_STATUS IN UINTN NumberOfPages ); -/** - Lets the caller get one distinct application processor (AP) in the enabled processor pool to execite a - caller-provided code stream while in SMM. - - @param Procedure A pointer to the code stream to be run on the designated AP of the system. - @param CpuNumber The zero-based index of the processor number of the AP on which the code stream is - supposed to run. If the processor number points to the current processor or a disabled - processor, then it will not run the supplied code. - @param ProcArguments Allows the caller to pass a list of parameters to the code that is run by - the AP. It is an optional common mailbox between APs and the BSP to share information. - - @retval EFI_SUCCESS The call was successful and the return parameters are valid. - @retval EFI_INVALID_PARAMETER The input arguments are out of range. - @retval EFI_INVALID_PARAMETER The CPU requested is not available on this SMI invocation. - @retval EFI_INVALID_PARAMETER The CPU cannot support an additional service invocation. - - @note: Inconsistent with specification here: - In Framework Spec, this definition does not exist. This method is introduced in PI1.0 spec for - implementation needs. - -**/ -typedef -EFI_STATUS -(EFIAPI *EFI_SMM_STARTUP_THIS_AP)( - IN FRAMEWORK_EFI_AP_PROCEDURE Procedure, - IN UINTN CpuNumber, - IN OUT VOID *ProcArguments OPTIONAL - ); - /// /// The processor save-state information for IA-32 processors. This information is important in that the /// SMM drivers may need to ascertain the state of the processor before invoking the SMI.