mirror of https://github.com/acidanthera/audk.git
MdeModulePkg/Include: Add IpmiCommandLib header file
Add IpmiCommandLib to MdeModulePkg. This header file is copied from edk2-platforms/Features/Intel/OutOfBandManagement/ IpmiFeaturePkg\Include\Library. Having this header file in edk2 to avoid the dependence of edk2 module with edk2-platfrom. The NULL instance of IpmiCommandLib under MdeModulePkg has to be implemented for the same reason. IpmiCommandLib.h in edk2-platforms should be removed once this patch set is merged. Expect no impacts on edk2-platforms because MdeModulePkg is referred in INF file by all edk2 modules under edk2-platforms that use IpmiCommandLib. Signed-off-by: Abner Chang <abner.chang@amd.com> Cc: Jian J Wang <jian.j.wang@intel.com> Cc: Liming Gao <gaoliming@byosoft.com.cn> Cc: Nickle Wang <nicklew@nvidia.com> Cc: Igor Kulchytskyy <igork@ami.com> Cc: Isaac Oram <isaac.w.oram@intel.com> Cc: Nate DeSimone <nathaniel.l.desimone@intel.com> Reviewed-by: Isaac Oram <isaac.w.oram@intel.com> Reviewed-by: Igor Kulchytskyy <igork@ami.com> Reviewed-by: Liming Gao <gaoliming@byosoft.com.cn>
This commit is contained in:
parent
426efcc374
commit
bde407db51
|
@ -0,0 +1,683 @@
|
|||
/** @file
|
||||
This library abstract how to send/receive IPMI command.
|
||||
|
||||
Copyright (c) 2018-2021, Intel Corporation. All rights reserved.<BR>
|
||||
Copyright (C) 2023 Advanced Micro Devices, Inc. All rights reserved.<BR>
|
||||
|
||||
SPDX-License-Identifier: BSD-2-Clause-Patent
|
||||
|
||||
**/
|
||||
|
||||
#ifndef IPMI_COMMAND_LIB_H_
|
||||
#define IPMI_COMMAND_LIB_H_
|
||||
|
||||
#include <Uefi.h>
|
||||
#include <IndustryStandard/Ipmi.h>
|
||||
|
||||
//
|
||||
// IPMI NetFnApp
|
||||
//
|
||||
|
||||
/**
|
||||
This function gets the IPMI Device ID.
|
||||
|
||||
@param[out] DeviceId Get device ID response.
|
||||
|
||||
@retval EFI_SUCCESS Command is sent successfully.
|
||||
@retval EFI_NOT_AVAILABLE_YET Transport interface is not ready yet.
|
||||
@retval Other Failure.
|
||||
|
||||
**/
|
||||
EFI_STATUS
|
||||
EFIAPI
|
||||
IpmiGetDeviceId (
|
||||
OUT IPMI_GET_DEVICE_ID_RESPONSE *DeviceId
|
||||
);
|
||||
|
||||
/**
|
||||
This function gets the self-test result.
|
||||
|
||||
@param[out] SelfTestResult Self test command response.
|
||||
|
||||
@retval EFI_SUCCESS Command is sent successfully.
|
||||
@retval EFI_NOT_AVAILABLE_YET Transport interface is not ready yet.
|
||||
@retval Other Failure.
|
||||
|
||||
**/
|
||||
EFI_STATUS
|
||||
EFIAPI
|
||||
IpmiGetSelfTestResult (
|
||||
OUT IPMI_SELF_TEST_RESULT_RESPONSE *SelfTestResult
|
||||
);
|
||||
|
||||
/**
|
||||
This function resets watchdog timer.
|
||||
|
||||
@param[out] CompletionCode The command completion code.
|
||||
|
||||
@retval EFI_SUCCESS Command is sent successfully.
|
||||
@retval EFI_NOT_AVAILABLE_YET Transport interface is not ready yet.
|
||||
@retval Other Failure.
|
||||
|
||||
**/
|
||||
EFI_STATUS
|
||||
EFIAPI
|
||||
IpmiResetWatchdogTimer (
|
||||
OUT UINT8 *CompletionCode
|
||||
);
|
||||
|
||||
/**
|
||||
This function sets watchdog timer.
|
||||
|
||||
@param[in] SetWatchdogTimer Set watchdog timer request.
|
||||
@param[out] CompletionCode The command completion code.
|
||||
|
||||
@retval EFI_SUCCESS Command is sent successfully.
|
||||
@retval EFI_NOT_AVAILABLE_YET Transport interface is not ready yet.
|
||||
@retval Other Failure.
|
||||
|
||||
|
||||
**/
|
||||
EFI_STATUS
|
||||
EFIAPI
|
||||
IpmiSetWatchdogTimer (
|
||||
IN IPMI_SET_WATCHDOG_TIMER_REQUEST *SetWatchdogTimer,
|
||||
OUT UINT8 *CompletionCode
|
||||
);
|
||||
|
||||
/**
|
||||
This function gets watchdog timer.
|
||||
|
||||
@param[out] GetWatchdogTimer Get watchdog timer response.
|
||||
|
||||
@retval EFI_SUCCESS Command is sent successfully.
|
||||
@retval EFI_NOT_AVAILABLE_YET Transport interface is not ready yet.
|
||||
@retval Other Failure.
|
||||
|
||||
**/
|
||||
EFI_STATUS
|
||||
EFIAPI
|
||||
IpmiGetWatchdogTimer (
|
||||
OUT IPMI_GET_WATCHDOG_TIMER_RESPONSE *GetWatchdogTimer
|
||||
);
|
||||
|
||||
/**
|
||||
This function sets BMC global enables.
|
||||
|
||||
@param[in] SetBmcGlobalEnables Set BMC global enables command request.
|
||||
@param[out] CompletionCode The command completion code.
|
||||
|
||||
@retval EFI_SUCCESS Command is sent successfully.
|
||||
@retval EFI_NOT_AVAILABLE_YET Transport interface is not ready yet.
|
||||
@retval Other Failure.
|
||||
|
||||
**/
|
||||
EFI_STATUS
|
||||
EFIAPI
|
||||
IpmiSetBmcGlobalEnables (
|
||||
IN IPMI_SET_BMC_GLOBAL_ENABLES_REQUEST *SetBmcGlobalEnables,
|
||||
OUT UINT8 *CompletionCode
|
||||
);
|
||||
|
||||
/**
|
||||
This function gets BMC global enables.
|
||||
|
||||
@param[out] GetBmcGlobalEnables Get BMC global enables command response.
|
||||
|
||||
@retval EFI_SUCCESS Command is sent successfully.
|
||||
@retval EFI_NOT_AVAILABLE_YET Transport interface is not ready yet.
|
||||
@retval Other Failure.
|
||||
|
||||
**/
|
||||
EFI_STATUS
|
||||
EFIAPI
|
||||
IpmiGetBmcGlobalEnables (
|
||||
OUT IPMI_GET_BMC_GLOBAL_ENABLES_RESPONSE *GetBmcGlobalEnables
|
||||
);
|
||||
|
||||
/**
|
||||
This function clears message flag.
|
||||
|
||||
@param[in] ClearMessageFlagsRequest Clear message flags command request.
|
||||
@param[out] CompletionCode The command completion code.
|
||||
|
||||
@retval EFI_SUCCESS Command is sent successfully.
|
||||
@retval EFI_NOT_AVAILABLE_YET Transport interface is not ready yet.
|
||||
@retval Other Failure.
|
||||
|
||||
**/
|
||||
EFI_STATUS
|
||||
EFIAPI
|
||||
IpmiClearMessageFlags (
|
||||
IN IPMI_CLEAR_MESSAGE_FLAGS_REQUEST *ClearMessageFlagsRequest,
|
||||
OUT UINT8 *CompletionCode
|
||||
);
|
||||
|
||||
/**
|
||||
This function gets message flag.
|
||||
|
||||
@param[out] GetMessageFlagsResponse Get message flags response.
|
||||
|
||||
@retval EFI_SUCCESS Command is sent successfully.
|
||||
@retval EFI_NOT_AVAILABLE_YET Transport interface is not ready yet.
|
||||
@retval Other Failure.
|
||||
|
||||
**/
|
||||
EFI_STATUS
|
||||
EFIAPI
|
||||
IpmiGetMessageFlags (
|
||||
OUT IPMI_GET_MESSAGE_FLAGS_RESPONSE *GetMessageFlagsResponse
|
||||
);
|
||||
|
||||
/**
|
||||
This function gets message.
|
||||
|
||||
@param[out] GetMessageResponse Get message command response.
|
||||
@param[in,out] GetMessageResponseSize The size of get message response.
|
||||
|
||||
@retval EFI_SUCCESS Command is sent successfully.
|
||||
@retval EFI_NOT_AVAILABLE_YET Transport interface is not ready yet.
|
||||
@retval Other Failure.
|
||||
|
||||
**/
|
||||
EFI_STATUS
|
||||
EFIAPI
|
||||
IpmiGetMessage (
|
||||
OUT IPMI_GET_MESSAGE_RESPONSE *GetMessageResponse,
|
||||
IN OUT UINT32 *GetMessageResponseSize
|
||||
);
|
||||
|
||||
/**
|
||||
This function sends message.
|
||||
|
||||
@param[in] SendMessageRequest The send message command request.
|
||||
@param[in] SendMessageRequestSize The size of the send message command request.
|
||||
@param[out] SendMessageResponse The send message command response.
|
||||
@param[in,out] SendMessageResponseSize The size of the send message command response.
|
||||
When input, the expected size of response.
|
||||
When output, the actual size of response.
|
||||
|
||||
@retval EFI_SUCCESS Command is sent successfully.
|
||||
@retval EFI_NOT_AVAILABLE_YET Transport interface is not ready yet.
|
||||
@retval Other Failure.
|
||||
|
||||
**/
|
||||
EFI_STATUS
|
||||
EFIAPI
|
||||
IpmiSendMessage (
|
||||
IN IPMI_SEND_MESSAGE_REQUEST *SendMessageRequest,
|
||||
IN UINT32 SendMessageRequestSize,
|
||||
OUT IPMI_SEND_MESSAGE_RESPONSE *SendMessageResponse,
|
||||
IN OUT UINT32 *SendMessageResponseSize
|
||||
);
|
||||
|
||||
/**
|
||||
This function gets the system UUID.
|
||||
|
||||
@param[out] SystemGuid The pointer to retrieve system UUID.
|
||||
|
||||
@retval EFI_SUCCESS Command is sent successfully.
|
||||
@retval EFI_NOT_AVAILABLE_YET Transport interface is not ready yet.
|
||||
@retval Others Other errors.
|
||||
|
||||
**/
|
||||
EFI_STATUS
|
||||
EFIAPI
|
||||
IpmiGetSystemUuid (
|
||||
OUT EFI_GUID *SystemGuid
|
||||
);
|
||||
|
||||
/**
|
||||
This function gets the channel information.
|
||||
|
||||
@param[in] GetChannelInfoRequest The get channel information request.
|
||||
@param[in] GetChannelInfoResponse The get channel information response.
|
||||
@param[in,out] GetChannelInfoResponseSize When input, the expected size of response.
|
||||
When output, the exact size of the returned
|
||||
response.
|
||||
|
||||
@retval EFI_SUCCESS Command is sent successfully.
|
||||
@retval EFI_NOT_AVAILABLE_YET Transport interface is not ready yet.
|
||||
@retval Other Failure.
|
||||
|
||||
**/
|
||||
EFI_STATUS
|
||||
EFIAPI
|
||||
IpmiGetChannelInfo (
|
||||
IN IPMI_GET_CHANNEL_INFO_REQUEST *GetChannelInfoRequest,
|
||||
OUT IPMI_GET_CHANNEL_INFO_RESPONSE *GetChannelInfoResponse,
|
||||
OUT UINT32 *GetChannelInfoResponseSize
|
||||
);
|
||||
|
||||
//
|
||||
// IPMI NetFnTransport
|
||||
//
|
||||
|
||||
/**
|
||||
This function activates SOL
|
||||
|
||||
@param[in] SolActivatingRequest SOL activating request.
|
||||
@param[out] CompletionCode The command completion code.
|
||||
|
||||
@retval EFI_SUCCESS Command is sent successfully.
|
||||
@retval EFI_NOT_AVAILABLE_YET Transport interface is not ready yet.
|
||||
@retval Other Failure.
|
||||
|
||||
**/
|
||||
EFI_STATUS
|
||||
EFIAPI
|
||||
IpmiSolActivating (
|
||||
IN IPMI_SOL_ACTIVATING_REQUEST *SolActivatingRequest,
|
||||
OUT UINT8 *CompletionCode
|
||||
);
|
||||
|
||||
/**
|
||||
This function sets SOL configuration parameters.
|
||||
|
||||
@param[in] SetConfigurationParametersRequest Set SOL configuration parameters
|
||||
command request.
|
||||
@param[in] SetConfigurationParametersRequestSize Size of the set SOL configuration
|
||||
parameters command request.
|
||||
@param[out] CompletionCode The command completion code.
|
||||
|
||||
@retval EFI_SUCCESS Command is sent successfully.
|
||||
@retval EFI_NOT_AVAILABLE_YET Transport interface is not ready yet.
|
||||
@retval Other Failure.
|
||||
|
||||
**/
|
||||
EFI_STATUS
|
||||
EFIAPI
|
||||
IpmiSetSolConfigurationParameters (
|
||||
IN IPMI_SET_SOL_CONFIGURATION_PARAMETERS_REQUEST *SetConfigurationParametersRequest,
|
||||
IN UINT32 SetConfigurationParametersRequestSize,
|
||||
OUT UINT8 *CompletionCode
|
||||
);
|
||||
|
||||
/**
|
||||
This function gets SOL configuration parameters.
|
||||
|
||||
@param[in] GetConfigurationParametersRequest Get SOL configuration parameters
|
||||
command request.
|
||||
@param[out] GetConfigurationParametersResponse Get SOL configuration parameters
|
||||
response.
|
||||
@param[in,out] GetConfigurationParametersResponseSize When input, the size of the expected
|
||||
response.
|
||||
When output, the exact size of
|
||||
expect response.
|
||||
|
||||
@retval EFI_SUCCESS Command is sent successfully.
|
||||
@retval EFI_NOT_AVAILABLE_YET Transport interface is not ready yet.
|
||||
@retval Other Failure.
|
||||
|
||||
**/
|
||||
EFI_STATUS
|
||||
EFIAPI
|
||||
IpmiGetSolConfigurationParameters (
|
||||
IN IPMI_GET_SOL_CONFIGURATION_PARAMETERS_REQUEST *GetConfigurationParametersRequest,
|
||||
OUT IPMI_GET_SOL_CONFIGURATION_PARAMETERS_RESPONSE *GetConfigurationParametersResponse,
|
||||
IN OUT UINT32 *GetConfigurationParametersResponseSize
|
||||
);
|
||||
|
||||
/**
|
||||
This function gets the LAN configuration parameter.
|
||||
|
||||
@param[in] GetLanConfigurationParametersRequest Get LAN configuration parameters command request.
|
||||
@param[in] GetLanConfigurationParametersResponse The response of the get LAN configuration parameters.
|
||||
@param[in,out] GetLanConfigurationParametersSize When input, the expected size of response data.
|
||||
When out, the exact size of response data.
|
||||
|
||||
@retval EFI_SUCCESS Command is sent successfully.
|
||||
@retval EFI_NOT_AVAILABLE_YET Transport interface is not ready yet.
|
||||
@retval Other Failure.
|
||||
|
||||
**/
|
||||
|
||||
EFI_STATUS
|
||||
EFIAPI
|
||||
IpmiGetLanConfigurationParameters (
|
||||
IN IPMI_GET_LAN_CONFIGURATION_PARAMETERS_REQUEST *GetLanConfigurationParametersRequest,
|
||||
OUT IPMI_GET_LAN_CONFIGURATION_PARAMETERS_RESPONSE *GetLanConfigurationParametersResponse,
|
||||
IN OUT UINT32 *GetLanConfigurationParametersSize
|
||||
);
|
||||
|
||||
//
|
||||
// IPMI NetFnChassis
|
||||
//
|
||||
|
||||
/**
|
||||
This function gets chassis capability.
|
||||
|
||||
@param[out] GetChassisCapabilitiesResponse Gets chassis capability command response.
|
||||
|
||||
@retval EFI_SUCCESS Command is sent successfully.
|
||||
@retval EFI_NOT_AVAILABLE_YET Transport interface is not ready yet.
|
||||
@retval Other Failure.
|
||||
|
||||
**/
|
||||
EFI_STATUS
|
||||
EFIAPI
|
||||
IpmiGetChassisCapabilities (
|
||||
OUT IPMI_GET_CHASSIS_CAPABILITIES_RESPONSE *GetChassisCapabilitiesResponse
|
||||
);
|
||||
|
||||
/**
|
||||
This function gets chassis status.
|
||||
|
||||
@param[out] GetChassisCapabilitiesResponse The get chassis status command response.
|
||||
|
||||
@retval EFI_SUCCESS Command is sent successfully.
|
||||
@retval EFI_NOT_AVAILABLE_YET Transport interface is not ready yet.
|
||||
@retval Other Failure.
|
||||
|
||||
**/
|
||||
EFI_STATUS
|
||||
EFIAPI
|
||||
IpmiGetChassisStatus (
|
||||
OUT IPMI_GET_CHASSIS_STATUS_RESPONSE *GetChassisStatusResponse
|
||||
);
|
||||
|
||||
/**
|
||||
This function sends chassis control request.
|
||||
|
||||
@param[in] ChassisControlRequest The chassis control request.
|
||||
@param[out] CompletionCode The command completion code.
|
||||
|
||||
@retval EFI_SUCCESS Command is sent successfully.
|
||||
@retval EFI_NOT_AVAILABLE_YET Transport interface is not ready yet.
|
||||
@retval Other Failure.
|
||||
|
||||
**/
|
||||
EFI_STATUS
|
||||
EFIAPI
|
||||
IpmiChassisControl (
|
||||
IN IPMI_CHASSIS_CONTROL_REQUEST *ChassisControlRequest,
|
||||
OUT UINT8 *CompletionCode
|
||||
);
|
||||
|
||||
/**
|
||||
This function sets power restore policy.
|
||||
|
||||
@param[in] SetPowerRestireRequest The set power restore policy control
|
||||
command request.
|
||||
@param[out] SetPowerRestireResponse The response of power restore policy.
|
||||
|
||||
@retval EFI_SUCCESS Command is sent successfully.
|
||||
@retval EFI_NOT_AVAILABLE_YET Transport interface is not ready yet.
|
||||
@retval Other Failure.
|
||||
|
||||
**/
|
||||
EFI_STATUS
|
||||
EFIAPI
|
||||
IpmiSetPowerRestorePolicy (
|
||||
IN IPMI_SET_POWER_RESTORE_POLICY_REQUEST *SetPowerRestireRequest,
|
||||
OUT IPMI_SET_POWER_RESTORE_POLICY_RESPONSE *SetPowerRestireResponse
|
||||
);
|
||||
|
||||
//
|
||||
// IPMI NetFnStorage
|
||||
//
|
||||
|
||||
/**
|
||||
This function sets system boot option.
|
||||
|
||||
@param[in] BootOptionsRequest Set system boot option request.
|
||||
@param[out] BootOptionsResponse The response of set system boot
|
||||
option request.
|
||||
|
||||
@retval EFI_SUCCESS Command is sent successfully.
|
||||
@retval EFI_NOT_AVAILABLE_YET Transport interface is not ready yet.
|
||||
@retval Other Failure.
|
||||
|
||||
**/
|
||||
EFI_STATUS
|
||||
EFIAPI
|
||||
IpmiSetSystemBootOptions (
|
||||
IN IPMI_SET_BOOT_OPTIONS_REQUEST *BootOptionsRequest,
|
||||
OUT IPMI_SET_BOOT_OPTIONS_RESPONSE *BootOptionsResponse
|
||||
);
|
||||
|
||||
/**
|
||||
This function gets system boot option.
|
||||
|
||||
@param[in] BootOptionsRequest Get system boot option request.
|
||||
@param[out] BootOptionsResponse The response of get system boot
|
||||
option request.
|
||||
|
||||
@retval EFI_SUCCESS Command is sent successfully.
|
||||
@retval EFI_NOT_AVAILABLE_YET Transport interface is not ready yet.
|
||||
@retval Other Failure.
|
||||
|
||||
**/
|
||||
EFI_STATUS
|
||||
EFIAPI
|
||||
IpmiGetSystemBootOptions (
|
||||
IN IPMI_GET_BOOT_OPTIONS_REQUEST *BootOptionsRequest,
|
||||
OUT IPMI_GET_BOOT_OPTIONS_RESPONSE *BootOptionsResponse
|
||||
);
|
||||
|
||||
/**
|
||||
This function gets FRU inventory area info.
|
||||
|
||||
@param[in] GetFruInventoryAreaInfoRequest Get FRU inventory area command request.
|
||||
@param[out] GetFruInventoryAreaInfoResponse get FRU inventory area command response.
|
||||
|
||||
@retval EFI_SUCCESS Command is sent successfully.
|
||||
@retval EFI_NOT_AVAILABLE_YET Transport interface is not ready yet.
|
||||
@retval Other Failure.
|
||||
|
||||
**/
|
||||
EFI_STATUS
|
||||
EFIAPI
|
||||
IpmiGetFruInventoryAreaInfo (
|
||||
IN IPMI_GET_FRU_INVENTORY_AREA_INFO_REQUEST *GetFruInventoryAreaInfoRequest,
|
||||
OUT IPMI_GET_FRU_INVENTORY_AREA_INFO_RESPONSE *GetFruInventoryAreaInfoResponse
|
||||
);
|
||||
|
||||
/**
|
||||
This function reads FRU data.
|
||||
|
||||
@param[in] ReadFruDataRequest Read FRU data command request.
|
||||
@param[out] ReadFruDataResponse Read FRU data command response.
|
||||
@param[in,out] ReadFruDataResponseSize Size of the read FRU data response.
|
||||
When input, the expected size of response data.
|
||||
When out, the exact size of response data.
|
||||
|
||||
@retval EFI_SUCCESS Command is sent successfully.
|
||||
@retval EFI_NOT_AVAILABLE_YET Transport interface is not ready yet.
|
||||
@retval Other Failure.
|
||||
|
||||
**/
|
||||
EFI_STATUS
|
||||
EFIAPI
|
||||
IpmiReadFruData (
|
||||
IN IPMI_READ_FRU_DATA_REQUEST *ReadFruDataRequest,
|
||||
OUT IPMI_READ_FRU_DATA_RESPONSE *ReadFruDataResponse,
|
||||
IN OUT UINT32 *ReadFruDataResponseSize
|
||||
);
|
||||
|
||||
/**
|
||||
This function gets chassis capability.
|
||||
|
||||
@param[in] WriteFruDataRequest Write FRU data command request.
|
||||
@param[in] WriteFruDataRequestSize Size of the write FRU data command request.
|
||||
@param[out] WriteFruDataResponse Write FRU data response.
|
||||
|
||||
@retval EFI_SUCCESS Command is sent successfully.
|
||||
@retval EFI_NOT_AVAILABLE_YET Transport interface is not ready yet.
|
||||
@retval Other Failure.
|
||||
|
||||
**/
|
||||
EFI_STATUS
|
||||
EFIAPI
|
||||
IpmiWriteFruData (
|
||||
IN IPMI_WRITE_FRU_DATA_REQUEST *WriteFruDataRequest,
|
||||
IN UINT32 WriteFruDataRequestSize,
|
||||
OUT IPMI_WRITE_FRU_DATA_RESPONSE *WriteFruDataResponse
|
||||
);
|
||||
|
||||
/**
|
||||
This function gets SEL information.
|
||||
|
||||
@param[out] GetSelInfoResponse Get SEL information command response.
|
||||
|
||||
@retval EFI_SUCCESS Command is sent successfully.
|
||||
@retval EFI_NOT_AVAILABLE_YET Transport interface is not ready yet.
|
||||
@retval Other Failure.
|
||||
|
||||
**/
|
||||
EFI_STATUS
|
||||
EFIAPI
|
||||
IpmiGetSelInfo (
|
||||
OUT IPMI_GET_SEL_INFO_RESPONSE *GetSelInfoResponse
|
||||
);
|
||||
|
||||
/**
|
||||
This function gets SEL entry.
|
||||
|
||||
@param[in] GetSelEntryRequest Get SEL entry command request.
|
||||
@param[out] GetSelEntryResponse Get SEL entry command response.
|
||||
@param[in,out] GetSelEntryResponseSize Size of Get SEL entry request.
|
||||
When input, the expected size of response data.
|
||||
When out, the exact size of response data.
|
||||
|
||||
@retval EFI_SUCCESS Command is sent successfully.
|
||||
@retval EFI_NOT_AVAILABLE_YET Transport interface is not ready yet.
|
||||
@retval Other Failure.
|
||||
|
||||
**/
|
||||
EFI_STATUS
|
||||
EFIAPI
|
||||
IpmiGetSelEntry (
|
||||
IN IPMI_GET_SEL_ENTRY_REQUEST *GetSelEntryRequest,
|
||||
OUT IPMI_GET_SEL_ENTRY_RESPONSE *GetSelEntryResponse,
|
||||
IN OUT UINT32 *GetSelEntryResponseSize
|
||||
);
|
||||
|
||||
/**
|
||||
This function adds SEL entry.
|
||||
|
||||
@param[in] AddSelEntryRequest Add SEL entry command request.
|
||||
@param[out] AddSelEntryResponse Add SEL entry command response.
|
||||
|
||||
@retval EFI_SUCCESS Command is sent successfully.
|
||||
@retval EFI_NOT_AVAILABLE_YET Transport interface is not ready yet.
|
||||
@retval Other Failure.
|
||||
|
||||
**/
|
||||
EFI_STATUS
|
||||
EFIAPI
|
||||
IpmiAddSelEntry (
|
||||
IN IPMI_ADD_SEL_ENTRY_REQUEST *AddSelEntryRequest,
|
||||
OUT IPMI_ADD_SEL_ENTRY_RESPONSE *AddSelEntryResponse
|
||||
);
|
||||
|
||||
/**
|
||||
This function partially adds SEL entry.
|
||||
|
||||
@param[in] PartialAddSelEntryRequest Partial add SEL entry command request.
|
||||
@param[in] PartialAddSelEntryRequestSize Size of partial add SEL entry command request.
|
||||
@param[out] PartialAddSelEntryResponse Partial add SEL entry command response.
|
||||
|
||||
@retval EFI_SUCCESS Command is sent successfully.
|
||||
@retval EFI_NOT_AVAILABLE_YET Transport interface is not ready yet.
|
||||
@retval Other Failure.
|
||||
|
||||
**/
|
||||
EFI_STATUS
|
||||
EFIAPI
|
||||
IpmiPartialAddSelEntry (
|
||||
IN IPMI_PARTIAL_ADD_SEL_ENTRY_REQUEST *PartialAddSelEntryRequest,
|
||||
IN UINT32 PartialAddSelEntryRequestSize,
|
||||
OUT IPMI_PARTIAL_ADD_SEL_ENTRY_RESPONSE *PartialAddSelEntryResponse
|
||||
);
|
||||
|
||||
/**
|
||||
This function clears SEL entry.
|
||||
|
||||
@param[in] ClearSelRequest Clear SEL command request.
|
||||
@param[out] ClearSelResponse Clear SEL command response.
|
||||
|
||||
@retval EFI_SUCCESS Command is sent successfully.
|
||||
@retval EFI_NOT_AVAILABLE_YET Transport interface is not ready yet.
|
||||
@retval Other Failure.
|
||||
|
||||
**/
|
||||
EFI_STATUS
|
||||
EFIAPI
|
||||
IpmiClearSel (
|
||||
IN IPMI_CLEAR_SEL_REQUEST *ClearSelRequest,
|
||||
OUT IPMI_CLEAR_SEL_RESPONSE *ClearSelResponse
|
||||
);
|
||||
|
||||
/**
|
||||
This function gets SEL time.
|
||||
|
||||
@param[out] GetSelTimeResponse Get SEL time command response.
|
||||
|
||||
@retval EFI_SUCCESS Command is sent successfully.
|
||||
@retval EFI_NOT_AVAILABLE_YET Transport interface is not ready yet.
|
||||
@retval Other Failure.
|
||||
|
||||
**/
|
||||
EFI_STATUS
|
||||
EFIAPI
|
||||
IpmiGetSelTime (
|
||||
OUT IPMI_GET_SEL_TIME_RESPONSE *GetSelTimeResponse
|
||||
);
|
||||
|
||||
/**
|
||||
This function sets SEL time.
|
||||
|
||||
@param[in] SetSelTimeRequest Set SEL time command request.
|
||||
@param[out] CompletionCode Command completion code.
|
||||
|
||||
@retval EFI_SUCCESS Command is sent successfully.
|
||||
@retval EFI_NOT_AVAILABLE_YET Transport interface is not ready yet.
|
||||
@retval Other Failure.
|
||||
|
||||
**/
|
||||
EFI_STATUS
|
||||
EFIAPI
|
||||
IpmiSetSelTime (
|
||||
IN IPMI_SET_SEL_TIME_REQUEST *SetSelTimeRequest,
|
||||
OUT UINT8 *CompletionCode
|
||||
);
|
||||
|
||||
/**
|
||||
This function gets SDR repository information.
|
||||
|
||||
@param[out] GetSdrRepositoryInfoResp Get SDR repository response.
|
||||
|
||||
@retval EFI_SUCCESS Command is sent successfully.
|
||||
@retval EFI_NOT_AVAILABLE_YET Transport interface is not ready yet.
|
||||
@retval Other Failure.
|
||||
**/
|
||||
EFI_STATUS
|
||||
EFIAPI
|
||||
IpmiGetSdrRepositoryInfo (
|
||||
OUT IPMI_GET_SDR_REPOSITORY_INFO_RESPONSE *GetSdrRepositoryInfoResp
|
||||
);
|
||||
|
||||
/**
|
||||
This function gets SDR
|
||||
|
||||
@param[in] GetSdrRequest Get SDR resquest.
|
||||
@param[out] GetSdrResponse Get SDR response.
|
||||
@param[in,out] GetSdrResponseSize The size of get SDR response.
|
||||
When input, the expected size of response data.
|
||||
When out, the exact size of response data.
|
||||
|
||||
@retval EFI_SUCCESS Command is sent successfully.
|
||||
@retval EFI_NOT_AVAILABLE_YET Transport interface is not ready yet.
|
||||
@retval Other Failure.
|
||||
|
||||
**/
|
||||
EFI_STATUS
|
||||
EFIAPI
|
||||
IpmiGetSdr (
|
||||
IN IPMI_GET_SDR_REQUEST *GetSdrRequest,
|
||||
OUT IPMI_GET_SDR_RESPONSE *GetSdrResponse,
|
||||
IN OUT UINT32 *GetSdrResponseSize
|
||||
);
|
||||
|
||||
#endif
|
Loading…
Reference in New Issue