IntelFrameworkPkg/Include/Protocol/SmmControl.h File Reference


Data Structures

struct  EFI_SMM_CONTROL_REGISTER
struct  _EFI_SMM_CONTROL_PROTOCOL

Defines

#define EFI_SMM_CONTROL_PROTOCOL_GUID

Typedefs

typedef struct
_EFI_SMM_CONTROL_PROTOCOL 
EFI_SMM_CONTROL_PROTOCOL
typedef EFI_STATUS(EFIAPI * EFI_SMM_ACTIVATE )(IN EFI_SMM_CONTROL_PROTOCOL *This, IN OUT INT8 *ArgumentBuffer, IN OUT UINTN *ArgumentBufferSize, IN BOOLEAN Periodic, IN UINTN ActivationInterval)
typedef EFI_STATUS(EFIAPI * EFI_SMM_DEACTIVATE )(IN EFI_SMM_CONTROL_PROTOCOL *This, IN BOOLEAN Periodic)
typedef EFI_STATUS(EFIAPI * EFI_SMM_GET_REGISTER_INFO )(IN EFI_SMM_CONTROL_PROTOCOL *This, IN OUT EFI_SMM_CONTROL_REGISTER *SmiRegister)

Variables

EFI_GUID gEfiSmmControlProtocolGuid

Detailed Description

This file declares the SMM Control abstraction protocol. This protocol is used to initiate SMI/PMI activations. This protocol could be published by either:

Copyright (c) 2007 - 2010, 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 that 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.

Revision Reference:
This Protocol is defined in Framework of EFI SMM Core Interface Spec Version 0.9.

Define Documentation

#define EFI_SMM_CONTROL_PROTOCOL_GUID

Value:

{ \
    0x8d12e231, 0xc667, 0x4fd1, {0x98, 0xf2, 0x24, 0x49, 0xa7, 0xe7, 0xb2, 0xe5 } \
  }


Typedef Documentation

typedef EFI_STATUS(EFIAPI * EFI_SMM_ACTIVATE)(IN EFI_SMM_CONTROL_PROTOCOL *This, IN OUT INT8 *ArgumentBuffer, IN OUT UINTN *ArgumentBufferSize, IN BOOLEAN Periodic, IN UINTN ActivationInterval)

Invokes SMI activation from either the preboot or runtime environment.

Parameters:
This The EFI_SMM_CONTROL_PROTOCOL instance.
ArgumentBuffer The optional sized data to pass into the protocol activation.
ArgumentBufferSize The optional size of the data.
Periodic An optional mechanism to periodically repeat activation.
ActivationInterval An optional parameter to repeat at this period one time or, if the Periodic Boolean is set, periodically.
Return values:
EFI_SUCCESS The SMI/PMI has been engendered.
EFI_DEVICE_ERROR The timing is unsupported.
EFI_INVALID_PARAMETER The activation period is unsupported.
EFI_NOT_STARTED The SMM base service has not been initialized.

typedef EFI_STATUS(EFIAPI * EFI_SMM_DEACTIVATE)(IN EFI_SMM_CONTROL_PROTOCOL *This, IN BOOLEAN Periodic)

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

Parameters:
This The EFI_SMM_CONTROL_PROTOCOL instance.
Periodic Optional parameter to repeat at this period one time or, if the Periodic Boolean is set, periodically.
Return values:
EFI_SUCCESS The SMI/PMI has been engendered.
EFI_DEVICE_ERROR The source could not be cleared.
EFI_INVALID_PARAMETER The service did not support the Periodic input argument.

typedef EFI_STATUS(EFIAPI * EFI_SMM_GET_REGISTER_INFO)(IN EFI_SMM_CONTROL_PROTOCOL *This, IN OUT EFI_SMM_CONTROL_REGISTER *SmiRegister)

Provides information on the source register used to generate the SMI.

Parameters:
This The EFI_SMM_CONTROL_PROTOCOL instance.
SmiRegister A pointer to the SMI register description structure.
Return values:
EFI_SUCCESS The register structure has been returned.
EFI_DEVICE_ERROR The source could not be cleared.
EFI_INVALID_PARAMETER The service did not support the Periodic input argument.


Variable Documentation


Generated on Wed Sep 2 13:08:33 2015 for IntelFrameworkPkg[ALL] by  doxygen 1.5.7.1