blob: 31e63fb9dc59037def70eb1e2f5b67f0451276d1 [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
George Liu8f4717c2025-07-03 09:22:34 +08007// IPMI Command for a Net Function number as specified by IPMI V2.0 spec.
8using Cmd = uint8_t;
Adriana Kobylak40814c62015-10-27 15:58:44 -05009
vishwa36993272015-11-20 12:43:49 -060010// Various Chassis operations under a single command.
George Liu8f4717c2025-07-03 09:22:34 +080011constexpr Cmd cmdPowerOff = 0x00;
12constexpr Cmd cmdPowerOn = 0x01;
13constexpr Cmd cmdPowerCycle = 0x02;
14constexpr Cmd cmdHardReset = 0x03;
15constexpr Cmd cmdPulseDiagnosticInterrupt = 0x04;
16constexpr Cmd cmdSoftOffViaOverTemp = 0x05;
17
Ratan Guptafd28dd72016-08-01 04:58:01 -050018enum class BootOptionParameter : size_t
19{
John Wang97c62e12021-01-19 14:19:55 +080020 setInProgress = 0x0,
Chen Yugang86ac4992021-06-25 08:14:52 +080021 bootFlagValidClr = 0x3,
jayaprakash Mutyalabfd8fc42020-05-05 22:38:03 +000022 bootInfo = 0x4,
23 bootFlags = 0x5,
24 opalNetworkSettings = 0x61
Ratan Guptafd28dd72016-08-01 04:58:01 -050025};
26
27enum class BootOptionResponseSize : size_t
28{
huangheab369282020-10-10 14:40:00 +080029 setInProgress = 3,
jayaprakash Mutyalabfd8fc42020-05-05 22:38:03 +000030 bootFlags = 5,
31 opalNetworkSettings = 50
Ratan Guptafd28dd72016-08-01 04:58:01 -050032};
Yong Lif4e38512019-05-21 14:46:55 +080033
34enum class ChassisIDState : uint8_t
35{
36 off = 0x0,
37 temporaryOn = 0x1,
38 indefiniteOn = 0x2,
39 reserved = 0x3
40};