NorthStar-Endurance-TestBench/NorthStar-Emotas-Stack/codrv_sl/common/codrv_error.h

58 lines
1.5 KiB
C

/*
* codrv_error.h
*
* Copyright (c) 2012-2023 emotas embedded communication GmbH
*-------------------------------------------------------------------
* SVN $Id: codrv_error.h 51612 2023-12-19 17:23:36Z ro $
*
*
*-------------------------------------------------------------------
*
*
*/
/********************************************************************/
/**
* \file
* \brief can error handling
*
*/
#ifndef CODRV_ERROR_H
#define CODRV_ERROR_H 1
/** CAN controller state */
typedef enum {
Error_Offline, /**< disabled */
Error_Active, /**< Error Active */
Error_Passive, /**< Error Passive */
Error_Busoff /**< Error bus off */
} CAN_ERROR_STATES_T;
/** CAN state event collection structure */
typedef struct {
BOOL_T canErrorRxOverrun; /**< CAN controller overrun */
BOOL_T canErrorPassive; /**< CAN Passive event occured */
BOOL_T canErrorActive; /**< CAN active event occured */
BOOL_T canErrorBusoff; /**< CAN busoff event occured */
BOOL_T drvErrorGeneric; /**< CAN for generic errors */
CAN_ERROR_STATES_T canOldState; /**< last signaled state */
CAN_ERROR_STATES_T canNewState; /**< current state */
} CAN_ERROR_FLAGS_T;
/* externals
*--------------------------------------------------------------------------*/
/* function prototypes
*--------------------------------------------------------------------------*/
CAN_ERROR_FLAGS_T * codrvCanErrorGetFlags(void);
void codrvCanErrorInit(void);
RET_T codrvCanErrorInformStack(void);
#endif /* CODRV_ERROR_H */