blob: f48786be8b70c1f45548fcebdfabf1b8d27e7255 [file] [log] [blame]
Patrick Williams691668f2023-11-01 08:19:10 -05001/* SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later */
Andrew Jeffery9c766792022-08-10 23:12:49 +09302#ifndef ENTITY_H
3#define ENTITY_H
4
5#ifdef __cplusplus
6extern "C" {
7#endif
8
9/** @brief PLDM Entity ID Codes in DSP0249_1.1.0 specification
10 */
11enum pldm_entity_id_codes {
12 PLDM_ENTITY_UNSPECIFIED = 0,
13 PLDM_ENTITY_OTHER = 1,
14
15 /* Miscellaneous Entities */
16 PLDM_ENTITY_NETWORK = 2,
17 PLDM_ENTITY_GROUP = 3,
18 PLDM_ENTITY_REMOTE_MGMT_COMM_DEVICE = 4,
19 PLDM_ENTITY_EXTERNAL_ENVIRONMENT = 5,
20 PLDM_ENTITY_COMM_CHANNEL = 6,
21 PLDM_ENTITY_TERMINUS = 7,
22 PLDM_ENTITY_PLATFORM_EVENT_LOG = 8,
23
24 /* Human Interface Entities */
25 PLDM_ENTITY_KEYPAD = 15,
26 PLDM_ENTITY_SWITCH = 16,
27 PLDM_ENTITY_PUSHBUTTON = 17,
28 PLDM_ENTITY_DISPLAY = 18,
29 PLDM_ENTITY_INDICATOR = 19,
30
31 /* Software/Firmware Entities */
32 PLDM_ENTITY_SYS_MGMT_SW = 30,
33 PLDM_ENTITY_SYS_FIRMWARE = 31,
34 PLDM_ENTITY_OPERATING_SYS = 32,
35 PLDM_ENTITY_VIRTUAL_MACHINE_MANAGER = 33,
36 PLDM_ENTITY_OS_LOADER = 34,
37 PLDM_ENTITY_DEVICE_DRIVER = 35,
38 PLDM_ENTITY_MGMT_CONTROLLER_FW = 36,
39
40 /* Chassis/Enclosure Entities */
41 PLDM_ENTITY_SYSTEM_CHASSIS = 45,
42 PLDM_ENTITY_SUB_CHASSIS = 46,
43 PLDM_ENTITY_DISK_DRIVE_BAY = 47,
44 PLDM_ENTITY_PERIPHERAL_BAY = 48,
45 PLDM_ENTITY_DEVICE_BAY = 49,
46 PLDM_ENTITY_DOOR = 50,
47 PLDM_ENTITY_ACCESS_PANEL = 51,
48 PLDM_ENTITY_COVER = 52,
49
50 /* Board/Card/Module Entities */
51 PLDM_ENTITY_BOARD = 60,
52 PLDM_ENTITY_CARD = 61,
53 PLDM_ENTITY_MODULE = 62,
54 PLDM_ENTITY_SYS_MGMT_MODULE = 63,
55 PLDM_ENTITY_SYS_BOARD = 64,
56 PLDM_ENTITY_MEMORY_BOARD = 65,
57 PLDM_ENTITY_MEMORY_MODULE = 66,
58 PLDM_ENTITY_PROC_MODULE = 67,
59 PLDM_ENTITY_ADD_IN_CARD = 68,
60 PLDM_ENTITY_CHASSIS_FRONT_PANEL_BOARD = 69,
61 PLDM_ENTITY_BACK_PANEL_BOARD = 70,
62 PLDM_ENTITY_POWER_MGMT = 71,
63 PLDM_ENTITY_POWER_SYS_BOARD = 72,
64 PLDM_ENTITY_DRIVE_BACKPLANE = 73,
65 PLDM_ENTITY_SYS_INTERNAL_EXPANSION_BOARD = 74,
66 PLDM_ENTITY_OTHER_SYS_BOARD = 75,
67 PLDM_ENTITY_CHASSIS_BACK_PANEL_BOARD = 76,
68 PLDM_ENTITY_PROCESSING_BLADE = 77,
69 PLDM_ENTITY_CONNECTIVITY_SWITCH = 78,
70 PLDM_ENTITY_PROC_MEMORY_MODULE = 79,
71 PLDM_ENTITY_IO_MODULE = 80,
72 PLDM_ENTITY_PROC_IO_MODULE = 81,
73
74 /* Cooling Entities */
75 PLDM_ENTITY_COOLING_DEVICE = 90,
76 PLDM_ENTITY_COOLING_SUBSYSTEM = 91,
77 PLDM_ENTITY_COOLING_UNIT = 92,
78 PLDM_ENTITY_FAN = 93,
79 PLDM_ENTITY_PELTIER_COOLING_DEVICE = 94,
80 PLDM_ENTITY_LIQUID_COOLING_DEVICE = 95,
81 PLDM_ENTITY_LIQUID_COOLING_SUBSYSTEM = 96,
82
83 /* Storage Device Entities */
84 PLDM_ENTITY_OTHER_STORAGE_DEVICE = 105,
85 PLDM_ENTITY_FLOPPY_DRIVE = 106,
86 PLDM_ENTITY_FIXED_DISK_HARD_DRIVE = 107,
87 PLDM_ENTITY_CD_DRIVE = 108,
88 PLDM_ENTITY_CD_DVD_DRIVE = 109,
89 PLDM_ENTITY_OTHER_SILICON_STORAGE_DEVICE = 110,
90 PLDM_ENTITY_SOLID_STATE_SRIVE = 111,
91
92 /* Power Entities */
93 PLDM_ENTITY_POWER_SUPPLY = 120,
94 PLDM_ENTITY_BATTERY = 121,
95 PLDM_ENTITY_SUPER_CAPACITOR = 122,
96 PLDM_ENTITY_POWER_CONVERTER = 123,
97 PLDM_ENTITY_DC_DC_CONVERTER = 124,
98 PLDM_ENTITY_AC_MAINS_POWER_SUPPLY = 125,
99 PLDM_ENTITY_DC_MAINS_POWER_SUPPLY = 126,
100
101 /* Chip Entities */
102 PLDM_ENTITY_PROC = 135,
103 PLDM_ENTITY_CHIPSET_COMPONENT = 136,
104 PLDM_ENTITY_MGMT_CONTROLLER = 137,
105 PLDM_ENTITY_PERIPHERAL_CONTROLLER = 138,
106 PLDM_ENTITY_SEEPROM = 139,
107 PLDM_ENTITY_NVRAM_CHIP = 140,
108 PLDM_ENTITY_FLASH_MEMORY_CHIP = 141,
109 PLDM_ENTITY_MEMORY_CHIP = 142,
110 PLDM_ENTITY_MEMORY_CONTROLLER = 143,
111 PLDM_ENTITY_NETWORK_CONTROLLER = 144,
112 PLDM_ENTITY_IO_CONTROLLER = 145,
113 PLDM_ENTITY_SOUTH_BRIDGE = 146,
114 PLDM_ENTITY_REAL_TIME_CLOCK = 147,
115 PLDM_ENTITY_FPGA_CPLD_DEVICE = 148,
116 /* Bus Entities */
117 PLDM_ENTITY_OTHER_BUS = 160,
118 PLDM_ENTITY_SYS_BUS = 161,
119 PLDM_ENTITY_I2C_BUS = 162,
120 PLDM_ENTITY_SMBUS_BUS = 163,
121 PLDM_ENTITY_SPI_BUS = 164,
122 PLDM_ENTITY_PCI_BUS = 165,
123 PLDM_ENTITY_PCI_EXPRESS_BUS = 166,
124 PLDM_ENTITY_PECI_BUS = 167,
125 PLDM_ENTITY_LPC_BUS = 168,
126 PLDM_ENTITY_USB_BUS = 169,
127 PLDM_ENTITY_FIREWIRE_BUS = 170,
128 PLDM_ENTITY_SCSI_BUS = 171,
129 PLDM_ENTITY_SATA_SAS_BUS = 172,
130 PLDM_ENTITY_PROC_FRONT_SIDE_BUS = 173,
131 PLDM_ENTITY_INTER_PROC_BUS = 174,
132
133 /* Connectors/Cables */
134 PLDM_ENTITY_CONNECTOR = 185,
135 PLDM_ENTITY_SLOT = 186,
136 PLDM_ENTITY_CABLE = 187,
137 PLDM_ENTITY_INTERCONNECT = 188,
138 PLDM_ENTITY_PLUG = 189,
139 PLDM_ENTITY_SOCKET = 190,
140
Jinliang Wang64764fd2024-04-02 15:28:06 -0700141 /* Network Interface Connectors */
142 PLDM_ENTITY_RJ45 = 200,
143 PLDM_ENTITY_XFP = 201,
144 PLDM_ENTITY_SFP = 202,
145 PLDM_ENTITY_SFP10 = 203,
146 PLDM_ENTITY_SFP16 = 205,
147 PLDM_ENTITY_SFP28 = 206,
148 PLDM_ENTITY_SFP_PLUS = 207,
149 PLDM_ENTITY_SFPDD = 208,
150 PLDM_ENTITY_CSFP = 209,
151 PLDM_ENTITY_QSFP = 210,
152 PLDM_ENTITY_QSFP28 = 211,
153 PLDM_ENTITY_QSFP_PLUS = 212,
154 PLDM_ENTITY_QSFPDD = 213,
155 PLDM_ENTITY_OSFP = 214,
156
157 /* Network Ports Connection Types */
158 PLDM_ENTITY_ETHERNET = 300,
159 PLDM_ENTITY_INFINIBAND = 301,
160 PLDM_ENTITY_FIBRECHANEL = 302,
161 PLDM_ENTITY_OMINIPATH = 303,
162
Andrew Jeffery9c766792022-08-10 23:12:49 +0930163 /* OEM ranges */
164 PLDM_OEM_ENTITY_TYPE_START = 24576,
165 PLDM_OEM_ENTITY_TYPE_END = 32767,
166};
167
168#ifdef __cplusplus
169}
170#endif
171
172#endif /* ENTITY_H */