TianoCore EDK2
master
Loading...
Searching...
No Matches
DxeIpmiLibIpmiProtocol.c
Go to the documentation of this file.
1
9
#include <
PiDxe.h
>
10
#include <
Protocol/IpmiProtocol.h
>
11
#include <
Library/UefiBootServicesTableLib.h
>
12
#include <
Library/DebugLib.h
>
13
14
IPMI_PROTOCOL
*mIpmiProtocol =
NULL
;
15
34
EFI_STATUS
35
EFIAPI
36
IpmiSubmitCommand
(
37
IN
UINT8 NetFunction,
38
IN
UINT8 Command,
39
IN
UINT8 *RequestData,
40
IN
UINT32 RequestDataSize,
41
OUT
UINT8 *ResponseData,
42
IN
OUT
UINT32 *ResponseDataSize
43
)
44
{
45
EFI_STATUS
Status;
46
47
if
(mIpmiProtocol ==
NULL
) {
48
Status =
gBS
->LocateProtocol (
49
&gIpmiProtocolGuid,
50
NULL
,
51
(VOID **)&mIpmiProtocol
52
);
53
if
(EFI_ERROR (Status)) {
54
//
55
// Dxe Ipmi Protocol is not installed. So, IPMI device is not present.
56
//
57
DEBUG
((DEBUG_ERROR,
"IpmiSubmitCommand in Dxe Phase under SMS Status - %r\n"
, Status));
58
return
EFI_NOT_FOUND;
59
}
60
}
61
62
Status = mIpmiProtocol->IpmiSubmitCommand (
63
mIpmiProtocol,
64
NetFunction,
65
Command,
66
RequestData,
67
RequestDataSize,
68
ResponseData,
69
ResponseDataSize
70
);
71
if
(EFI_ERROR (Status)) {
72
return
Status;
73
}
74
75
return
EFI_SUCCESS
;
76
}
IpmiSubmitCommand
EFI_STATUS EFIAPI IpmiSubmitCommand(IN UINT8 NetFunction, IN UINT8 Command, IN UINT8 *RequestData, IN UINT32 RequestDataSize, OUT UINT8 *ResponseData, IN OUT UINT32 *ResponseDataSize)
Definition:
DxeIpmiLibIpmiProtocol.c:36
IpmiProtocol.h
NULL
#define NULL
Definition:
Base.h:319
IN
#define IN
Definition:
Base.h:279
OUT
#define OUT
Definition:
Base.h:284
DebugLib.h
DEBUG
#define DEBUG(Expression)
Definition:
DebugLib.h:434
PiDxe.h
EFI_STATUS
RETURN_STATUS EFI_STATUS
Definition:
UefiBaseType.h:29
EFI_SUCCESS
#define EFI_SUCCESS
Definition:
UefiBaseType.h:112
UefiBootServicesTableLib.h
gBS
EFI_BOOT_SERVICES * gBS
Definition:
UefiBootServicesTableLib.c:17
_IPMI_PROTOCOL
Definition:
IpmiProtocol.h:58
MdeModulePkg
Library
DxeIpmiLibIpmiProtocol
DxeIpmiLibIpmiProtocol.c
Generated on Fri Nov 15 2024 18:01:11 for TianoCore EDK2 by
1.9.6