XenevaOS
Loading...
Searching...
No Matches
Classes | Macros | Typedefs
PiSmmCis.h File Reference
#include <Pi/PiMmCis.h>
#include <Protocol/SmmCpuIo2.h>
Include dependency graph for PiSmmCis.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  _EFI_SMM_ENTRY_CONTEXT
 
struct  _EFI_SMM_SYSTEM_TABLE2
 

Macros

#define SMM_SMST_SIGNATURE   MM_MMST_SIGNATURE
 
#define SMM_SPECIFICATION_MAJOR_REVISION   MM_SPECIFICATION_MAJOR_REVISION
 
#define SMM_SPECIFICATION_MINOR_REVISION   MM_SPECIFICATION_MINOR_REVISION
 
#define EFI_SMM_SYSTEM_TABLE2_REVISION   EFI_MM_SYSTEM_TABLE_REVISION
 

Typedefs

typedef struct _EFI_SMM_SYSTEM_TABLE2 EFI_SMM_SYSTEM_TABLE2
 
typedef EFI_STATUS(EFIAPIEFI_SMM_INSTALL_CONFIGURATION_TABLE2) (IN CONST EFI_SMM_SYSTEM_TABLE2 *SystemTable, IN CONST EFI_GUID *Guid, IN VOID *Table, IN UINTN TableSize)
 
typedef EFI_MM_STARTUP_THIS_AP EFI_SMM_STARTUP_THIS_AP
 
typedef EFI_MM_NOTIFY_FN EFI_SMM_NOTIFY_FN
 
typedef EFI_MM_REGISTER_PROTOCOL_NOTIFY EFI_SMM_REGISTER_PROTOCOL_NOTIFY
 
typedef EFI_MM_INTERRUPT_MANAGE EFI_SMM_INTERRUPT_MANAGE
 
typedef EFI_MM_HANDLER_ENTRY_POINT EFI_SMM_HANDLER_ENTRY_POINT2
 
typedef EFI_MM_INTERRUPT_REGISTER EFI_SMM_INTERRUPT_REGISTER
 
typedef EFI_MM_INTERRUPT_UNREGISTER EFI_SMM_INTERRUPT_UNREGISTER
 
typedef struct _EFI_SMM_ENTRY_CONTEXT EFI_SMM_ENTRY_CONTEXT
 
typedef VOID(EFIAPIEFI_SMM_ENTRY_POINT) (IN CONST EFI_SMM_ENTRY_CONTEXT *SmmEntryContext)
 

Detailed Description

Common definitions in the Platform Initialization Specification version 1.4a VOLUME 4 System Management Mode Core Interface version.

Copyright (c) 2009 - 2018, 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.

Macro Definition Documentation

◆ EFI_SMM_SYSTEM_TABLE2_REVISION

#define EFI_SMM_SYSTEM_TABLE2_REVISION   EFI_MM_SYSTEM_TABLE_REVISION

◆ SMM_SMST_SIGNATURE

#define SMM_SMST_SIGNATURE   MM_MMST_SIGNATURE

◆ SMM_SPECIFICATION_MAJOR_REVISION

#define SMM_SPECIFICATION_MAJOR_REVISION   MM_SPECIFICATION_MAJOR_REVISION

◆ SMM_SPECIFICATION_MINOR_REVISION

#define SMM_SPECIFICATION_MINOR_REVISION   MM_SPECIFICATION_MINOR_REVISION

Typedef Documentation

◆ EFI_SMM_ENTRY_CONTEXT

Processor information and functionality needed by SMM Foundation.

◆ EFI_SMM_ENTRY_POINT

typedef VOID(EFIAPI * EFI_SMM_ENTRY_POINT) (IN CONST EFI_SMM_ENTRY_CONTEXT *SmmEntryContext)

This function is the main entry point to the SMM Foundation.

Parameters
[in]SmmEntryContextProcessor information and functionality needed by SMM Foundation.

◆ EFI_SMM_HANDLER_ENTRY_POINT2

◆ EFI_SMM_INSTALL_CONFIGURATION_TABLE2

typedef EFI_STATUS(EFIAPI * EFI_SMM_INSTALL_CONFIGURATION_TABLE2) (IN CONST EFI_SMM_SYSTEM_TABLE2 *SystemTable, IN CONST EFI_GUID *Guid, IN VOID *Table, IN UINTN TableSize)

Adds, updates, or removes a configuration table entry from the System Management System Table.

The SmmInstallConfigurationTable() function is used to maintain the list of configuration tables that are stored in the System Management System Table. The list is stored as an array of (GUID, Pointer) pairs. The list must be allocated from pool memory with PoolType set to EfiRuntimeServicesData.

Parameters
[in]SystemTableA pointer to the SMM System Table (SMST).
[in]GuidA pointer to the GUID for the entry to add, update, or remove.
[in]TableA pointer to the buffer of the table to add.
[in]TableSizeThe size of the table to install.
Return values
EFI_SUCCESSThe (Guid, Table) pair was added, updated, or removed.
EFI_INVALID_PARAMETERGuid is not valid.
EFI_NOT_FOUNDAn attempt was made to delete a non-existent entry.
EFI_OUT_OF_RESOURCESThere is not enough memory available to complete the operation.

◆ EFI_SMM_INTERRUPT_MANAGE

◆ EFI_SMM_INTERRUPT_REGISTER

◆ EFI_SMM_INTERRUPT_UNREGISTER

◆ EFI_SMM_NOTIFY_FN

◆ EFI_SMM_REGISTER_PROTOCOL_NOTIFY

◆ EFI_SMM_STARTUP_THIS_AP

◆ EFI_SMM_SYSTEM_TABLE2