1 #pragma once 2 3 #include <stdint.h> 4 5 #include <cstddef> 6 7 // IPMI Command for a Net Function number as specified by IPMI V2.0 spec. 8 using Cmd = uint8_t; 9 10 // Various Chassis operations under a single command. 11 constexpr Cmd cmdPowerOff = 0x00; 12 constexpr Cmd cmdPowerOn = 0x01; 13 constexpr Cmd cmdPowerCycle = 0x02; 14 constexpr Cmd cmdHardReset = 0x03; 15 constexpr Cmd cmdPulseDiagnosticInterrupt = 0x04; 16 constexpr Cmd cmdSoftOffViaOverTemp = 0x05; 17 18 enum class BootOptionParameter : size_t 19 { 20 setInProgress = 0x0, 21 bootFlagValidClr = 0x3, 22 bootInfo = 0x4, 23 bootFlags = 0x5, 24 opalNetworkSettings = 0x61 25 }; 26 27 enum class BootOptionResponseSize : size_t 28 { 29 setInProgress = 3, 30 bootFlags = 5, 31 opalNetworkSettings = 50 32 }; 33 34 enum class ChassisIDState : uint8_t 35 { 36 off = 0x0, 37 temporaryOn = 0x1, 38 indefiniteOn = 0x2, 39 reserved = 0x3 40 }; 41