and Appendix H, Sub-function Assignments.\r
\r
Copyright (c) 1999 - 2018, Intel Corporation. All rights reserved.<BR>\r
+ Copyright (C) 2023 Advanced Micro Devices, Inc. All rights reserved.<BR>\r
SPDX-License-Identifier: BSD-2-Clause-Patent\r
**/\r
\r
#define IPMI_COMP_CODE_SUBFUNCTION_DISABLED 0xD6\r
#define IPMI_COMP_CODE_UNSPECIFIED 0xFF\r
\r
+#define IPMI_CHANNEL_NUMBER_PRIMARY_IPMB 0x00\r
+#define IPMI_CHANNEL_NUMBER_IMPLEMENTATION_SPECIFIC_1 0x01\r
+#define IPMI_CHANNEL_NUMBER_IMPLEMENTATION_SPECIFIC_2 0x02\r
+#define IPMI_CHANNEL_NUMBER_IMPLEMENTATION_SPECIFIC_3 0x03\r
+#define IPMI_CHANNEL_NUMBER_IMPLEMENTATION_SPECIFIC_4 0x04\r
+#define IPMI_CHANNEL_NUMBER_IMPLEMENTATION_SPECIFIC_5 0x05\r
+#define IPMI_CHANNEL_NUMBER_IMPLEMENTATION_SPECIFIC_6 0x06\r
+#define IPMI_CHANNEL_NUMBER_IMPLEMENTATION_SPECIFIC_7 0x07\r
+#define IPMI_CHANNEL_NUMBER_IMPLEMENTATION_SPECIFIC_8 0x08\r
+#define IPMI_CHANNEL_NUMBER_IMPLEMENTATION_SPECIFIC_9 0x09\r
+#define IPMI_CHANNEL_NUMBER_IMPLEMENTATION_SPECIFIC_10 0x0A\r
+#define IPMI_CHANNEL_NUMBER_IMPLEMENTATION_SPECIFIC_11 0x0B\r
+#define IPMI_CHANNEL_NUMBER_IMPLEMENTATION_RESERVED_12 0x0C\r
+#define IPMI_CHANNEL_NUMBER_IMPLEMENTATION_RESERVED_13 0x0D\r
+#define IPMI_CHANNEL_NUMBER_PRIMARY_PRESENT_IF 0x0E\r
+#define IPMI_CHANNEL_NUMBER_PRIMARY_SYSTEM_INTERFACE 0x0F\r
#endif\r
and Appendix H, Sub-function Assignments.\r
\r
Copyright (c) 1999 - 2018, Intel Corporation. All rights reserved.<BR>\r
+ Copyright (C) 2023 Advanced Micro Devices, Inc. All rights reserved.<BR>\r
SPDX-License-Identifier: BSD-2-Clause-Patent\r
**/\r
\r
//\r
#define IPMI_APP_GET_SYSTEM_GUID 0x37\r
\r
+typedef struct {\r
+ UINT8 CompletionCode;\r
+ EFI_GUID SystemUuid;\r
+} IPMI_GET_SYSTEM_UUID_RESPONSE;\r
+\r
//\r
// Constants and Structure definitions for "Get System GUID" command to follow here\r
//\r
#define IPMI_CHANNEL_MEDIA_TYPE_OEM_START 0x60\r
#define IPMI_CHANNEL_MEDIA_TYPE_OEM_END 0x7F\r
\r
+//\r
+// Definitions for channel protocol type\r
+//\r
+// Not available\r
+#define IPMI_CHANNEL_PROTOCOL_TYPE_NA 0x00\r
+// IPMB-1.0\r
+#define IPMI_CHANNEL_PROTOCOL_TYPE_IPMB_1_0 0x01\r
+// ICMB-1.0\r
+#define IPMI_CHANNEL_PROTOCOL_TYPE_ICMB_1_0 0x02\r
+// Reserved\r
+#define IPMI_CHANNEL_PROTOCOL_TYPE_RESERVED 0x03\r
+// IPMI SMBUS\r
+#define IPMI_CHANNEL_PROTOCOL_TYPE_IPMI_SMBUS 0x04\r
+// KCS\r
+#define IPMI_CHANNEL_PROTOCOL_TYPE_KCS 0x05\r
+// SMIC\r
+#define IPMI_CHANNEL_PROTOCOL_TYPE_SMIC 0x06\r
+// BT-10\r
+#define IPMI_CHANNEL_PROTOCOL_TYPE_BT_10 0x07\r
+// BT-15\r
+#define IPMI_CHANNEL_PROTOCOL_TYPE_BT_15 0x08\r
+// TMode\r
+#define IPMI_CHANNEL_PROTOCOL_TYPE_TMODE 0x09\r
+\r
typedef union {\r
struct {\r
UINT8 ChannelNo : 4;\r
UINT16 AuxChannelInfo;\r
} IPMI_GET_CHANNEL_INFO_RESPONSE;\r
\r
-//\r
-// Definitions for Get Channel Info command\r
-//\r
-#define IPMI_APP_GET_CHANNEL_INFO 0x42\r
+typedef struct {\r
+ IPMI_CHANNEL_INFO_CHANNEL_NUMBER ChannelNumber;\r
+} IPMI_GET_CHANNEL_INFO_REQUEST;\r
\r
//\r
// Constants and Structure definitions for "Get Channel Info" command to follow here\r
and Appendix H, Sub-function Assignments.\r
\r
Copyright (c) 1999 - 2018, Intel Corporation. All rights reserved.<BR>\r
+ Copyright (C) 2023 Advanced Micro Devices, Inc. All rights reserved.<BR>\r
SPDX-License-Identifier: BSD-2-Clause-Patent\r
**/\r
\r
IpmiLanReserved3,\r
IpmiLanDestinationType,\r
IpmiLanDestinationAddress,\r
+ IpmiLanVlanId = 0x14,\r
IpmiIpv4OrIpv6Support = 0x32,\r
IpmiIpv4OrIpv6AddressEnable,\r
IpmiIpv6HdrStatTrafficClass,\r
IpmiOem2\r
} IPMI_LAN_DEST_TYPE_DEST_TYPE;\r
\r
+//\r
+// Destination address format\r
+//\r
+typedef enum {\r
+ IpmiDestinationAddressVersion4,\r
+ IpmiDestinationAddressVersion6\r
+} IPMI_LAN_DEST_ADDRESS_VERSION;\r
+\r
typedef union {\r
struct {\r
UINT8 NoAuth : 1;\r
UINT8 ArpInterval;\r
} IPMI_LAN_ARP_INTERVAL;\r
\r
+typedef struct {\r
+ UINT8 IpAddress[4];\r
+} IPMI_LAN_DEFAULT_GATEWAY;\r
+\r
typedef struct {\r
UINT8 Data[18];\r
} IPMI_LAN_COMMUNITY_STRING;\r
IPMI_LAN_MAC_ADDRESS AlertingMacAddress;\r
} IPMI_LAN_DEST_ADDRESS;\r
\r
+typedef struct {\r
+ UINT8 VanIdLowByte;\r
+} IPMI_LAN_VLAN_ID_DATA1;\r
+\r
+typedef union {\r
+ struct {\r
+ UINT8 VanIdHighByte : 4;\r
+ UINT8 Reserved : 3;\r
+ UINT8 Enabled : 1;\r
+ } Bits;\r
+ UINT8 Uint8;\r
+} IPMI_LAN_VLAN_ID_DATA2;\r
+\r
+typedef struct {\r
+ IPMI_LAN_VLAN_ID_DATA1 Data1;\r
+ IPMI_LAN_VLAN_ID_DATA2 Data2;\r
+} IPMI_LAN_VLAN_ID;\r
+\r
typedef union {\r
IPMI_LAN_AUTH_TYPE IpmiLanAuthType;\r
IPMI_LAN_IP_ADDRESS IpmiLanIpAddress;\r