Per code review, Update Doxygen comments - add /// comments from spec to data and protocol struct.
Add some missing retval's to func comments git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8704 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
@@ -9,7 +9,7 @@
|
|||||||
event from a platform chipset agent is an optional capability for both IA-32 and Itanium based
|
event from a platform chipset agent is an optional capability for both IA-32 and Itanium based
|
||||||
systems.
|
systems.
|
||||||
|
|
||||||
Copyright (c) 2007, Intel Corporation
|
Copyright (c) 2007,2009 Intel Corporation
|
||||||
All rights reserved. This program and the accompanying materials
|
All rights reserved. This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
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
|
which accompanies this distribution. The full text of the license may be found at
|
||||||
@@ -41,7 +41,15 @@ typedef struct _EFI_SMM_CONTROL_PROTOCOL EFI_SMM_CONTROL_PROTOCOL;
|
|||||||
// SMM Access specification Data Structures
|
// SMM Access specification Data Structures
|
||||||
//
|
//
|
||||||
typedef struct {
|
typedef struct {
|
||||||
|
///
|
||||||
|
/// Describes the I/O location of the particular port that engendered the synchronous
|
||||||
|
/// SMI. For example, this location can include but is not limited to the traditional
|
||||||
|
/// PCAT* APM port of 0B2h.
|
||||||
|
///
|
||||||
UINT8 SmiTriggerRegister;
|
UINT8 SmiTriggerRegister;
|
||||||
|
///
|
||||||
|
/// Describes the value that was written to the respective activation port.
|
||||||
|
///
|
||||||
UINT8 SmiDataRegister;
|
UINT8 SmiDataRegister;
|
||||||
} EFI_SMM_CONTROL_REGISTER;
|
} EFI_SMM_CONTROL_REGISTER;
|
||||||
|
|
||||||
@@ -100,6 +108,8 @@ EFI_STATUS
|
|||||||
@param SmiRegister Pointer to the SMI register description structure
|
@param SmiRegister Pointer to the SMI register description structure
|
||||||
|
|
||||||
@retval EFI_SUCCESS The register structure has been returned.
|
@retval EFI_SUCCESS The register structure has been returned.
|
||||||
|
@retval EFI_DEVICE_ERROR The source could not be cleared.
|
||||||
|
@retval EFI_INVALID_PARAMETER The service did not support the Periodic input argument.
|
||||||
|
|
||||||
**/
|
**/
|
||||||
typedef
|
typedef
|
||||||
@@ -125,12 +135,45 @@ EFI_STATUS
|
|||||||
@param MinimumTriggerPeriod
|
@param MinimumTriggerPeriod
|
||||||
Minimum interval at which the platform can set the period.
|
Minimum interval at which the platform can set the period.
|
||||||
|
|
||||||
|
@retval EFI_SUCCESS The register structure has been returned.
|
||||||
**/
|
**/
|
||||||
|
|
||||||
|
//
|
||||||
|
// SMM Control Protocol
|
||||||
|
//
|
||||||
|
/**
|
||||||
|
This protocol is used initiate SMI/PMI activations.
|
||||||
|
This protocol could be published by either of the following:
|
||||||
|
- 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<65> chipset
|
||||||
|
Because of the possibility of performing SMI or PMI IPI transactions, the ability to generate this
|
||||||
|
|
||||||
|
The EFI_SMM_CONTROL_PROTOCOL is used by the platform chipset or processor driver. This
|
||||||
|
protocol is useable both in boot services and runtime. The runtime aspect is so that an
|
||||||
|
implementation of EFI_SMM_BASE_PROTOCOL.Communicate() can layer upon this service
|
||||||
|
and provide an SMI callback from a general EFI runtime driver.
|
||||||
|
The purpose of this protocol is to provide an abstraction to the platform hardware that generates an
|
||||||
|
SMI or PMI. There are often I/O ports that, when accessed, will engender the
|
||||||
|
**/
|
||||||
struct _EFI_SMM_CONTROL_PROTOCOL {
|
struct _EFI_SMM_CONTROL_PROTOCOL {
|
||||||
|
///
|
||||||
|
/// Initiates the SMI/PMI activation.
|
||||||
|
///
|
||||||
EFI_SMM_ACTIVATE Trigger;
|
EFI_SMM_ACTIVATE Trigger;
|
||||||
|
///
|
||||||
|
/// Quiesces the SMI/PMI activation.
|
||||||
|
///
|
||||||
EFI_SMM_DEACTIVATE Clear;
|
EFI_SMM_DEACTIVATE Clear;
|
||||||
|
///
|
||||||
|
/// Provides data on the register used as the source of the SMI.
|
||||||
|
///
|
||||||
EFI_SMM_GET_REGISTER_INFO GetRegisterInfo;
|
EFI_SMM_GET_REGISTER_INFO GetRegisterInfo;
|
||||||
|
///
|
||||||
|
/// Minimum interval at which the platform can set the period. A maximum is not
|
||||||
|
/// specified in that the SMM infrastructure code can emulate a maximum interval that is
|
||||||
|
/// greater than the hardware capabilities by using software emulation in the SMM
|
||||||
|
/// infrastructure code.
|
||||||
|
///
|
||||||
UINTN MinimumTriggerPeriod;
|
UINTN MinimumTriggerPeriod;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user