########################################################################### # # 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 fp_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 FPOpModes(DialinEnum): FP_MODE_FAUL = 0 # Fault mode FP_MODE_SERV = 1 # Service mode FP_MODE_INIT = 2 # Initialization & POST mode FP_MODE_STAN = 3 # Standby mode FP_MODE_NLEG = 4 # Not legal - an illegal mode transition occurred NUM_OF_FP_MODES = 5 # Number of TD operation modes @unique class FPPostStates(DialinEnum): FP_POST_STATE_START = 0 # Start initialize & POST mode state FP_POST_STATE_FW_INTEGRITY = 1 # Run firmware integrity test state FP_POST_STATE_NVDATAMGMT = 2 # Run NV Data Mgmt. test state FP_POST_STATE_WATCHDOG = 3 # Run watchdog test state FP_POST_STATE_SAFETY_SHUTDOWN = 4 # Run safety shutdown test state FP_POST_STATE_TEMPERATURES = 5 # Run temperatures POST state FP_POST_STATE_FW_COMPATIBILITY = 6 # Run firmware compatibility test state FP_POST_STATE_FPGA = 7 # Run FPGA test state FP_POST_STATE_COMPLETED = 8 # POST self-tests completed state FP_POST_STATE_FAILED = 9 # POST self-tests failed state NUM_OF_FP_POST_STATES = 10 # Number of initialize & POST mode states @unique class FPEventList(DialinEnum): FP_EVENT_STARTUP = 0 # FP startup event FP_EVENT_OP_MODE_CHANGE = 1 # FP Op mode change event FP_EVENT_SUB_MODE_CHANGE = 2 # FP Op sub-mode change event NUM_OF_FP_EVENT_IDS = 3 # Total number of FP events @unique class FPEventDataType(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