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 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 141 /* 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 163 /* 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 */ 173