2 IPMI 2.0 definitions from the IPMI Specification Version 2.0, Revision 1.1.
4 This file contains all NetFn Chassis commands, including:
5 Chassis Commands (Chapter 28)
7 See IPMI specification, Appendix G, Command Assignments
8 and Appendix H, Sub-function Assignments.
10 Copyright (c) 1999 - 2015, Intel Corporation. All rights reserved.<BR>
11 This program and the accompanying materials
12 are licensed and made available under the terms and conditions of the BSD License
13 which accompanies this distribution. The full text of the license may be found at
14 http://opensource.org/licenses/bsd-license.php
16 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
17 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
20 #ifndef _IPMI_NET_FN_CHASSIS_H_
21 #define _IPMI_NET_FN_CHASSIS_H_
25 // Net function definition for Chassis command
27 #define IPMI_NETFN_CHASSIS 0x00
30 // Below is Definitions for Chassis commands (Chapter 28)
34 // Definitions for Get Chassis Capabilities command
36 #define IPMI_CHASSIS_GET_CAPABILITIES 0x00
39 // Constants and Structure definitions for "Get Chassis Capabilities" command to follow here
43 // Definitions for Get Chassis Status command
45 #define IPMI_CHASSIS_GET_STATUS 0x01
48 // Constants and Structure definitions for "Get Chassis Status" command to follow here
52 // Definitions for Chassis Control command
54 #define IPMI_CHASSIS_CONTROL 0x02
57 // Constants and Structure definitions for "Chassis Control" command to follow here
61 // Definitions for Chassis Reset command
63 #define IPMI_CHASSIS_RESET 0x03
66 // Constants and Structure definitions for "Chassis Reset" command to follow here
70 // Definitions for Chassis Identify command
72 #define IPMI_CHASSIS_IDENTIFY 0x04
75 // Constants and Structure definitions for "Chassis Identify" command to follow here
79 // Definitions for Set Chassis Capabilities command
81 #define IPMI_CHASSIS_SET_CAPABILITIES 0x05
84 // Constants and Structure definitions for "Set Chassis Capabilities" command to follow here
88 // Definitions for Set Power Restore Policy command
90 #define IPMI_CHASSIS_SET_POWER_RESTORE_POLICY 0x06
93 // Constants and Structure definitions for "Set Power Restore Policy" command to follow here
97 // Definitions for Get System Restart Cause command
99 #define IPMI_CHASSIS_GET_SYSTEM_RESTART_CAUSE 0x07
102 // Constants and Structure definitions for "Get System Restart Cause" command to follow here
106 ChassisControlCommand
,
108 PowerupViaPowerButton
,
111 AutoPowerOnAlwaysRestore
,
112 AutoPowerOnRestorePrevious
,
117 } IPMI_SYSTEM_RESTART_CAUSE
;
120 UINT8 CompletionCode
;
124 } IPMI_GET_SYSTEM_RESTART_CAUSE_RESPONSE
;
127 // Definitions for Set System BOOT options command
129 #define IPMI_CHASSIS_SET_SYSTEM_BOOT_OPTIONS 0x08
132 // Constants and Structure definitions for "Set System boot options" command to follow here
135 UINT8 ParameterSelector
:7;
136 UINT8 MarkParameterInvalid
:1;
137 UINT8 ParameterData
[1];
138 } IPMI_SET_BOOT_OPTIONS_REQUEST
;
141 // Definitions for Get System BOOT options command
143 #define IPMI_CHASSIS_GET_SYSTEM_BOOT_OPTIONS 0x09
146 // Constants and Structure definitions for "Get System boot options" command to follow here
149 UINT8 ParameterSelector
:7;
153 } IPMI_GET_BOOT_OPTIONS_REQUEST
;
163 } IPMI_GET_THE_SYSTEM_BOOT_OPTIONS
;
166 UINT8 ParameterVersion
;
167 UINT8 ParameterValid
;
172 } IPMI_BOOT_INITIATOR
;
175 // Response Parameters for IPMI Get Boot Options
178 UINT8 SetInProgress
: 2;
180 } IPMI_BOOT_OPTIONS_RESPONSE_PARAMETER_0
;
183 UINT8 ServicePartitionSelector
;
184 } IPMI_BOOT_OPTIONS_RESPONSE_PARAMETER_1
;
187 UINT8 ServicePartitionDiscovered
:1;
188 UINT8 ServicePartitionScanRequest
:1;
190 } IPMI_BOOT_OPTIONS_RESPONSE_PARAMETER_2
;
193 UINT8 BmcBootFlagValid
: 5;
195 } IPMI_BOOT_OPTIONS_RESPONSE_PARAMETER_3
;
199 UINT8 BootInitiatorAcknowledgeData
;
200 } IPMI_BOOT_OPTIONS_RESPONSE_PARAMETER_4
;
202 #define BOOT_OPTION_HANDLED_BY_BIOS 0x01
209 UINT8 PersistentOptions
:1;
210 UINT8 BootFlagValid
:1;
216 UINT8 BootDeviceSelector
:4;
217 UINT8 LockKeyboard
:1;
222 UINT8 ConsoleRedirection
:2;
224 UINT8 UserPasswordBypass
:1;
225 UINT8 ForceProgressEventTrap
:1;
226 UINT8 BiosVerbosity
:2;
231 UINT8 BiosMuxControlOverride
:2;
232 UINT8 BiosSharedModeOverride
:1;
234 } IPMI_BOOT_OPTIONS_RESPONSE_PARAMETER_5
;
237 UINT8 ChannelNumber
:4;
240 UINT8 BootInfoTimeStamp
[4];
241 } IPMI_BOOT_OPTIONS_RESPONSE_PARAMETER_6
;
246 } IPMI_BOOT_OPTIONS_RESPONSE_PARAMETER_7
;
249 IPMI_BOOT_OPTIONS_RESPONSE_PARAMETER_0 Parm0
;
250 IPMI_BOOT_OPTIONS_RESPONSE_PARAMETER_1 Parm1
;
251 IPMI_BOOT_OPTIONS_RESPONSE_PARAMETER_2 Parm2
;
252 IPMI_BOOT_OPTIONS_RESPONSE_PARAMETER_3 Parm3
;
253 IPMI_BOOT_OPTIONS_RESPONSE_PARAMETER_4 Parm4
;
254 IPMI_BOOT_OPTIONS_RESPONSE_PARAMETER_5 Parm5
;
255 IPMI_BOOT_OPTIONS_RESPONSE_PARAMETER_6 Parm6
;
256 IPMI_BOOT_OPTIONS_RESPONSE_PARAMETER_7 Parm7
;
257 } IPMI_BOOT_OPTIONS_PARAMETERS
;
260 UINT8 CompletionCode
;
261 UINT8 ParameterVersion
:4;
263 UINT8 ParameterSelector
:7;
264 UINT8 ParameterValid
:1;
265 UINT8 ParameterData
[1];
266 } IPMI_GET_BOOT_OPTIONS_RESPONSE
;
269 // Definitions for Set front panel button enables command
271 #define IPMI_CHASSIS_SET_FRONT_PANEL_BUTTON_ENABLES 0x0A
274 UINT8 DisablePoweroffButton
:1;
275 UINT8 DisableResetButton
:1;
276 UINT8 DisableDiagnosticInterruptButton
:1;
277 UINT8 DisableStandbyButton
:1;
279 } IPMI_CHASSIS_SET_FRONT_PANEL_BUTTON_ENABLES_REQUEST
;
282 // Constants and Structure definitions for "Set front panel button enables" command to follow here
286 // Definitions for Set Power Cycle Interval command
288 #define IPMI_CHASSIS_SET_POWER_CYCLE_INTERVALS 0x0B
291 // Constants and Structure definitions for "Set Power Cycle Interval" command to follow here
295 // Definitions for Get POH Counter command
297 #define IPMI_CHASSIS_GET_POH_COUNTER 0x0F
300 // Constants and Structure definitions for "Get POH Counter" command to follow here