MdeModulePkg[all]  0.98
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
SmmControl.h File Reference

Data Structures

struct  _PEI_SMM_CONTROL_PPI
 

Macros

#define PEI_SMM_CONTROL_PPI_GUID   { 0x61c68702, 0x4d7e, 0x4f43, 0x8d, 0xef, 0xa7, 0x43, 0x5, 0xce, 0x74, 0xc5 }
 

Typedefs

typedef struct _PEI_SMM_CONTROL_PPI PEI_SMM_CONTROL_PPI
 
typedef IN PEI_SMM_CONTROL_PPIThis
 
typedef IN PEI_SMM_CONTROL_PPI
IN OUT INT8 * 
ArgumentBuffer
 
typedef IN PEI_SMM_CONTROL_PPI
IN OUT INT8 IN OUT UINTN
ArgumentBufferSize
 
typedef IN PEI_SMM_CONTROL_PPI
IN OUT INT8 IN OUT UINTN IN
BOOLEAN 
Periodic
 
typedef IN PEI_SMM_CONTROL_PPI
IN OUT INT8 IN OUT UINTN IN
BOOLEAN IN UINTN 
ActivationInterval
 

Functions

typedef EFI_STATUS (EFIAPI *PEI_SMM_ACTIVATE)(IN EFI_PEI_SERVICES **PeiServices
 

Variables

EFI_GUID gPeiSmmControlPpiGuid
 

Detailed Description

EFI SMM Control PPI definition.

This PPI is used to initiate SMI/PMI activations. This protocol could be published by either:

  • A processor driver to abstract the SMI/PMI IPI
  • The driver that abstracts the ASIC that is supporting the APM port, such as the ICH in an Intel chipset Because of the possibility of performing SMI or PMI IPI transactions, the ability to generate this event from a platform chipset agent is an optional capability for both IA-32 and Itanium-based systems.

Copyright (c) 2010 - 2018, Intel Corporation. All rights reserved.

SPDX-License-Identifier: BSD-2-Clause-Patent

Macro Definition Documentation

#define PEI_SMM_CONTROL_PPI_GUID   { 0x61c68702, 0x4d7e, 0x4f43, 0x8d, 0xef, 0xa7, 0x43, 0x5, 0xce, 0x74, 0xc5 }

Typedef Documentation

typedef IN PEI_SMM_CONTROL_PPI IN OUT INT8 IN OUT UINTN IN BOOLEAN IN UINTN ActivationInterval
typedef IN PEI_SMM_CONTROL_PPI IN OUT INT8* ArgumentBuffer
typedef IN PEI_SMM_CONTROL_PPI IN OUT INT8 IN OUT UINTN* ArgumentBufferSize

Function Documentation

typedef EFI_STATUS ( EFIAPI *  PEI_SMM_DEACTIVATE)

Invokes SMI activation from either the preboot or runtime environment.

Parameters
PeiServicesGeneral purpose services available to every PEIM.
ThisThe PEI_SMM_CONTROL_PPI instance.
ArgumentBufferThe optional sized data to pass into the protocol activation.
ArgumentBufferSizeThe optional size of the data.
PeriodicAn optional mechanism to periodically repeat activation.
ActivationIntervalAn optional parameter to repeat at this period one time or, if the Periodic Boolean is set, periodically.
Return values
EFI_SUCCESSThe SMI/PMI has been engendered.
EFI_DEVICE_ERRORThe timing is unsupported.
EFI_INVALID_PARAMETERThe activation period is unsupported.
EFI_NOT_STARTEDThe SMM base service has not been initialized.

Clears any system state that was created in response to the Active call.

Parameters
PeiServicesGeneral purpose services available to every PEIM.
ThisThe PEI_SMM_CONTROL_PPI instance.
PeriodicOptional parameter to repeat at this period one time or, if the Periodic Boolean is set, periodically.
Return values
EFI_SUCCESSThe SMI/PMI has been engendered.
EFI_DEVICE_ERRORThe source could not be cleared.
EFI_INVALID_PARAMETERThe service did not support the Periodic input argument.

Variable Documentation

EFI_GUID gPeiSmmControlPpiGuid