ipmi.hpp (eff1f2eb46710ee34f7de7c9781b47bd5b946a54) ipmi.hpp (0e9aae5d7e28a1a629a65fd5d767c1695acefdaa)
1#pragma once
2
3#include "handler.hpp"
4
5#include <ipmid/api.h>
6
7namespace google
8{
9namespace ipmi
10{
11
1#pragma once
2
3#include "handler.hpp"
4
5#include <ipmid/api.h>
6
7namespace google
8{
9namespace ipmi
10{
11
12enum SysOEMCommands
13{
14 // The Sys cable check command.
15 SysCableCheck = 0,
16 // The Sys cpld version over ipmi command.
17 SysCpldVersion = 1,
18 // The Sys get eth device command.
19 SysGetEthDevice = 2,
20 // The Sys psu hard reset command.
21 SysPsuHardReset = 3,
22 // The Sys pcie slot count command.
23 SysPcieSlotCount = 4,
24 // The Sys pcie slot to i2c bus mapping command.
25 SysPcieSlotI2cBusMapping = 5,
26 // The Sys "entity id:entity instance" to entity name mapping command.
27 SysEntityName = 6,
28};
29
30// Handle the google-ipmi-sys IPMI OEM commands.
31ipmi_ret_t handleSysCommand(HandlerInterface* handler, ipmi_cmd_t cmd,
32 const uint8_t* reqBuf, uint8_t* replyCmdBuf,
33 size_t* dataLen);
34
35} // namespace ipmi
36} // namespace google
12// Handle the google-ipmi-sys IPMI OEM commands.
13ipmi_ret_t handleSysCommand(HandlerInterface* handler, ipmi_cmd_t cmd,
14 const uint8_t* reqBuf, uint8_t* replyCmdBuf,
15 size_t* dataLen);
16
17} // namespace ipmi
18} // namespace google