]> git.proxmox.com Git - mirror_edk2.git/blame - MdeModulePkg/Include/Library/IpmiLib.h
MdeModulePkg/NetLib: Add NetLibDetectMediaWaitTimeout() API to support EFI_NOT_READY...
[mirror_edk2.git] / MdeModulePkg / Include / Library / IpmiLib.h
CommitLineData
54b330a4
DB
1/** @file\r
2 This library abstract how to access IPMI device via IPMI command.\r
3\r
4Copyright (c) 2011 - 2015, Intel Corporation. All rights reserved. <BR>\r
5This program and the accompanying materials\r
6are licensed and made available under the terms and conditions of the BSD License\r
7which accompanies this distribution. The full text of the license may be found at\r
8http://opensource.org/licenses/bsd-license.php\r
9\r
10THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
11WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
12\r
13**/\r
14\r
15#ifndef _IPMI_LIB_H_\r
16#define _IPMI_LIB_H_\r
17\r
18#include <Uefi.h>\r
19#include <IndustryStandard/Ipmi.h>\r
20\r
21\r
22/**\r
23 This service enables submitting commands via Ipmi.\r
24\r
25 @param[in] NetFunction Net function of the command.\r
26 @param[in] Command IPMI Command.\r
27 @param[in] RequestData Command Request Data.\r
28 @param[in] RequestDataSize Size of Command Request Data.\r
29 @param[out] ResponseData Command Response Data. The completion code is the first byte of response data.\r
30 @param[in, out] ResponseDataSize Size of Command Response Data.\r
31\r
32 @retval EFI_SUCCESS The command byte stream was successfully submit to the device and a response was successfully received.\r
33 @retval EFI_NOT_FOUND The command was not successfully sent to the device or a response was not successfully received from the device.\r
34 @retval EFI_NOT_READY Ipmi Device is not ready for Ipmi command access.\r
35 @retval EFI_DEVICE_ERROR Ipmi Device hardware error.\r
36 @retval EFI_TIMEOUT The command time out.\r
37 @retval EFI_UNSUPPORTED The command was not successfully sent to the device.\r
38 @retval EFI_OUT_OF_RESOURCES The resource allcation is out of resource or data size error.\r
39**/\r
40EFI_STATUS\r
41EFIAPI\r
42IpmiSubmitCommand (\r
43 IN UINT8 NetFunction,\r
44 IN UINT8 Command,\r
45 IN UINT8 *RequestData,\r
46 IN UINT32 RequestDataSize,\r
47 OUT UINT8 *ResponseData,\r
48 IN OUT UINT32 *ResponseDataSize\r
49 );\r
50\r
51#endif\r