blob: a64cf8303103c11069dd9d6ee08d38e3797f09e9 [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 STATE_SET_H
3#define STATE_SET_H
4
5#ifdef __cplusplus
6extern "C" {
7#endif
8
9/** @brief PLDM State Set IDs in DSP0249_1.1.0 specification
10 */
11enum pldm_state_set_ids {
12
13 /* Table 1 - General State Sets */
14 PLDM_STATE_SET_HEALTH_STATE = 1,
15 PLDM_STATE_SET_AVAILABILITY = 2,
16 PLDM_STATE_SET_PREDICTIVE_CONDITION = 3,
17 PLDM_STATE_SET_REDUNDANCY_STATUS = 4,
18 PLDM_STATE_SET_HEALTH_REDUNDANCY_TREND = 5,
19 PLDM_STATE_SET_GROUP_RESOURCE_LEVEL = 6,
20 PLDM_STATE_SET_REDUNDANCY_ENTITY_ROLE = 7,
21 PLDM_STATE_SET_OPERATIONAL_STATUS = 8,
22 PLDM_STATE_SET_OPERATIONAL_STRESS_STATUS = 9,
23 PLDM_STATE_SET_OPERATIONAL_FAULT_STATUS = 10,
24 PLDM_STATE_SET_OPERATIONAL_RUNNING_STATUS = 11,
25 PLDM_STATE_SET_OPERATIONAL_CONNECTION_STATUS = 12,
26 PLDM_STATE_SET_PRESENCE = 13,
27 PLDM_STATE_SET_PERFORMANCE = 14,
28 PLDM_STATE_SET_CONFIGURATION_STATE = 15,
29 PLDM_STATE_SET_CHANGED_CONFIGURATION = 16,
30 PLDM_STATE_SET_IDENTIFY_STATE = 17,
31 PLDM_STATE_SET_VERSION = 18,
32 PLDM_STATE_SET_ALARM_STATE = 19,
33 PLDM_STATE_SET_DEVICE_INITIALIZATION = 20,
34 PLDM_STATE_SET_THERMAL_TRIP = 21,
35
36 /* Table 2 - Communication State Sets */
37 PLDM_STATE_SET_HEARTBEAT = 32,
38 PLDM_STATE_SET_LINK_STATE = 33,
39
40 /* Table 3 - General Sensor State Sets */
41 PLDM_STATE_SET_SMOKE_STATE = 64,
42 PLDM_STATE_SET_HUMIDITY_STATE = 65,
43 PLDM_STATE_SET_DOOR_STATE = 66,
44 PLDM_STATE_SET_SWITCH_STATE = 67,
45
46 /* Table 4 - Security-Related State Sets */
47 PLDM_STATE_SET_LOCK_STATE = 96,
48 PLDM_STATE_SET_PHYSICAL_SECURITY = 97,
49 PLDM_STATE_SET_DOCK_AUTHORIZATION = 98,
50 PLDM_STATE_SET_HW_SECURITY = 99,
51 PLDM_STATE_SET_PHYSICAL_COMM_CONNECTION = 100,
52 PLDM_STATE_SET_COMM_LEASH_STATUS = 101,
53 PLDM_STATE_SET_FOREIGN_NW_DETECTION_STATUS = 102,
54 PLDM_STATE_SET_PASSWORD_PROTECTED_ACCESS_SECURITY = 103,
55 PLDM_STATE_SET_SECURITY_ACCESS_PRIVILEGE_LEVEL = 104,
56 PLDM_STATE_SET_SESSION_AUDIT = 105,
57
58 /* Table 5 - Software-Related State Sets */
59 PLDM_STATE_SET_SW_TERMINATION_STATUS = 129,
60
61 /* Table 6 - Redundant Storage Media (RAID) State Sets */
62 PLDM_STATE_SET_STORAGE_MEDIA_ACTIVITY = 160,
63
64 /* Table 7 - Boot-Related State Sets */
65 PLDM_STATE_SET_BOOT_RESTART_CAUSE = 192,
66 PLDM_STATE_SET_BOOT_RESTART_REQUEST = 193,
67 PLDM_STATE_SET_ENTITY_BOOT_STATUS = 194,
68 PLDM_STATE_SET_BOOT_ERROR_STATUS = 195,
69 PLDM_STATE_SET_BOOT_PROGRESS = 196,
70 PLDM_STATE_SET_SYS_FIRMWARE_HANG = 197,
71 PLDM_STATE_SET_POST_ERRORS = 198,
72
73 /* Table 8 - Monitored System-Related State Sets */
74 PLDM_STATE_SET_LOG_FILL_STATUS = 225,
75 PLDM_STATE_SET_LOG_FILTER_STATUS = 226,
76 PLDM_STATE_SET_LOG_TIMESTAMP_CHANGE = 227,
77 PLDM_STATE_SET_INTERRUPT_REQUESTED = 228,
78 PLDM_STATE_SET_INTERRUPT_RECEIVED = 229,
79 PLDM_STATE_SET_DIAGNOSTIC_INTERRUPT_REQUESTED = 230,
80 PLDM_STATE_SET_DIAGNOSTIC_INTERRUPT_RECEIVED = 231,
81 PLDM_STATE_SET_IO_CHANNEL_CHECK_NMI_REQUESTED = 232,
82 PLDM_STATE_SET_IO_CHANNEL_CHECK_NMI_RECEIVED = 233,
83 PLDM_STATE_SET_FATAL_NMI_REQUESTED = 234,
84 PLDM_STATE_SET_FATAL_NMI_RECEIVED = 235,
85 PLDM_STATE_SET_SOFTWARE_NMI_REQUESTED = 236,
86 PLDM_STATE_SET_SOFTWARE_NMI_RECEIVED = 237,
87 PLDM_STATE_SET_SMI_REQUESTED = 238,
88 PLDM_STATE_SET_SMI_RECEIVED = 238,
89 PLDM_STATE_SET_PCI_PERR_REQUESTED = 239,
90 PLDM_STATE_SET_PCI_PERR_RECEIVED = 240,
91 PLDM_STATE_SET_PCI_SERR_REQUESTED = 241,
92 PLDM_STATE_SET_PCI_SERR_RECEIVED = 242,
93 PLDM_STATE_SET_BUS_ERROR_STATUS = 243,
94 PLDM_STATE_SET_WATCHDOG_STATUS = 244,
95
96 /* Table 9 - Power-Related State Sets */
97 PLDM_STATE_SET_POWER_SUPPLY_STATE = 256,
98 PLDM_STATE_SET_DEVICE_POWER_STATE = 257,
99 PLDM_STATE_SET_ACPI_POWER_STATE = 258,
100 PLDM_STATE_SET_BACKUP_POWER_SOURCE = 259,
101 PLDM_STATE_SET_SYSTEM_POWER_STATE = 260,
102 PLDM_STATE_SET_BATTERY_ACTIVITY = 261,
103 PLDM_STATE_SET_BATTERY_STATE = 262,
104
105 /* Table 10 - Processor-Related State Sets */
106 PLDM_STATE_SET_PROC_POWER_STATE = 288,
107 PLDM_STATE_SET_POWER_PERFORMANCE_STATE = 289,
108 PLDM_STATE_SET_PROC_ERROR_STATUS = 290,
109 PLDM_STATE_SET_BIST_FAILURE_STATUS = 291,
110 PLDM_STATE_SET_IBIST_FAILURE_STATUS = 292,
111 PLDM_STATE_SET_PROC_HANG_IN_POST = 293,
112 PLDM_STATE_SET_PROC_STARTUP_FAILURE = 294,
113 PLDM_STATE_SET_UNCORRECTABLE_CPU_ERROR = 295,
114 PLDM_STATE_SET_MACHINE_CHECK_ERROR = 296,
115 PLDM_STATE_SET_CORRECTED_MACHINE_CHECK = 297,
116
117 /* Table 11 - Memory-Related State Sets */
118 PLDM_STATE_SET_CACHE_STATUS = 320,
119 PLDM_STATE_SET_MEMORY_ERROR_STATUS = 321,
120 PLDM_STATE_SET_REDUNDANT_MEMORY_ACTIVITY_STATUS = 322,
121
122 /* Table 12 - Storage Device State Sets */
123 PLDM_STATE_SET_ERROR_DETECTION_STATUS = 330,
124 PLDM_STATE_SET_STUCK_BIT_STATUS = 331,
125 PLDM_STATE_SET_SCRUB_STATUS = 332,
126
127 /* Table 13 - Slot/Module State Sets */
128 PLDM_STATE_SET_SLOT_OCCUPANCY = 352,
129 PLDM_STATE_SET_SLOT_STATE = 353,
130};
131
132/* @brief List of states for the Health State state set (ID 1).
133 */
134enum pldm_state_set_health_state_values {
135 PLDM_STATE_SET_HEALTH_STATE_NORMAL = 1,
136 PLDM_STATE_SET_HEALTH_STATE_NON_CRITICAL = 2,
137 PLDM_STATE_SET_HEALTH_STATE_CRITICAL = 3,
138 PLDM_STATE_SET_HEALTH_STATE_FATAL = 4,
139 PLDM_STATE_SET_HEALTH_STATE_UPPER_NON_CRITICAL = 5,
140 PLDM_STATE_SET_HEALTH_STATE_LOWER_NON_CRITICAL = 6,
141 PLDM_STATE_SET_HEALTH_STATE_UPPER_CRITICAL = 7,
142 PLDM_STATE_SET_HEALTH_STATE_LOWER_CRITICAL = 8,
143 PLDM_STATE_SET_HEALTH_STATE_UPPER_FATAL = 9,
144 PLDM_STATE_SET_HEALTH_STATE_LOWER_FATAL = 10,
145};
146
147/* @brief List of states for the State Set Availability (ID 2),
148 */
149enum pldm_state_set_availability_values {
150 PLDM_STATE_SET_AVAILABILITY_REBOOTING = 8
151};
152
Pavithra Barithayaccd986f2023-07-14 01:22:23 -0500153/* @brief List of states for the Operational Stress status (ID 9).
154 */
155enum pldm_state_set_operational_stress_status_values {
156 PLDM_STATE_SET_OPERATIONAL_STRESS_STATUS_NORMAL = 1,
157 PLDM_STATE_SET_OPERATIONAL_STRESS_STATUS_STRESSED = 2,
158};
Pavithra Barithayaf37e4dc2023-08-21 23:25:39 -0500159/* @brief List of states for Operational Fault status (ID 10).
160 */
161enum pldm_state_set_operational_fault_status_values {
162 PLDM_STATE_SET_OPERATIONAL_FAULT_STATUS_NORMAL = 1,
163 PLDM_STATE_SET_OPERATIONAL_FAULT_STATUS_ERROR = 2,
164 PLDM_STATE_SET_OPERATIONAL_FAULT_STATUS_NON_RECOVERABLE_ERROR = 3,
165};
Pavithra Barithayaccd986f2023-07-14 01:22:23 -0500166
Andrew Jeffery9c766792022-08-10 23:12:49 +0930167/* @brief List of states for the Operational Running Status state set (ID 11).
168 */
169enum pldm_state_set_operational_running_status_values {
170 PLDM_STATE_SET_OPERATIONAL_RUNNING_STATUS_STARTING = 1,
171 PLDM_STATE_SET_OPERATIONAL_RUNNING_STATUS_STOPPING = 2,
172 PLDM_STATE_SET_OPERATIONAL_RUNNING_STATUS_STOPPED = 3,
173 PLDM_STATE_SET_OPERATIONAL_RUNNING_STATUS_IN_SERVICE = 4,
174 PLDM_STATE_SET_OPERATIONAL_RUNNING_STATUS_ABORTED = 5,
175 PLDM_STATE_SET_OPERATIONAL_RUNNING_STATUS_DORMANT = 6
176};
177
178/* @brief List of states for the Set Identify state (ID 17).
179 */
180enum pldm_state_set_identify_state_values {
181 PLDM_STATE_SET_IDENTIFY_STATE_UNASSERTED = 1,
182 PLDM_STATE_SET_IDENTIFY_STATE_ASSERTED = 2,
183};
184
185/* @brief List of states for the Set Thermal Trip state set (ID 21).
186 */
187enum pldm_state_set_thermal_trip_values {
188 PLDM_STATE_SET_THERMAL_TRIP_STATUS_NORMAL = 1,
189 PLDM_STATE_SET_THERMAL_TRIP_STATUS_THERMAL_TRIP = 2,
190};
191
Jinliang Wang64764fd2024-04-02 15:28:06 -0700192/* @brief List of states for the Set Link state (ID 33).
193 */
194enum pldm_state_set_link_state_values {
195 PLDM_STATE_SET_LINK_STATE_CONNECTED = 1,
196 PLDM_STATE_SET_LINK_STATE_DISCONNECTED = 2,
197};
198
Andrew Jeffery9c766792022-08-10 23:12:49 +0930199/* @brief List of states for the Software-related state set (ID 129).
200 */
201enum pldm_software_termination_status_values {
202 PLDM_SW_TERM_NORMAL = 1,
203 PLDM_SW_TERM_SOFTWARE_TERMINATION_DETECTED = 2,
204 PLDM_SW_TERM_CRITICAL_STOP_DURING_LOAD_INITIALIZATION = 3,
205 PLDM_SW_TERM_RUN_TIME_CRITICAL_STOP = 4,
206 PLDM_SW_TERM_GRACEFUL_SHUTDOWN_REQUESTED = 5,
207 PLDM_SW_TERM_GRACEFUL_RESTART_REQUESTED = 6,
208 PLDM_SW_TERM_GRACEFUL_SHUTDOWN = 7,
209 PLDM_SW_TERM_TERMINATION_REQUEST_FAILED = 8,
210};
211
212/* @brief List of states for the Boot Restart Cause state set (ID 192).
213 */
214enum pldm_state_set_boot_restart_cause_values {
215 PLDM_STATE_SET_BOOT_RESTART_CAUSE_POWERED_UP = 1,
216 PLDM_STATE_SET_BOOT_RESTART_CAUSE_HARD_RESET = 2,
217 PLDM_STATE_SET_BOOT_RESTART_CAUSE_WARM_RESET = 3,
218 PLDM_STATE_SET_BOOT_RESTART_CAUSE_MANUAL_HARD_RESET = 4,
219 PLDM_STATE_SET_BOOT_RESTART_CAUSE_MANUAL_WARM_RESET = 5,
220 PLDM_STATE_SET_BOOT_RESTART_CAUSE_SYSTEM_RESTART = 6,
221 PLDM_STATE_SET_BOOT_RESTART_CAUSE_WATCHDOG_TIMEOUT = 7
222};
223
224/* @brief List of states for the Boot Progress state set (ID 196).
225 */
226enum pldm_state_set_boot_progress_state_values {
227 PLDM_STATE_SET_BOOT_PROG_STATE_NOT_ACTIVE = 1,
228 PLDM_STATE_SET_BOOT_PROG_STATE_COMPLETED = 2,
229 PLDM_STATE_SET_BOOT_PROG_STATE_MEM_INITIALIZATION = 3,
230 PLDM_STATE_SET_BOOT_PROG_STATE_SEC_PROC_INITIALIZATION = 5,
231 PLDM_STATE_SET_BOOT_PROG_STATE_PCI_RESORUCE_CONFIG = 9,
Patel-Kamalkumare20b5ea2023-02-08 23:28:46 -0600232 PLDM_STATE_SET_BOOT_PROG_STATE_OSSTART = 20,
Andrew Jeffery9c766792022-08-10 23:12:49 +0930233 PLDM_STATE_SET_BOOT_PROG_STATE_STARTING_OP_SYS = 21,
234 PLDM_STATE_SET_BOOT_PROG_STATE_BASE_BOARD_INITIALIZATION = 22,
235 PLDM_STATE_SET_BOOT_PROG_STATE_PRIMARY_PROC_INITIALIZATION = 26,
236};
237
238/* @brief List of states for the System Power State set (ID 260).
239 */
240enum pldm_state_set_system_power_state_values {
Varsha Kaverappa39aa0362024-02-12 05:13:15 -0600241 PLDM_STATE_SET_SYS_POWER_STATE_ON = 1,
242 PLDM_STATE_SET_SYS_POWER_STATE_HIBERNATE = 2,
243 PLDM_STATE_SET_SYS_POWER_STATE_SLEEP_LIGHT = 3,
244 PLDM_STATE_SET_SYS_POWER_STATE_SLEEP_DEEP = 4,
245 PLDM_STATE_SET_SYS_POWER_CYCLE_SOFT = 5,
246 PLDM_STATE_SET_SYS_POWER_CYCLE_HARD = 6,
247 PLDM_STATE_SET_SYS_POWER_CYCLE_OFF_SOFT_GRACEFUL = 7,
248 PLDM_STATE_SET_SYS_POWER_CYCLE_OFF_HARD_GRACEFUL = 8,
249 PLDM_STATE_SET_SYS_POWER_STATE_OFF_SOFT_GRACEFUL = 9,
250 PLDM_STATE_SET_SYS_POWER_STATE_OFF_HARD_GRACEFUL = 10,
251 PLDM_STATE_SET_SYS_POWER_STATE_MASTER_BUS_RESET = 11,
252 PLDM_STATE_SET_SYS_POWER_STATE_MASTER_BUS_RESET_GRACEFUL = 12,
253 PLDM_STATE_SET_SYS_POWER_STATE_NMI = 13,
Andrew Jeffery9c766792022-08-10 23:12:49 +0930254};
255
Riya Dixit24ae2392024-02-01 03:53:59 -0600256/* @brief List of states for Device Power State set (ID 257).
257 */
258enum pldm_state_set_device_power_state_values {
259 PLDM_STATE_SET_ACPI_DEVICE_POWER_STATE_UNKNOWN = 0,
260 PLDM_STATE_SET_ACPI_DEVICE_POWER_STATE_FULLY_ON = 1,
261 PLDM_STATE_SET_ACPI_DEVICE_POWER_STATE_INTERMEDIATE_1 = 2,
262 PLDM_STATE_SET_ACPI_DEVICE_POWER_STATE_INTERMEDIATE_2 = 3,
263 PLDM_STATE_SET_ACPI_DEVICE_POWER_STATE_OFF = 4,
264};
265
Andrew Jeffery9c766792022-08-10 23:12:49 +0930266/* OEM ranges */
267#define PLDM_OEM_STATE_SET_ID_START 32768
Andrew Jeffery37dd6a32023-05-12 16:04:06 +0930268#define PLDM_OEM_STATE_SET_ID_END 65535
Andrew Jeffery9c766792022-08-10 23:12:49 +0930269
270#ifdef __cplusplus
271}
272#endif
273
274#endif /* STATE_SET_H */