]> git.proxmox.com Git - mirror_edk2.git/blob - MdePkg/Include/IndustryStandard/IpmiNetFnTransport.h
MdePkg/IndustryStandard/Ipmi: Update IPMI header files
[mirror_edk2.git] / MdePkg / Include / IndustryStandard / IpmiNetFnTransport.h
1 /** @file
2 IPMI 2.0 definitions from the IPMI Specification Version 2.0, Revision 1.1.
3
4 This file contains all NetFn Transport commands, including:
5 IPM LAN Commands (Chapter 23)
6 IPMI Serial/Modem Commands (Chapter 25)
7 SOL Commands (Chapter 26)
8 Command Forwarding Commands (Chapter 35b)
9
10 See IPMI specification, Appendix G, Command Assignments
11 and Appendix H, Sub-function Assignments.
12
13 Copyright (c) 1999 - 2018, Intel Corporation. All rights reserved.<BR>
14 This program and the accompanying materials
15 are licensed and made available under the terms and conditions of the BSD License
16 which accompanies this distribution. The full text of the license may be found at
17 http://opensource.org/licenses/bsd-license.php
18
19 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
20 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
21 **/
22
23 #ifndef _IPMI_NET_FN_TRANSPORT_H_
24 #define _IPMI_NET_FN_TRANSPORT_H_
25
26 #pragma pack(1)
27 //
28 // Net function definition for Transport command
29 //
30 #define IPMI_NETFN_TRANSPORT 0x0C
31
32 //
33 // Below is Definitions for IPM LAN Commands (Chapter 23)
34 //
35
36 //
37 // Definitions for Set Lan Configuration Parameters command
38 //
39 #define IPMI_TRANSPORT_SET_LAN_CONFIG_PARAMETERS 0x01
40
41 //
42 // Constants and Structure definitions for "Set Lan Configuration Parameters" command to follow here
43 //
44
45 //
46 // LAN Management Structure
47 //
48 typedef enum {
49 IpmiLanReserved1,
50 IpmiLanReserved2,
51 IpmiLanAuthType,
52 IpmiLanIpAddress,
53 IpmiLanIpAddressSource,
54 IpmiLanMacAddress,
55 IpmiLanSubnetMask,
56 IpmiLanIpv4HeaderParam,
57 IpmiLanPrimaryRcmpPort,
58 IpmiLanSecondaryRcmpPort,
59 IpmiLanBmcGeneratedArpCtrl,
60 IpmiLanArpInterval,
61 IpmiLanDefaultGateway,
62 IpmiLanDefaultGatewayMac,
63 IpmiLanBackupGateway,
64 IpmiLanBackupGatewayMac,
65 IpmiLanCommunityString,
66 IpmiLanReserved3,
67 IpmiLanDestinationType,
68 IpmiLanDestinationAddress,
69 IpmiIpv4OrIpv6Support = 0x32,
70 IpmiIpv4OrIpv6AddressEnable,
71 IpmiIpv6HdrStatTrafficClass,
72 IpmiIpv6HdrStatHopLimit,
73 IpmiIpv6HdrFlowLabel,
74 IpmiIpv6Status,
75 IpmiIpv6StaticAddress,
76 IpmiIpv6DhcpStaticDuidLen,
77 IpmiIpv6DhcpStaticDuid,
78 IpmiIpv6DhcpAddress,
79 IpmiIpv6DhcpDynamicDuidLen,
80 IpmiIpv6DhcpDynamicDuid,
81 IpmiIpv6RouterConfig = 0x40,
82 IpmiIpv6StaticRouter1IpAddr,
83 IpmiIpv6DynamicRouterIpAddr = 0x4a
84 } IPMI_LAN_OPTION_TYPE;
85
86 //
87 // IP Address Source
88 //
89 typedef enum {
90 IpmiUnspecified,
91 IpmiStaticAddrsss,
92 IpmiDynamicAddressBmcDhcp,
93 IpmiDynamicAddressBiosDhcp,
94 IpmiDynamicAddressBmcNonDhcp
95 } IPMI_IP_ADDRESS_SRC;
96
97 //
98 // Destination Type
99 //
100 typedef enum {
101 IpmiPetTrapDestination,
102 IpmiDirectedEventDestination,
103 IpmiReserved1,
104 IpmiReserved2,
105 IpmiReserved3,
106 IpmiReserved4,
107 IpmiReserved5,
108 IpmiOem1,
109 IpmiOem2
110 } IPMI_LAN_DEST_TYPE_DEST_TYPE;
111
112 typedef struct {
113 UINT8 NoAuth : 1;
114 UINT8 MD2Auth : 1;
115 UINT8 MD5Auth : 1;
116 UINT8 Reserved1 : 1;
117 UINT8 StraightPswd : 1;
118 UINT8 OemType : 1;
119 UINT8 Reserved2 : 2;
120 } IPMI_LAN_AUTH_TYPE;
121
122 typedef struct {
123 UINT8 IpAddress[4];
124 } IPMI_LAN_IP_ADDRESS;
125
126 typedef struct {
127 UINT8 AddressSrc : 4;
128 UINT8 Reserved : 4;
129 } IPMI_LAN_IP_ADDRESS_SRC;
130
131 typedef struct {
132 UINT8 MacAddress[6];
133 } IPMI_LAN_MAC_ADDRESS;
134
135 typedef struct {
136 UINT8 IpAddress[4];
137 } IPMI_LAN_SUBNET_MASK;
138
139 typedef struct {
140 UINT8 TimeToLive;
141 UINT8 IpFlag : 3;
142 UINT8 Reserved1 : 5;
143 UINT8 Precedence : 3;
144 UINT8 Reserved2 : 1;
145 UINT8 ServiceType : 4;
146 } IPMI_LAN_IPV4_HDR_PARAM;
147
148 typedef struct {
149 UINT8 RcmpPortMsb;
150 UINT8 RcmpPortLsb;
151 } IPMI_LAN_RCMP_PORT;
152
153 typedef struct {
154 UINT8 EnableBmcArpResponse : 1;
155 UINT8 EnableBmcGratuitousArp : 1;
156 UINT8 Reserved : 6;
157 } IPMI_LAN_BMC_GENERATED_ARP_CONTROL;
158
159 typedef struct {
160 UINT8 ArpInterval;
161 } IPMI_LAN_ARP_INTERVAL;
162
163 typedef struct {
164 UINT8 Data[18];
165 } IPMI_LAN_COMMUNITY_STRING;
166
167 typedef struct {
168 UINT8 DestinationSelector : 4;
169 UINT8 Reserved2 : 4;
170 UINT8 DestinationType : 3;
171 UINT8 Reserved1 : 4;
172 UINT8 AlertAcknowledged : 1;
173 } IPMI_LAN_DEST_TYPE;
174
175 typedef struct {
176 UINT8 DestinationSelector : 4;
177 UINT8 Reserved1 : 4;
178 UINT8 AlertingIpAddressSelector : 4;
179 UINT8 AddressFormat : 4;
180 UINT8 UseDefaultGateway : 1;
181 UINT8 Reserved2 : 7;
182 IPMI_LAN_IP_ADDRESS AlertingIpAddress;
183 IPMI_LAN_MAC_ADDRESS AlertingMacAddress;
184 } IPMI_LAN_DEST_ADDRESS;
185
186 typedef union {
187 IPMI_LAN_AUTH_TYPE IpmiLanAuthType;
188 IPMI_LAN_IP_ADDRESS IpmiLanIpAddress;
189 IPMI_LAN_IP_ADDRESS_SRC IpmiLanIpAddressSrc;
190 IPMI_LAN_MAC_ADDRESS IpmiLanMacAddress;
191 IPMI_LAN_SUBNET_MASK IpmiLanSubnetMask;
192 IPMI_LAN_IPV4_HDR_PARAM IpmiLanIpv4HdrParam;
193 IPMI_LAN_RCMP_PORT IpmiLanPrimaryRcmpPort;
194 IPMI_LAN_BMC_GENERATED_ARP_CONTROL IpmiLanArpControl;
195 IPMI_LAN_ARP_INTERVAL IpmiLanArpInterval;
196 IPMI_LAN_COMMUNITY_STRING IpmiLanCommunityString;
197 IPMI_LAN_DEST_TYPE IpmiLanDestType;
198 IPMI_LAN_DEST_ADDRESS IpmiLanDestAddress;
199 } IPMI_LAN_OPTIONS;
200
201 typedef struct {
202 UINT8 SetSelector;
203 UINT8 AddressSourceType : 4;
204 UINT8 Reserved : 3;
205 UINT8 EnableStatus : 1;
206 UINT8 Ipv6Address[16];
207 UINT8 AddressPrefixLen;
208 UINT8 AddressStatus;
209 } IPMI_LAN_IPV6_STATIC_ADDRESS;
210
211 //
212 // Set in progress parameter
213 //
214 typedef struct {
215 UINT8 SetInProgress:2;
216 UINT8 Reserved:6;
217 } IPMI_LAN_SET_IN_PROGRESS;
218
219
220 typedef struct {
221 UINT8 ChannelNo : 4;
222 UINT8 Reserved : 4;
223 UINT8 ParameterSelector;
224 UINT8 ParameterData[0];
225 } IPMI_SET_LAN_CONFIGURATION_PARAMETERS_COMMAND_REQUEST;
226
227 //
228 // Definitions for Get Lan Configuration Parameters command
229 //
230 #define IPMI_TRANSPORT_GET_LAN_CONFIG_PARAMETERS 0x02
231
232 //
233 // Constants and Structure definitions for "Get Lan Configuration Parameters" command to follow here
234 //
235 typedef struct {
236 UINT8 ChannelNo : 4;
237 UINT8 Reserved : 3;
238 UINT8 GetParameter : 1;
239 UINT8 ParameterSelector;
240 UINT8 SetSelector;
241 UINT8 BlockSelector;
242 } IPMI_GET_LAN_CONFIGURATION_PARAMETERS_REQUEST;
243
244 typedef struct {
245 UINT8 CompletionCode;
246 UINT8 ParameterRevision;
247 UINT8 ParameterData[0];
248 } IPMI_GET_LAN_CONFIGURATION_PARAMETERS_RESPONSE;
249
250 //
251 // Definitions for Suspend BMC ARPs command
252 //
253 #define IPMI_TRANSPORT_SUSPEND_BMC_ARPS 0x03
254
255 //
256 // Constants and Structure definitions for "Suspend BMC ARPs" command to follow here
257 //
258
259 //
260 // Definitions for Get IP-UDP-RMCP Statistics command
261 //
262 #define IPMI_TRANSPORT_GET_PACKET_STATISTICS 0x04
263
264 //
265 // Constants and Structure definitions for "Get IP-UDP-RMCP Statistics" command to follow here
266 //
267
268 //
269 // Below is Definitions for IPMI Serial/Modem Commands (Chapter 25)
270 //
271
272 //
273 // Definitions for Set Serial/Modem Configuration command
274 //
275 #define IPMI_TRANSPORT_SET_SERIAL_CONFIGURATION 0x10
276
277 //
278 // Constants and Structure definitions for "Set Serial/Modem Configuration" command to follow here
279 //
280
281 //
282 // EMP OPTION DATA
283 //
284 typedef struct {
285 UINT8 NoAuthentication : 1;
286 UINT8 MD2Authentication : 1;
287 UINT8 MD5Authentication : 1;
288 UINT8 Reserved1 : 1;
289 UINT8 StraightPassword : 1;
290 UINT8 OemProprietary : 1;
291 UINT8 Reservd2 : 2;
292 } IPMI_EMP_AUTH_TYPE;
293
294 typedef struct {
295 UINT8 EnableBasicMode : 1;
296 UINT8 EnablePPPMode : 1;
297 UINT8 EnableTerminalMode : 1;
298 UINT8 Reserved1 : 2;
299 UINT8 SnoopOsPPPNegotiation : 1;
300 UINT8 Reserved2 : 1;
301 UINT8 DirectConnect : 1;
302 } IPMI_EMP_CONNECTION_TYPE;
303
304 typedef struct {
305 UINT8 InactivityTimeout : 4;
306 UINT8 Reserved : 4;
307 } IPMI_EMP_INACTIVITY_TIMEOUT;
308
309 typedef struct {
310 UINT8 IpmiCallback : 1;
311 UINT8 CBCPCallback : 1;
312 UINT8 Reserved1 : 6;
313 UINT8 CbcpEnableNoCallback : 1;
314 UINT8 CbcpEnablePreSpecifiedNumber : 1;
315 UINT8 CbcpEnableUserSpecifiedNumber : 1;
316 UINT8 CbcpEnableCallbackFromList : 1;
317 UINT8 Reserved : 4;
318 UINT8 CallbackDestination1;
319 UINT8 CallbackDestination2;
320 UINT8 CallbackDestination3;
321 } IPMI_EMP_CHANNEL_CALLBACK_CONTROL;
322
323 typedef struct {
324 UINT8 CloseSessionOnDCDLoss : 1;
325 UINT8 EnableSessionInactivityTimeout : 1;
326 UINT8 Reserved : 6;
327 } IPMI_EMP_SESSION_TERMINATION;
328
329 typedef struct {
330 UINT8 Reserved1 : 5;
331 UINT8 EnableDtrHangup : 1;
332 UINT8 FlowControl : 2;
333 UINT8 BitRate : 4;
334 UINT8 Reserved2 : 4;
335 UINT8 SaveSetting : 1;
336 UINT8 SetComPort : 1;
337 UINT8 Reserved3 : 6;
338 } IPMI_EMP_MESSAGING_COM_SETTING;
339
340 typedef struct {
341 UINT8 RingDurationInterval : 6;
342 UINT8 Reserved1 : 2;
343 UINT8 RingDeadTime : 4;
344 UINT8 Reserved : 4;
345 } IPMI_EMP_MODEM_RING_TIME;
346
347 typedef struct {
348 UINT8 Reserved;
349 UINT8 InitString[48];
350 } IPMI_EMP_MODEM_INIT_STRING;
351
352 typedef struct {
353 UINT8 EscapeSequence[5];
354 } IPMI_EMP_MODEM_ESC_SEQUENCE;
355
356 typedef struct {
357 UINT8 HangupSequence[8];
358 } IPMI_EMP_MODEM_HANGUP_SEQUENCE;
359
360 typedef struct {
361 UINT8 ModelDialCommend[8];
362 } IPMI_MODEM_DIALUP_COMMAND;
363
364 typedef struct {
365 UINT8 PageBlackoutInterval;
366 } IPMI_PAGE_BLACKOUT_INTERVAL;
367
368 typedef struct {
369 UINT8 CommunityString[18];
370 } IPMI_EMP_COMMUNITY_STRING;
371
372 typedef struct {
373 UINT8 Reserved5 : 4;
374 UINT8 DialStringSelector : 4;
375 } IPMI_DIAL_PAGE_DESTINATION;
376
377 typedef struct {
378 UINT8 TapAccountSelector : 4;
379 UINT8 Reserved : 4;
380 } IPMI_TAP_PAGE_DESTINATION;
381
382 typedef struct {
383 UINT8 PPPAccountSetSelector;
384 UINT8 DialStringSelector;
385 } IPMI_PPP_ALERT_DESTINATION;
386
387 typedef union {
388 IPMI_DIAL_PAGE_DESTINATION DialPageDestination;
389 IPMI_TAP_PAGE_DESTINATION TapPageDestination;
390 IPMI_PPP_ALERT_DESTINATION PppAlertDestination;
391 } IPMI_DEST_TYPE_SPECIFIC;
392
393 typedef struct {
394 UINT8 DestinationSelector : 4;
395 UINT8 Reserved1 : 4;
396 UINT8 DestinationType : 4;
397 UINT8 Reserved2 : 3;
398 UINT8 AlertAckRequired : 1;
399 UINT8 AlertAckTimeoutSeconds;
400 UINT8 NumRetriesCall : 3;
401 UINT8 Reserved3 : 1;
402 UINT8 NumRetryAlert : 3;
403 UINT8 Reserved4 : 1;
404 IPMI_DEST_TYPE_SPECIFIC DestinationTypeSpecific;
405 } IPMI_EMP_DESTINATION_INFO;
406
407 typedef struct {
408 UINT8 DestinationSelector : 4;
409 UINT8 Reserved1 : 4;
410 UINT8 Parity : 3;
411 UINT8 CharacterSize : 1;
412 UINT8 StopBit : 1;
413 UINT8 DtrHangup : 1;
414 UINT8 FlowControl : 2;
415 UINT8 BitRate : 4;
416 UINT8 Reserved2 : 4;
417 UINT8 SaveSetting : 1;
418 UINT8 SetComPort : 1;
419 UINT8 Reserved3 : 6;
420 } IPMI_EMP_DESTINATION_COM_SETTING;
421
422 typedef struct {
423 UINT8 DialStringSelector : 4;
424 UINT8 Reserved1 : 4;
425 UINT8 Reserved2;
426 UINT8 DialString[48];
427 } IPMI_DESTINATION_DIAL_STRING;
428
429 typedef union {
430 UINT32 IpAddressLong;
431 UINT8 IpAddress[4];
432 } IPMI_PPP_IP_ADDRESS;
433
434 typedef struct {
435 UINT8 IpAddressSelector : 4;
436 UINT8 Reserved1 : 4;
437 IPMI_PPP_IP_ADDRESS PppIpAddress;
438 } IPMI_DESTINATION_IP_ADDRESS;
439
440 typedef struct {
441 UINT8 TapSelector;
442 UINT8 TapServiceSelector : 4;
443 UINT8 TapDialStringSelector : 4;
444 } IPMI_DESTINATION_TAP_ACCOUNT;
445
446 typedef struct {
447 UINT8 TapSelector;
448 UINT8 PagerIdString[16];
449 } IPMI_TAP_PAGER_ID_STRING;
450
451 typedef union {
452 UINT8 OptionData;
453 IPMI_EMP_AUTH_TYPE EmpAuthType;
454 IPMI_EMP_CONNECTION_TYPE EmpConnectionType;
455 IPMI_EMP_INACTIVITY_TIMEOUT EmpInactivityTimeout;
456 IPMI_EMP_CHANNEL_CALLBACK_CONTROL EmpCallbackControl;
457 IPMI_EMP_SESSION_TERMINATION EmpSessionTermination;
458 IPMI_EMP_MESSAGING_COM_SETTING EmpMessagingComSetting;
459 IPMI_EMP_MODEM_RING_TIME EmpModemRingTime;
460 IPMI_EMP_MODEM_INIT_STRING EmpModemInitString;
461 IPMI_EMP_MODEM_ESC_SEQUENCE EmpModemEscSequence;
462 IPMI_EMP_MODEM_HANGUP_SEQUENCE EmpModemHangupSequence;
463 IPMI_MODEM_DIALUP_COMMAND EmpModemDialupCommand;
464 IPMI_PAGE_BLACKOUT_INTERVAL EmpPageBlackoutInterval;
465 IPMI_EMP_COMMUNITY_STRING EmpCommunityString;
466 IPMI_EMP_DESTINATION_INFO EmpDestinationInfo;
467 IPMI_EMP_DESTINATION_COM_SETTING EmpDestinationComSetting;
468 UINT8 CallRetryBusySignalInterval;
469 IPMI_DESTINATION_DIAL_STRING DestinationDialString;
470 IPMI_DESTINATION_IP_ADDRESS DestinationIpAddress;
471 IPMI_DESTINATION_TAP_ACCOUNT DestinationTapAccount;
472 IPMI_TAP_PAGER_ID_STRING TapPagerIdString;
473 } IPMI_EMP_OPTIONS;
474
475 //
476 // Definitions for Get Serial/Modem Configuration command
477 //
478 #define IPMI_TRANSPORT_GET_SERIAL_CONFIGURATION 0x11
479
480 //
481 // Constants and Structure definitions for "Get Serial/Modem Configuration" command to follow here
482 //
483
484 //
485 // Definitions for Set Serial/Modem Mux command
486 //
487 #define IPMI_TRANSPORT_SET_SERIAL_MUX 0x12
488
489 //
490 // Constants and Structure definitions for "Set Serial/Modem Mux" command to follow here
491 //
492
493 //
494 // Set Serial/Modem Mux command request return status
495 //
496 #define IPMI_MUX_SETTING_REQUEST_REJECTED 0x00
497 #define IPMI_MUX_SETTING_REQUEST_ACCEPTED 0x01
498
499 //
500 // Definitions for serial multiplex settings
501 //
502 #define IPMI_MUX_SETTING_GET_MUX_SETTING 0x0
503 #define IPMI_MUX_SETTING_REQUEST_MUX_TO_SYSTEM 0x1
504 #define IPMI_MUX_SETTING_REQUEST_MUX_TO_BMC 0x2
505 #define IPMI_MUX_SETTING_FORCE_MUX_TO_SYSTEM 0x3
506 #define IPMI_MUX_SETTING_FORCE_MUX_TO_BMC 0x4
507 #define IPMI_MUX_SETTING_BLOCK_REQUEST_MUX_TO_SYSTEM 0x5
508 #define IPMI_MUX_SETTING_ALLOW_REQUEST_MUX_TO_SYSTEM 0x6
509 #define IPMI_MUX_SETTING_BLOCK_REQUEST_MUX_TO_BMC 0x7
510 #define IPMI_MUX_SETTING_ALLOW_REQUEST_MUX_TO_BMC 0x8
511
512 typedef struct {
513 UINT8 ChannelNo : 4;
514 UINT8 Reserved1 : 4;
515 UINT8 MuxSetting : 4;
516 UINT8 Reserved2 : 4;
517 } IPMI_SET_SERIAL_MODEM_MUX_COMMAND_REQUEST;
518
519 typedef struct {
520 UINT8 CompletionCode;
521 UINT8 MuxSetToBmc : 1;
522 UINT8 CommandStatus : 1;
523 UINT8 MessagingSessionActive : 1;
524 UINT8 AlertInProgress : 1;
525 UINT8 Reserved2 : 2;
526 UINT8 MuxToBmcAllowed : 1;
527 UINT8 MuxToSystemBlocked : 1;
528 } IPMI_SET_SERIAL_MODEM_MUX_COMMAND_RESPONSE;
529
530 //
531 // Definitions for Get TAP Response Code command
532 //
533 #define IPMI_TRANSPORT_GET_TAP_RESPONSE_CODE 0x13
534
535 //
536 // Constants and Structure definitions for "Get TAP Response Code" command to follow here
537 //
538
539 //
540 // Definitions for Set PPP UDP Proxy Transmit Data command
541 //
542 #define IPMI_TRANSPORT_SET_PPP_UDP_PROXY_TXDATA 0x14
543
544 //
545 // Constants and Structure definitions for "Set PPP UDP Proxy Transmit Data" command to follow here
546 //
547
548 //
549 // Definitions for Get PPP UDP Proxy Transmit Data command
550 //
551 #define IPMI_TRANSPORT_GET_PPP_UDP_PROXY_TXDATA 0x15
552
553 //
554 // Constants and Structure definitions for "Get PPP UDP Proxy Transmit Data" command to follow here
555 //
556
557 //
558 // Definitions for Send PPP UDP Proxy Packet command
559 //
560 #define IPMI_TRANSPORT_SEND_PPP_UDP_PROXY_PACKET 0x16
561
562 //
563 // Constants and Structure definitions for "Send PPP UDP Proxy Packet" command to follow here
564 //
565
566 //
567 // Definitions for Get PPP UDP Proxy Receive Data command
568 //
569 #define IPMI_TRANSPORT_GET_PPP_UDP_PROXY_RX 0x17
570
571 //
572 // Constants and Structure definitions for "Get PPP UDP Proxy Receive Data" command to follow here
573 //
574
575 //
576 // Definitions for Serial/Modem connection active command
577 //
578 #define IPMI_TRANSPORT_SERIAL_CONNECTION_ACTIVE 0x18
579
580 //
581 // Constants and Structure definitions for "Serial/Modem connection active" command to follow here
582 //
583
584 //
585 // Definitions for Callback command
586 //
587 #define IPMI_TRANSPORT_CALLBACK 0x19
588
589 //
590 // Constants and Structure definitions for "Callback" command to follow here
591 //
592
593 //
594 // Definitions for Set user Callback Options command
595 //
596 #define IPMI_TRANSPORT_SET_USER_CALLBACK_OPTIONS 0x1A
597
598 //
599 // Constants and Structure definitions for "Set user Callback Options" command to follow here
600 //
601
602 //
603 // Definitions for Get user Callback Options command
604 //
605 #define IPMI_TRANSPORT_GET_USER_CALLBACK_OPTIONS 0x1B
606
607 //
608 // Constants and Structure definitions for "Get user Callback Options" command to follow here
609 //
610
611 //
612 // Below is Definitions for SOL Commands (Chapter 26)
613 //
614
615 //
616 // Definitions for SOL activating command
617 //
618 #define IPMI_TRANSPORT_SOL_ACTIVATING 0x20
619
620 //
621 // Constants and Structure definitions for "SOL activating" command to follow here
622 //
623 typedef struct {
624 UINT8 SessionState : 4;
625 UINT8 Reserved : 4;
626 UINT8 PayloadInstance;
627 UINT8 FormatVersionMajor; // 1
628 UINT8 FormatVersionMinor; // 0
629 } IPMI_SOL_ACTIVATING_REQUEST;
630
631 //
632 // Definitions for Set SOL Configuration Parameters command
633 //
634 #define IPMI_TRANSPORT_SET_SOL_CONFIG_PARAM 0x21
635
636 //
637 // Constants and Structure definitions for "Set SOL Configuration Parameters" command to follow here
638 //
639
640 //
641 // SOL Configuration Parameters selector
642 //
643 #define IPMI_SOL_CONFIGURATION_PARAMETER_SET_IN_PROGRESS 0
644 #define IPMI_SOL_CONFIGURATION_PARAMETER_SOL_ENABLE 1
645 #define IPMI_SOL_CONFIGURATION_PARAMETER_SOL_AUTHENTICATION 2
646 #define IPMI_SOL_CONFIGURATION_PARAMETER_SOL_CHARACTER_PARAM 3
647 #define IPMI_SOL_CONFIGURATION_PARAMETER_SOL_RETRY 4
648 #define IPMI_SOL_CONFIGURATION_PARAMETER_SOL_NV_BIT_RATE 5
649 #define IPMI_SOL_CONFIGURATION_PARAMETER_SOL_VOLATILE_BIT_RATE 6
650 #define IPMI_SOL_CONFIGURATION_PARAMETER_SOL_PAYLOAD_CHANNEL 7
651 #define IPMI_SOL_CONFIGURATION_PARAMETER_SOL_PAYLOAD_PORT 8
652
653 typedef struct {
654 UINT8 ChannelNumber : 4;
655 UINT8 Reserved : 4;
656 UINT8 ParameterSelector;
657 UINT8 ParameterData[0];
658 } IPMI_SET_SOL_CONFIGURATION_PARAMETERS_REQUEST;
659
660 //
661 // Definitions for Get SOL Configuration Parameters command
662 //
663 #define IPMI_TRANSPORT_GET_SOL_CONFIG_PARAM 0x22
664
665 //
666 // Constants and Structure definitions for "Get SOL Configuration Parameters" command to follow here
667 //
668 typedef struct {
669 UINT8 ChannelNumber : 4;
670 UINT8 Reserved : 3;
671 UINT8 GetParameter : 1;
672 UINT8 ParameterSelector;
673 UINT8 SetSelector;
674 UINT8 BlockSelector;
675 } IPMI_GET_SOL_CONFIGURATION_PARAMETERS_REQUEST;
676
677 typedef struct {
678 UINT8 CompletionCode;
679 UINT8 ParameterRevision;
680 UINT8 ParameterData[0];
681 } IPMI_GET_SOL_CONFIGURATION_PARAMETERS_RESPONSE;
682
683 #pragma pack()
684 #endif