########################################################################### # # Copyright (c) 2021-2024 Diality Inc. - All Rights Reserved. # # THIS CODE MAY NOT BE COPIED OR REPRODUCED IN ANY FORM, IN PART OR IN # WHOLE, WITHOUT THE EXPLICIT PERMISSION OF THE COPYRIGHT OWNER. # # @file ro_defs.py # # @author (last) Dara Navaei # @date (last) 08-Feb-2024 # @author (original) Peter Lucia # @date (original) 22-Jun-2021 # ############################################################################ from enum import unique from ..utils.base import DialinEnum @unique class ROOpModes(DialinEnum): RO_MODE_FAUL = 0 # Fault mode RO_MODE_SERV = 1 # Service mode RO_MODE_INIT = 2 # Initialization & POST mode RO_MODE_STAN = 3 # Standby mode RO_MODE_NLEG = 4 # Not legal - an illegal mode transition occurred NUM_OF_RO_MODES = 5 # Number of TD operation modes @unique class ROPostStates(DialinEnum): RO_POST_STATE_START = 0 # Start initialize & POST mode state RO_POST_STATE_FW_INTEGRITY = 1 # Run firmware integrity test state RO_POST_STATE_NVDATAMGMT = 2 # Run NV Data Mgmt. test state RO_POST_STATE_WATCHDOG = 3 # Run watchdog test state RO_POST_STATE_SAFETY_SHUTDOWN = 4 # Run safety shutdown test state RO_POST_STATE_TEMPERATURES = 5 # Run temperatures POST state RO_POST_STATE_FW_COMPATIBILITY = 6 # Run firmware compatibility test state RO_POST_STATE_FPGA = 7 # Run FPGA test state RO_POST_STATE_COMPLETED = 8 # POST self-tests completed state RO_POST_STATE_FAILED = 9 # POST self-tests failed state NUM_OF_RO_POST_STATES = 10 # Number of initialize & POST mode states @unique class ROEventList(DialinEnum): RO_EVENT_STARTUP = 0 # RO startup event RO_EVENT_OP_MODE_CHANGE = 1 # RO Op mode change event RO_EVENT_SUB_MODE_CHANGE = 2 # RO Op sub-mode change event NUM_OF_RO_EVENT_IDS = 3 # Total number of RO events @unique class ROEventDataType(DialinEnum): EVENT_DATA_TYPE_NONE = 0 EVENT_DATA_TYPE_U32 = 1 EVENT_DATA_TYPE_S32 = 2 EVENT_DATA_TYPE_F32 = 3 EVENT_DATA_TYPE_BOOL = 4 NUM_OF_EVENT_DATA_TYPES = 5