syntax = "proto3";

import "types.proto";
package SyssdmEnums;

enum PowerCtrlType {
    On = 0;
    ForceOff = 1;
    GraceShutDown = 2;    
    GracefulRestart = 3;
    ForceRestart = 4;    
    NMI = 5;
    ForceOn = 6;
    PushPowerButton = 7;
    PowerCycle = 8;
    Suspend = 9;
    Pause = 10;
    Resume = 11; 
}

enum RestartCause {
    Unknown = 0;
    ChassisControlCommand = 1;
    ResetViaPushButton = 2;
    PowerUpViaPushButton = 3;
    WatchdogExpiration = 4;
    Oem = 5;
    ACRestoreAlwaysPowerUp = 6;
    ACRestoreKeepPreviousState = 7;    
    ResetViaPEF = 8;
    PowerCycleViaPEF = 9;
    SoftReset = 10;
    PowerupViaRTC = 11;
}

enum UpgradeState {
    UpgradeIdle = 0;
    UpgradePreparing = 1;
    UpgradePrepareDone = 2;    
    UpgradeInprogress = 3;
    UpgradeStopped = 4;
    UpgradeCompleted = 5;
}

enum ConfigState {
    ConfigIdle = 0;
    ConfigImportInprogress = 1;
    ConfigExportInprogress = 2;
    ConfigBackupInprogress = 3;
    ConfigRetoreInprogress = 4;
}