xref: /openbmc/phosphor-host-ipmid/chassishandler.hpp (revision 87993931417bcbe234337b6b7b11737118b448d7)
146470a38SPatrick Venture #pragma once
246470a38SPatrick Venture 
346470a38SPatrick Venture #include <stdint.h>
446470a38SPatrick Venture 
546470a38SPatrick Venture #include <cstddef>
646470a38SPatrick Venture 
746470a38SPatrick Venture // Command specific completion codes
846470a38SPatrick Venture enum ipmi_chassis_return_codes
946470a38SPatrick Venture {
1046470a38SPatrick Venture     IPMI_OK = 0x0,
1146470a38SPatrick Venture     IPMI_CC_PARM_NOT_SUPPORTED = 0x80,
12ab369285Shuanghe     IPMI_CC_FAIL_SET_IN_PROGRESS = 0x81,
1346470a38SPatrick Venture };
1446470a38SPatrick Venture 
1546470a38SPatrick Venture // Generic completion codes,
1646470a38SPatrick Venture // see IPMI doc section 5.2
1746470a38SPatrick Venture enum ipmi_generic_return_codes
1846470a38SPatrick Venture {
1946470a38SPatrick Venture     IPMI_OUT_OF_SPACE = 0xC4,
2046470a38SPatrick Venture };
2146470a38SPatrick Venture 
2246470a38SPatrick Venture // Various Chassis operations under a single command.
2346470a38SPatrick Venture enum ipmi_chassis_control_cmds : uint8_t
2446470a38SPatrick Venture {
2546470a38SPatrick Venture     CMD_POWER_OFF = 0x00,
2646470a38SPatrick Venture     CMD_POWER_ON = 0x01,
2746470a38SPatrick Venture     CMD_POWER_CYCLE = 0x02,
2846470a38SPatrick Venture     CMD_HARD_RESET = 0x03,
2946470a38SPatrick Venture     CMD_PULSE_DIAGNOSTIC_INTR = 0x04,
3046470a38SPatrick Venture     CMD_SOFT_OFF_VIA_OVER_TEMP = 0x05,
3146470a38SPatrick Venture };
3246470a38SPatrick Venture enum class BootOptionParameter : size_t
3346470a38SPatrick Venture {
34ab369285Shuanghe     setInProgress = 0x0,
35*86ac4991SChen Yugang     bootFlagValidClr = 0x3,
36bfd8fc4bSjayaprakash Mutyala     bootInfo = 0x4,
37bfd8fc4bSjayaprakash Mutyala     bootFlags = 0x5,
38bfd8fc4bSjayaprakash Mutyala     opalNetworkSettings = 0x61
3946470a38SPatrick Venture };
4046470a38SPatrick Venture 
4146470a38SPatrick Venture enum class BootOptionResponseSize : size_t
4246470a38SPatrick Venture {
43ab369285Shuanghe     setInProgress = 3,
44bfd8fc4bSjayaprakash Mutyala     bootFlags = 5,
45bfd8fc4bSjayaprakash Mutyala     opalNetworkSettings = 50
4646470a38SPatrick Venture };
47f4e38515SYong Li 
48f4e38515SYong Li enum class ChassisIDState : uint8_t
49f4e38515SYong Li {
50f4e38515SYong Li     off = 0x0,
51f4e38515SYong Li     temporaryOn = 0x1,
52f4e38515SYong Li     indefiniteOn = 0x2,
53f4e38515SYong Li     reserved = 0x3
54f4e38515SYong Li };
55