blob: 8d8af3b07ce7bf933d7377f7872fbc819bde5566 [file] [log] [blame]
Patrick Venture46470a32018-09-07 19:26:25 -07001#pragma once
Adriana Kobylak40814c62015-10-27 15:58:44 -05002
vishwa36993272015-11-20 12:43:49 -06003#include <stdint.h>
Patrick Venture0b02be92018-08-31 11:55:55 -07004
Ratan Guptafd28dd72016-08-01 04:58:01 -05005#include <cstddef>
vishwa36993272015-11-20 12:43:49 -06006
Adriana Kobylak40814c62015-10-27 15:58:44 -05007// Command specific completion codes
8enum ipmi_chassis_return_codes
9{
shgoupfd84fbbf2015-12-17 10:05:51 +080010 IPMI_OK = 0x0,
Adriana Kobylak40814c62015-10-27 15:58:44 -050011 IPMI_CC_PARM_NOT_SUPPORTED = 0x80,
huangheab369282020-10-10 14:40:00 +080012 IPMI_CC_FAIL_SET_IN_PROGRESS = 0x81,
Adriana Kobylak40814c62015-10-27 15:58:44 -050013};
14
shgoupfd84fbbf2015-12-17 10:05:51 +080015// Generic completion codes,
16// see IPMI doc section 5.2
17enum ipmi_generic_return_codes
18{
19 IPMI_OUT_OF_SPACE = 0xC4,
20};
21
vishwa36993272015-11-20 12:43:49 -060022// Various Chassis operations under a single command.
23enum ipmi_chassis_control_cmds : uint8_t
24{
Patrick Venture0b02be92018-08-31 11:55:55 -070025 CMD_POWER_OFF = 0x00,
26 CMD_POWER_ON = 0x01,
27 CMD_POWER_CYCLE = 0x02,
28 CMD_HARD_RESET = 0x03,
29 CMD_PULSE_DIAGNOSTIC_INTR = 0x04,
30 CMD_SOFT_OFF_VIA_OVER_TEMP = 0x05,
vishwa36993272015-11-20 12:43:49 -060031};
Ratan Guptafd28dd72016-08-01 04:58:01 -050032enum class BootOptionParameter : size_t
33{
John Wang97c62e12021-01-19 14:19:55 +080034 setInProgress = 0x0,
Chen Yugang86ac4992021-06-25 08:14:52 +080035 bootFlagValidClr = 0x3,
jayaprakash Mutyalabfd8fc42020-05-05 22:38:03 +000036 bootInfo = 0x4,
37 bootFlags = 0x5,
38 opalNetworkSettings = 0x61
Ratan Guptafd28dd72016-08-01 04:58:01 -050039};
40
41enum class BootOptionResponseSize : size_t
42{
huangheab369282020-10-10 14:40:00 +080043 setInProgress = 3,
jayaprakash Mutyalabfd8fc42020-05-05 22:38:03 +000044 bootFlags = 5,
45 opalNetworkSettings = 50
Ratan Guptafd28dd72016-08-01 04:58:01 -050046};
Yong Lif4e38512019-05-21 14:46:55 +080047
48enum class ChassisIDState : uint8_t
49{
50 off = 0x0,
51 temporaryOn = 0x1,
52 indefiniteOn = 0x2,
53 reserved = 0x3
54};