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