xref: /openbmc/bmcweb/features/redfish/include/generated/enums/computer_system.hpp (revision d125652e8a30dfeaad88bbfa5b1e04a80610469c)
140e9b92eSEd Tanous // SPDX-License-Identifier: Apache-2.0
240e9b92eSEd Tanous // SPDX-FileCopyrightText: Copyright OpenBMC Authors
30ec8b83dSEd Tanous #pragma once
40ec8b83dSEd Tanous #include <nlohmann/json.hpp>
50ec8b83dSEd Tanous 
60ec8b83dSEd Tanous namespace computer_system
70ec8b83dSEd Tanous {
80ec8b83dSEd Tanous // clang-format off
90ec8b83dSEd Tanous 
100ec8b83dSEd Tanous enum class BootSource{
110ec8b83dSEd Tanous     Invalid,
120ec8b83dSEd Tanous     None,
130ec8b83dSEd Tanous     Pxe,
140ec8b83dSEd Tanous     Floppy,
150ec8b83dSEd Tanous     Cd,
160ec8b83dSEd Tanous     Usb,
170ec8b83dSEd Tanous     Hdd,
180ec8b83dSEd Tanous     BiosSetup,
190ec8b83dSEd Tanous     Utilities,
200ec8b83dSEd Tanous     Diags,
210ec8b83dSEd Tanous     UefiShell,
220ec8b83dSEd Tanous     UefiTarget,
230ec8b83dSEd Tanous     SDCard,
240ec8b83dSEd Tanous     UefiHttp,
250ec8b83dSEd Tanous     RemoteDrive,
260ec8b83dSEd Tanous     UefiBootNext,
270ec8b83dSEd Tanous     Recovery,
280ec8b83dSEd Tanous };
290ec8b83dSEd Tanous 
300ec8b83dSEd Tanous enum class SystemType{
310ec8b83dSEd Tanous     Invalid,
320ec8b83dSEd Tanous     Physical,
330ec8b83dSEd Tanous     Virtual,
340ec8b83dSEd Tanous     OS,
350ec8b83dSEd Tanous     PhysicallyPartitioned,
360ec8b83dSEd Tanous     VirtuallyPartitioned,
370ec8b83dSEd Tanous     Composed,
380ec8b83dSEd Tanous     DPU,
390ec8b83dSEd Tanous };
400ec8b83dSEd Tanous 
410ec8b83dSEd Tanous enum class IndicatorLED{
420ec8b83dSEd Tanous     Invalid,
430ec8b83dSEd Tanous     Unknown,
440ec8b83dSEd Tanous     Lit,
450ec8b83dSEd Tanous     Blinking,
460ec8b83dSEd Tanous     Off,
470ec8b83dSEd Tanous };
480ec8b83dSEd Tanous 
490ec8b83dSEd Tanous enum class BootSourceOverrideEnabled{
500ec8b83dSEd Tanous     Invalid,
510ec8b83dSEd Tanous     Disabled,
520ec8b83dSEd Tanous     Once,
530ec8b83dSEd Tanous     Continuous,
540ec8b83dSEd Tanous };
550ec8b83dSEd Tanous 
560ec8b83dSEd Tanous enum class MemoryMirroring{
570ec8b83dSEd Tanous     Invalid,
580ec8b83dSEd Tanous     System,
590ec8b83dSEd Tanous     DIMM,
600ec8b83dSEd Tanous     Hybrid,
610ec8b83dSEd Tanous     None,
620ec8b83dSEd Tanous };
630ec8b83dSEd Tanous 
640ec8b83dSEd Tanous enum class BootSourceOverrideMode{
650ec8b83dSEd Tanous     Invalid,
660ec8b83dSEd Tanous     Legacy,
670ec8b83dSEd Tanous     UEFI,
680ec8b83dSEd Tanous };
690ec8b83dSEd Tanous 
700ec8b83dSEd Tanous enum class InterfaceType{
710ec8b83dSEd Tanous     Invalid,
720ec8b83dSEd Tanous     TPM1_2,
730ec8b83dSEd Tanous     TPM2_0,
740ec8b83dSEd Tanous     TCM1_0,
750ec8b83dSEd Tanous };
760ec8b83dSEd Tanous 
770ec8b83dSEd Tanous enum class HostingRole{
780ec8b83dSEd Tanous     Invalid,
790ec8b83dSEd Tanous     ApplicationServer,
800ec8b83dSEd Tanous     StorageServer,
810ec8b83dSEd Tanous     Switch,
820ec8b83dSEd Tanous     Appliance,
830ec8b83dSEd Tanous     BareMetalServer,
840ec8b83dSEd Tanous     VirtualMachineServer,
850ec8b83dSEd Tanous     ContainerServer,
860ec8b83dSEd Tanous };
870ec8b83dSEd Tanous 
880ec8b83dSEd Tanous enum class InterfaceTypeSelection{
890ec8b83dSEd Tanous     Invalid,
900ec8b83dSEd Tanous     None,
910ec8b83dSEd Tanous     FirmwareUpdate,
920ec8b83dSEd Tanous     BiosSetting,
930ec8b83dSEd Tanous     OemMethod,
940ec8b83dSEd Tanous };
950ec8b83dSEd Tanous 
960ec8b83dSEd Tanous enum class WatchdogWarningActions{
970ec8b83dSEd Tanous     Invalid,
980ec8b83dSEd Tanous     None,
990ec8b83dSEd Tanous     DiagnosticInterrupt,
1000ec8b83dSEd Tanous     SMI,
1010ec8b83dSEd Tanous     MessagingInterrupt,
1020ec8b83dSEd Tanous     SCI,
1030ec8b83dSEd Tanous     OEM,
1040ec8b83dSEd Tanous };
1050ec8b83dSEd Tanous 
1060ec8b83dSEd Tanous enum class WatchdogTimeoutActions{
1070ec8b83dSEd Tanous     Invalid,
1080ec8b83dSEd Tanous     None,
1090ec8b83dSEd Tanous     ResetSystem,
1100ec8b83dSEd Tanous     PowerCycle,
1110ec8b83dSEd Tanous     PowerDown,
1120ec8b83dSEd Tanous     OEM,
1130ec8b83dSEd Tanous };
1140ec8b83dSEd Tanous 
1150ec8b83dSEd Tanous enum class PowerRestorePolicyTypes{
1160ec8b83dSEd Tanous     Invalid,
1170ec8b83dSEd Tanous     AlwaysOn,
1180ec8b83dSEd Tanous     AlwaysOff,
1190ec8b83dSEd Tanous     LastState,
1200ec8b83dSEd Tanous };
1210ec8b83dSEd Tanous 
1220ec8b83dSEd Tanous enum class BootOrderTypes{
1230ec8b83dSEd Tanous     Invalid,
1240ec8b83dSEd Tanous     BootOrder,
1250ec8b83dSEd Tanous     AliasBootOrder,
1260ec8b83dSEd Tanous };
1270ec8b83dSEd Tanous 
1280ec8b83dSEd Tanous enum class AutomaticRetryConfig{
1290ec8b83dSEd Tanous     Invalid,
1300ec8b83dSEd Tanous     Disabled,
1310ec8b83dSEd Tanous     RetryAttempts,
1320ec8b83dSEd Tanous     RetryAlways,
1330ec8b83dSEd Tanous };
1340ec8b83dSEd Tanous 
1350ec8b83dSEd Tanous enum class BootProgressTypes{
1360ec8b83dSEd Tanous     Invalid,
1370ec8b83dSEd Tanous     None,
1380ec8b83dSEd Tanous     PrimaryProcessorInitializationStarted,
1390ec8b83dSEd Tanous     BusInitializationStarted,
1400ec8b83dSEd Tanous     MemoryInitializationStarted,
1410ec8b83dSEd Tanous     SecondaryProcessorInitializationStarted,
1420ec8b83dSEd Tanous     PCIResourceConfigStarted,
1430ec8b83dSEd Tanous     SystemHardwareInitializationComplete,
1440ec8b83dSEd Tanous     SetupEntered,
1450ec8b83dSEd Tanous     OSBootStarted,
1460ec8b83dSEd Tanous     OSRunning,
1470ec8b83dSEd Tanous     OEM,
1480ec8b83dSEd Tanous };
1490ec8b83dSEd Tanous 
1500ec8b83dSEd Tanous enum class GraphicalConnectTypesSupported{
1510ec8b83dSEd Tanous     Invalid,
1520ec8b83dSEd Tanous     KVMIP,
1530ec8b83dSEd Tanous     OEM,
1540ec8b83dSEd Tanous };
1550ec8b83dSEd Tanous 
1560ec8b83dSEd Tanous enum class TrustedModuleRequiredToBoot{
1570ec8b83dSEd Tanous     Invalid,
1580ec8b83dSEd Tanous     Disabled,
1590ec8b83dSEd Tanous     Required,
1600ec8b83dSEd Tanous };
1610ec8b83dSEd Tanous 
1620ec8b83dSEd Tanous enum class StopBootOnFault{
1630ec8b83dSEd Tanous     Invalid,
1640ec8b83dSEd Tanous     Never,
1650ec8b83dSEd Tanous     AnyFault,
1660ec8b83dSEd Tanous };
1670ec8b83dSEd Tanous 
1680ec8b83dSEd Tanous enum class PowerMode{
1690ec8b83dSEd Tanous     Invalid,
1700ec8b83dSEd Tanous     MaximumPerformance,
1710ec8b83dSEd Tanous     BalancedPerformance,
1720ec8b83dSEd Tanous     PowerSaving,
1730ec8b83dSEd Tanous     Static,
1740ec8b83dSEd Tanous     OSControlled,
1750ec8b83dSEd Tanous     OEM,
1762ae81db9SGunnar Mills     EfficiencyFavorPower,
1772ae81db9SGunnar Mills     EfficiencyFavorPerformance,
1780ec8b83dSEd Tanous };
1790ec8b83dSEd Tanous 
1800ec8b83dSEd Tanous enum class CompositionUseCase{
1810ec8b83dSEd Tanous     Invalid,
1820ec8b83dSEd Tanous     ResourceBlockCapable,
1830ec8b83dSEd Tanous     ExpandableSystem,
1840ec8b83dSEd Tanous };
1850ec8b83dSEd Tanous 
186a8d8f9d8SEd Tanous enum class KMIPCachePolicy{
187a8d8f9d8SEd Tanous     Invalid,
188a8d8f9d8SEd Tanous     None,
189a8d8f9d8SEd Tanous     AfterFirstUse,
190a8d8f9d8SEd Tanous };
191a8d8f9d8SEd Tanous 
192e9cc1bc9SEd Tanous enum class DecommissionType{
193e9cc1bc9SEd Tanous     Invalid,
194e9cc1bc9SEd Tanous     All,
195e9cc1bc9SEd Tanous     UserData,
196e9cc1bc9SEd Tanous     ManagerConfig,
197e9cc1bc9SEd Tanous     BIOSConfig,
198e9cc1bc9SEd Tanous     NetworkConfig,
199e9cc1bc9SEd Tanous     StorageConfig,
200e9cc1bc9SEd Tanous     Logs,
201*d125652eSGunnar Mills     TPM,
202e9cc1bc9SEd Tanous };
203e9cc1bc9SEd Tanous 
204dd5c81e9SGunnar Mills enum class LastResetCauses{
205dd5c81e9SGunnar Mills     Invalid,
206dd5c81e9SGunnar Mills     PowerButtonPress,
207dd5c81e9SGunnar Mills     ManagementCommand,
208dd5c81e9SGunnar Mills     PowerRestorePolicy,
209dd5c81e9SGunnar Mills     RTCWakeup,
210dd5c81e9SGunnar Mills     WatchdogExpiration,
211dd5c81e9SGunnar Mills     OSSoftRestart,
212dd5c81e9SGunnar Mills     SystemCrash,
213dd5c81e9SGunnar Mills     ThermalEvent,
214dd5c81e9SGunnar Mills     PowerEvent,
215dd5c81e9SGunnar Mills     Unknown,
216dd5c81e9SGunnar Mills };
217dd5c81e9SGunnar Mills 
2180ec8b83dSEd Tanous NLOHMANN_JSON_SERIALIZE_ENUM(BootSource, {
2190ec8b83dSEd Tanous     {BootSource::Invalid, "Invalid"},
2200ec8b83dSEd Tanous     {BootSource::None, "None"},
2210ec8b83dSEd Tanous     {BootSource::Pxe, "Pxe"},
2220ec8b83dSEd Tanous     {BootSource::Floppy, "Floppy"},
2230ec8b83dSEd Tanous     {BootSource::Cd, "Cd"},
2240ec8b83dSEd Tanous     {BootSource::Usb, "Usb"},
2250ec8b83dSEd Tanous     {BootSource::Hdd, "Hdd"},
2260ec8b83dSEd Tanous     {BootSource::BiosSetup, "BiosSetup"},
2270ec8b83dSEd Tanous     {BootSource::Utilities, "Utilities"},
2280ec8b83dSEd Tanous     {BootSource::Diags, "Diags"},
2290ec8b83dSEd Tanous     {BootSource::UefiShell, "UefiShell"},
2300ec8b83dSEd Tanous     {BootSource::UefiTarget, "UefiTarget"},
2310ec8b83dSEd Tanous     {BootSource::SDCard, "SDCard"},
2320ec8b83dSEd Tanous     {BootSource::UefiHttp, "UefiHttp"},
2330ec8b83dSEd Tanous     {BootSource::RemoteDrive, "RemoteDrive"},
2340ec8b83dSEd Tanous     {BootSource::UefiBootNext, "UefiBootNext"},
2350ec8b83dSEd Tanous     {BootSource::Recovery, "Recovery"},
2360ec8b83dSEd Tanous });
2370ec8b83dSEd Tanous 
2380ec8b83dSEd Tanous NLOHMANN_JSON_SERIALIZE_ENUM(SystemType, {
2390ec8b83dSEd Tanous     {SystemType::Invalid, "Invalid"},
2400ec8b83dSEd Tanous     {SystemType::Physical, "Physical"},
2410ec8b83dSEd Tanous     {SystemType::Virtual, "Virtual"},
2420ec8b83dSEd Tanous     {SystemType::OS, "OS"},
2430ec8b83dSEd Tanous     {SystemType::PhysicallyPartitioned, "PhysicallyPartitioned"},
2440ec8b83dSEd Tanous     {SystemType::VirtuallyPartitioned, "VirtuallyPartitioned"},
2450ec8b83dSEd Tanous     {SystemType::Composed, "Composed"},
2460ec8b83dSEd Tanous     {SystemType::DPU, "DPU"},
2470ec8b83dSEd Tanous });
2480ec8b83dSEd Tanous 
2490ec8b83dSEd Tanous NLOHMANN_JSON_SERIALIZE_ENUM(IndicatorLED, {
2500ec8b83dSEd Tanous     {IndicatorLED::Invalid, "Invalid"},
2510ec8b83dSEd Tanous     {IndicatorLED::Unknown, "Unknown"},
2520ec8b83dSEd Tanous     {IndicatorLED::Lit, "Lit"},
2530ec8b83dSEd Tanous     {IndicatorLED::Blinking, "Blinking"},
2540ec8b83dSEd Tanous     {IndicatorLED::Off, "Off"},
2550ec8b83dSEd Tanous });
2560ec8b83dSEd Tanous 
2570ec8b83dSEd Tanous NLOHMANN_JSON_SERIALIZE_ENUM(BootSourceOverrideEnabled, {
2580ec8b83dSEd Tanous     {BootSourceOverrideEnabled::Invalid, "Invalid"},
2590ec8b83dSEd Tanous     {BootSourceOverrideEnabled::Disabled, "Disabled"},
2600ec8b83dSEd Tanous     {BootSourceOverrideEnabled::Once, "Once"},
2610ec8b83dSEd Tanous     {BootSourceOverrideEnabled::Continuous, "Continuous"},
2620ec8b83dSEd Tanous });
2630ec8b83dSEd Tanous 
2640ec8b83dSEd Tanous NLOHMANN_JSON_SERIALIZE_ENUM(MemoryMirroring, {
2650ec8b83dSEd Tanous     {MemoryMirroring::Invalid, "Invalid"},
2660ec8b83dSEd Tanous     {MemoryMirroring::System, "System"},
2670ec8b83dSEd Tanous     {MemoryMirroring::DIMM, "DIMM"},
2680ec8b83dSEd Tanous     {MemoryMirroring::Hybrid, "Hybrid"},
2690ec8b83dSEd Tanous     {MemoryMirroring::None, "None"},
2700ec8b83dSEd Tanous });
2710ec8b83dSEd Tanous 
2720ec8b83dSEd Tanous NLOHMANN_JSON_SERIALIZE_ENUM(BootSourceOverrideMode, {
2730ec8b83dSEd Tanous     {BootSourceOverrideMode::Invalid, "Invalid"},
2740ec8b83dSEd Tanous     {BootSourceOverrideMode::Legacy, "Legacy"},
2750ec8b83dSEd Tanous     {BootSourceOverrideMode::UEFI, "UEFI"},
2760ec8b83dSEd Tanous });
2770ec8b83dSEd Tanous 
2780ec8b83dSEd Tanous NLOHMANN_JSON_SERIALIZE_ENUM(InterfaceType, {
2790ec8b83dSEd Tanous     {InterfaceType::Invalid, "Invalid"},
2800ec8b83dSEd Tanous     {InterfaceType::TPM1_2, "TPM1_2"},
2810ec8b83dSEd Tanous     {InterfaceType::TPM2_0, "TPM2_0"},
2820ec8b83dSEd Tanous     {InterfaceType::TCM1_0, "TCM1_0"},
2830ec8b83dSEd Tanous });
2840ec8b83dSEd Tanous 
2850ec8b83dSEd Tanous NLOHMANN_JSON_SERIALIZE_ENUM(HostingRole, {
2860ec8b83dSEd Tanous     {HostingRole::Invalid, "Invalid"},
2870ec8b83dSEd Tanous     {HostingRole::ApplicationServer, "ApplicationServer"},
2880ec8b83dSEd Tanous     {HostingRole::StorageServer, "StorageServer"},
2890ec8b83dSEd Tanous     {HostingRole::Switch, "Switch"},
2900ec8b83dSEd Tanous     {HostingRole::Appliance, "Appliance"},
2910ec8b83dSEd Tanous     {HostingRole::BareMetalServer, "BareMetalServer"},
2920ec8b83dSEd Tanous     {HostingRole::VirtualMachineServer, "VirtualMachineServer"},
2930ec8b83dSEd Tanous     {HostingRole::ContainerServer, "ContainerServer"},
2940ec8b83dSEd Tanous });
2950ec8b83dSEd Tanous 
2960ec8b83dSEd Tanous NLOHMANN_JSON_SERIALIZE_ENUM(InterfaceTypeSelection, {
2970ec8b83dSEd Tanous     {InterfaceTypeSelection::Invalid, "Invalid"},
2980ec8b83dSEd Tanous     {InterfaceTypeSelection::None, "None"},
2990ec8b83dSEd Tanous     {InterfaceTypeSelection::FirmwareUpdate, "FirmwareUpdate"},
3000ec8b83dSEd Tanous     {InterfaceTypeSelection::BiosSetting, "BiosSetting"},
3010ec8b83dSEd Tanous     {InterfaceTypeSelection::OemMethod, "OemMethod"},
3020ec8b83dSEd Tanous });
3030ec8b83dSEd Tanous 
3040ec8b83dSEd Tanous NLOHMANN_JSON_SERIALIZE_ENUM(WatchdogWarningActions, {
3050ec8b83dSEd Tanous     {WatchdogWarningActions::Invalid, "Invalid"},
3060ec8b83dSEd Tanous     {WatchdogWarningActions::None, "None"},
3070ec8b83dSEd Tanous     {WatchdogWarningActions::DiagnosticInterrupt, "DiagnosticInterrupt"},
3080ec8b83dSEd Tanous     {WatchdogWarningActions::SMI, "SMI"},
3090ec8b83dSEd Tanous     {WatchdogWarningActions::MessagingInterrupt, "MessagingInterrupt"},
3100ec8b83dSEd Tanous     {WatchdogWarningActions::SCI, "SCI"},
3110ec8b83dSEd Tanous     {WatchdogWarningActions::OEM, "OEM"},
3120ec8b83dSEd Tanous });
3130ec8b83dSEd Tanous 
3140ec8b83dSEd Tanous NLOHMANN_JSON_SERIALIZE_ENUM(WatchdogTimeoutActions, {
3150ec8b83dSEd Tanous     {WatchdogTimeoutActions::Invalid, "Invalid"},
3160ec8b83dSEd Tanous     {WatchdogTimeoutActions::None, "None"},
3170ec8b83dSEd Tanous     {WatchdogTimeoutActions::ResetSystem, "ResetSystem"},
3180ec8b83dSEd Tanous     {WatchdogTimeoutActions::PowerCycle, "PowerCycle"},
3190ec8b83dSEd Tanous     {WatchdogTimeoutActions::PowerDown, "PowerDown"},
3200ec8b83dSEd Tanous     {WatchdogTimeoutActions::OEM, "OEM"},
3210ec8b83dSEd Tanous });
3220ec8b83dSEd Tanous 
3230ec8b83dSEd Tanous NLOHMANN_JSON_SERIALIZE_ENUM(PowerRestorePolicyTypes, {
3240ec8b83dSEd Tanous     {PowerRestorePolicyTypes::Invalid, "Invalid"},
3250ec8b83dSEd Tanous     {PowerRestorePolicyTypes::AlwaysOn, "AlwaysOn"},
3260ec8b83dSEd Tanous     {PowerRestorePolicyTypes::AlwaysOff, "AlwaysOff"},
3270ec8b83dSEd Tanous     {PowerRestorePolicyTypes::LastState, "LastState"},
3280ec8b83dSEd Tanous });
3290ec8b83dSEd Tanous 
3300ec8b83dSEd Tanous NLOHMANN_JSON_SERIALIZE_ENUM(BootOrderTypes, {
3310ec8b83dSEd Tanous     {BootOrderTypes::Invalid, "Invalid"},
3320ec8b83dSEd Tanous     {BootOrderTypes::BootOrder, "BootOrder"},
3330ec8b83dSEd Tanous     {BootOrderTypes::AliasBootOrder, "AliasBootOrder"},
3340ec8b83dSEd Tanous });
3350ec8b83dSEd Tanous 
3360ec8b83dSEd Tanous NLOHMANN_JSON_SERIALIZE_ENUM(AutomaticRetryConfig, {
3370ec8b83dSEd Tanous     {AutomaticRetryConfig::Invalid, "Invalid"},
3380ec8b83dSEd Tanous     {AutomaticRetryConfig::Disabled, "Disabled"},
3390ec8b83dSEd Tanous     {AutomaticRetryConfig::RetryAttempts, "RetryAttempts"},
3400ec8b83dSEd Tanous     {AutomaticRetryConfig::RetryAlways, "RetryAlways"},
3410ec8b83dSEd Tanous });
3420ec8b83dSEd Tanous 
3430ec8b83dSEd Tanous NLOHMANN_JSON_SERIALIZE_ENUM(BootProgressTypes, {
3440ec8b83dSEd Tanous     {BootProgressTypes::Invalid, "Invalid"},
3450ec8b83dSEd Tanous     {BootProgressTypes::None, "None"},
3460ec8b83dSEd Tanous     {BootProgressTypes::PrimaryProcessorInitializationStarted, "PrimaryProcessorInitializationStarted"},
3470ec8b83dSEd Tanous     {BootProgressTypes::BusInitializationStarted, "BusInitializationStarted"},
3480ec8b83dSEd Tanous     {BootProgressTypes::MemoryInitializationStarted, "MemoryInitializationStarted"},
3490ec8b83dSEd Tanous     {BootProgressTypes::SecondaryProcessorInitializationStarted, "SecondaryProcessorInitializationStarted"},
3500ec8b83dSEd Tanous     {BootProgressTypes::PCIResourceConfigStarted, "PCIResourceConfigStarted"},
3510ec8b83dSEd Tanous     {BootProgressTypes::SystemHardwareInitializationComplete, "SystemHardwareInitializationComplete"},
3520ec8b83dSEd Tanous     {BootProgressTypes::SetupEntered, "SetupEntered"},
3530ec8b83dSEd Tanous     {BootProgressTypes::OSBootStarted, "OSBootStarted"},
3540ec8b83dSEd Tanous     {BootProgressTypes::OSRunning, "OSRunning"},
3550ec8b83dSEd Tanous     {BootProgressTypes::OEM, "OEM"},
3560ec8b83dSEd Tanous });
3570ec8b83dSEd Tanous 
3580ec8b83dSEd Tanous NLOHMANN_JSON_SERIALIZE_ENUM(GraphicalConnectTypesSupported, {
3590ec8b83dSEd Tanous     {GraphicalConnectTypesSupported::Invalid, "Invalid"},
3600ec8b83dSEd Tanous     {GraphicalConnectTypesSupported::KVMIP, "KVMIP"},
3610ec8b83dSEd Tanous     {GraphicalConnectTypesSupported::OEM, "OEM"},
3620ec8b83dSEd Tanous });
3630ec8b83dSEd Tanous 
3640ec8b83dSEd Tanous NLOHMANN_JSON_SERIALIZE_ENUM(TrustedModuleRequiredToBoot, {
3650ec8b83dSEd Tanous     {TrustedModuleRequiredToBoot::Invalid, "Invalid"},
3660ec8b83dSEd Tanous     {TrustedModuleRequiredToBoot::Disabled, "Disabled"},
3670ec8b83dSEd Tanous     {TrustedModuleRequiredToBoot::Required, "Required"},
3680ec8b83dSEd Tanous });
3690ec8b83dSEd Tanous 
3700ec8b83dSEd Tanous NLOHMANN_JSON_SERIALIZE_ENUM(StopBootOnFault, {
3710ec8b83dSEd Tanous     {StopBootOnFault::Invalid, "Invalid"},
3720ec8b83dSEd Tanous     {StopBootOnFault::Never, "Never"},
3730ec8b83dSEd Tanous     {StopBootOnFault::AnyFault, "AnyFault"},
3740ec8b83dSEd Tanous });
3750ec8b83dSEd Tanous 
3760ec8b83dSEd Tanous NLOHMANN_JSON_SERIALIZE_ENUM(PowerMode, {
3770ec8b83dSEd Tanous     {PowerMode::Invalid, "Invalid"},
3780ec8b83dSEd Tanous     {PowerMode::MaximumPerformance, "MaximumPerformance"},
3790ec8b83dSEd Tanous     {PowerMode::BalancedPerformance, "BalancedPerformance"},
3800ec8b83dSEd Tanous     {PowerMode::PowerSaving, "PowerSaving"},
3810ec8b83dSEd Tanous     {PowerMode::Static, "Static"},
3820ec8b83dSEd Tanous     {PowerMode::OSControlled, "OSControlled"},
3830ec8b83dSEd Tanous     {PowerMode::OEM, "OEM"},
3842ae81db9SGunnar Mills     {PowerMode::EfficiencyFavorPower, "EfficiencyFavorPower"},
3852ae81db9SGunnar Mills     {PowerMode::EfficiencyFavorPerformance, "EfficiencyFavorPerformance"},
3860ec8b83dSEd Tanous });
3870ec8b83dSEd Tanous 
3880ec8b83dSEd Tanous NLOHMANN_JSON_SERIALIZE_ENUM(CompositionUseCase, {
3890ec8b83dSEd Tanous     {CompositionUseCase::Invalid, "Invalid"},
3900ec8b83dSEd Tanous     {CompositionUseCase::ResourceBlockCapable, "ResourceBlockCapable"},
3910ec8b83dSEd Tanous     {CompositionUseCase::ExpandableSystem, "ExpandableSystem"},
3920ec8b83dSEd Tanous });
3930ec8b83dSEd Tanous 
394a8d8f9d8SEd Tanous NLOHMANN_JSON_SERIALIZE_ENUM(KMIPCachePolicy, {
395a8d8f9d8SEd Tanous     {KMIPCachePolicy::Invalid, "Invalid"},
396a8d8f9d8SEd Tanous     {KMIPCachePolicy::None, "None"},
397a8d8f9d8SEd Tanous     {KMIPCachePolicy::AfterFirstUse, "AfterFirstUse"},
398a8d8f9d8SEd Tanous });
399a8d8f9d8SEd Tanous 
400e9cc1bc9SEd Tanous NLOHMANN_JSON_SERIALIZE_ENUM(DecommissionType, {
401e9cc1bc9SEd Tanous     {DecommissionType::Invalid, "Invalid"},
402e9cc1bc9SEd Tanous     {DecommissionType::All, "All"},
403e9cc1bc9SEd Tanous     {DecommissionType::UserData, "UserData"},
404e9cc1bc9SEd Tanous     {DecommissionType::ManagerConfig, "ManagerConfig"},
405e9cc1bc9SEd Tanous     {DecommissionType::BIOSConfig, "BIOSConfig"},
406e9cc1bc9SEd Tanous     {DecommissionType::NetworkConfig, "NetworkConfig"},
407e9cc1bc9SEd Tanous     {DecommissionType::StorageConfig, "StorageConfig"},
408e9cc1bc9SEd Tanous     {DecommissionType::Logs, "Logs"},
409*d125652eSGunnar Mills     {DecommissionType::TPM, "TPM"},
410e9cc1bc9SEd Tanous });
411e9cc1bc9SEd Tanous 
412dd5c81e9SGunnar Mills NLOHMANN_JSON_SERIALIZE_ENUM(LastResetCauses, {
413dd5c81e9SGunnar Mills     {LastResetCauses::Invalid, "Invalid"},
414dd5c81e9SGunnar Mills     {LastResetCauses::PowerButtonPress, "PowerButtonPress"},
415dd5c81e9SGunnar Mills     {LastResetCauses::ManagementCommand, "ManagementCommand"},
416dd5c81e9SGunnar Mills     {LastResetCauses::PowerRestorePolicy, "PowerRestorePolicy"},
417dd5c81e9SGunnar Mills     {LastResetCauses::RTCWakeup, "RTCWakeup"},
418dd5c81e9SGunnar Mills     {LastResetCauses::WatchdogExpiration, "WatchdogExpiration"},
419dd5c81e9SGunnar Mills     {LastResetCauses::OSSoftRestart, "OSSoftRestart"},
420dd5c81e9SGunnar Mills     {LastResetCauses::SystemCrash, "SystemCrash"},
421dd5c81e9SGunnar Mills     {LastResetCauses::ThermalEvent, "ThermalEvent"},
422dd5c81e9SGunnar Mills     {LastResetCauses::PowerEvent, "PowerEvent"},
423dd5c81e9SGunnar Mills     {LastResetCauses::Unknown, "Unknown"},
424dd5c81e9SGunnar Mills });
425dd5c81e9SGunnar Mills 
4260ec8b83dSEd Tanous }
4270ec8b83dSEd Tanous // clang-format on
428