summaryrefslogtreecommitdiffstats
path: root/communication/server/include/threads/CAN_Thread.h
diff options
context:
space:
mode:
authortakeshi_hoshina <takeshi_hoshina@mail.toyota.co.jp>2020-10-22 13:28:36 +0900
committertakeshi_hoshina <takeshi_hoshina@mail.toyota.co.jp>2020-10-22 13:28:36 +0900
commit211696c95c1ec3fc48e0096d47d4278910274195 (patch)
treef3e0a5461f83a0ec191b788070fe59639148fb17 /communication/server/include/threads/CAN_Thread.h
parentaacd1728939f2b6f4c811cd93502966265cd8203 (diff)
ps-communication branch 0.1sandbox/ToshikazuOhiwa/ps-communication
Diffstat (limited to 'communication/server/include/threads/CAN_Thread.h')
-rw-r--r--communication/server/include/threads/CAN_Thread.h133
1 files changed, 13 insertions, 120 deletions
diff --git a/communication/server/include/threads/CAN_Thread.h b/communication/server/include/threads/CAN_Thread.h
index 67a814a0..b6960efd 100644
--- a/communication/server/include/threads/CAN_Thread.h
+++ b/communication/server/include/threads/CAN_Thread.h
@@ -1,5 +1,5 @@
/*
- * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION.
+ * @copyright Copyright (c) 2016-2020 TOYOTA MOTOR CORPORATION.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -16,143 +16,36 @@
#ifndef COMMUNICATION_SERVER_INCLUDE_THREADS_CAN_THREAD_H_
#define COMMUNICATION_SERVER_INCLUDE_THREADS_CAN_THREAD_H_
-/*!-----------------------------------------------------------------------------
- * @file CAN_Thread.h
- * @~english
- * @brief CAN Thread main block header file
- *----------------------------------------------------------------------------*/
#include <peripheral_service/Canif_API.h>
#include <stdlib.h>
#include "com_error_type.h"
-#include "ICR_Common.h"
#include "communication_communicationlog.h"
-/************************************************************************
-* Macro definitions *
-************************************************************************/
-/* Data size relationship */
-
-#define CAN_TRX_HEADER_SIZE 7 /* Size of send/receive header section (data length excluding operands) */
-#define CAN_TRX_HEADER_LEN_SIZE 5 /* Size included in the data length calculation of the send/receive header section */
-
-#define CAN_TRX_CANID_SIZE 4 /* Transmit/Receive CAN ID Size */
-#define CAN_TRX_DLC_SIZE 1 /* Transmit/Receive DLC Data Size */
-#define CAN_TRX_DLC_RESERVE_SIZE 3 /* Reserved data size after transmit/receive DLC */
+#if 0
+#define CAN_TX_COMMAND_SIZE (CAN_TRX_HEADER_SIZE + CAN_TX_OPERAND_SIZE)
-#define CAN_RX_CANDATA_SIZE CAN_DATA_SIZE /* Reserve CANData(DATA#1 ~ #x)size */
+#define CAN_RX_CANDATA_SIZE CAN_DATA_SIZE /* Receive CANData(DATA#1 ~ #x)size */
/* Reserve the structure if it is not a multiple of 4. */
#define CAN_TX_CANDATA_SIZE CAN_DATA_SIZE /* Send CANData(DATA#1 ~ #x)size */
/* Reserve the structure if it is not a multiple of 4. */
#define CAN_RX_OPERAND_SIZE (CAN_TRX_CANID_SIZE + CAN_TRX_DLC_SIZE + CAN_RX_CANDATA_SIZE)
-/* Receive operand size */
-#define CAN_RX_COMMAND_SIZE (CAN_TRX_HEADER_SIZE + CAN_RX_OPERAND_SIZE)
-/* Receive command size */
#define CAN_TX_OPERAND_SIZE (CAN_TRX_CANID_SIZE + CAN_TRX_DLC_SIZE + CAN_TX_CANDATA_SIZE) // NOLINT(whitespace/line_length)
/* Send operand size */
-#define CAN_TX_COMMAND_SIZE (CAN_TRX_HEADER_SIZE + CAN_TX_OPERAND_SIZE)
-/* Send command size */
+
+#endif
+
+#define CAN_CMDSND_DATA_SIZE 0 /* Command transmission data section size (CAN command control) */
+
#define CAN_TX_CMD_DELIVERY_SIZE 4 /* Transmitting CAN Command Delivery Data Size Common Block */
#define CAN_TX_CMD_FUELCALC_RST_SIZE 0 /* Transmit CAN Command Delivery Data Size CAN Section Burn Cost Reset Request Receive Data */
#define CAN_TX_CMD_STARTUP_FIN_SIZE 3 /* Transmit CAN Command Delivery Data Size CAN Startup Completion Notification Data */
#define CAN_TX_CMD_MRST_INFO_SIZE 33 /* Transmit CAN Command Delivery Data Size CAN Master Reset Information Notification Receive Data */
#define CAN_TX_CMD_VERSION_SIZE 4 /* Transmit CAN Command Delivery Data Size CAN Version Response Receive Data */
-#define CAN_TX_CMD_BUS_STATUS_SIZE 1 /* Transmit CAN Command Delivery Data Size Receive CAN Bus Status Notification Response */
-
-#define CAN_CMDSND_DATA_SIZE 0 /* Command transmission data section size (CAN command control) */
-
-/* Data location relationship */
-#define CAN_MSGBUF_CANID_POS 0 /* How many operands the CAN ID contains? */
-#define CAN_MSGBUF_DLC_POS 4 /* No. of operand from which DLC contains data? */
-#define CAN_MSGBUF_DATA_POS 5 /* How many operands does the DATA contain? */
-
-#define CAN_MSGBUF_PAC_CANID_POS 1 /* How many operands the CAN ID contains? */
-#define CAN_MSGBUF_PAC_DLC_POS 3 /* No. of operand from which DLC contains data? */
-#define CAN_MSGBUF_PAC_DATA_POS 4 /* How many operands does the DATA contain? */
-
-/* Error definitions */
-#define RET_CAN_INIT_SUCCESS RET_NORMAL /* Success in initialization */
-#define RET_CAN_INIT_ERROR RET_ERROR /* Master Clear failed */
-
-#define RET_CAN_NORMAL CANIF_RET_NORMAL /* Normal completion */
-#define RET_CAN_ERROR_CREATE_EVENT CANIF_RET_ERROR_CREATE_EVENT /* Event generation failure */
-#define RET_CAN_ERROR_PARAM CANIF_RET_ERROR_PARAM /* Specified parameter is invalid */
-#define RET_CAN_ERROR_UNDEF CANIF_RET_ERROR_UNDEF /* Unregistered ID */
-#define RET_CAN_ERROR_SNDID CANIF_RET_ERROR_PID /* Discrepancy of Destination ID */
-#define RET_CAN_ERROR_BUFFULL CANIF_RET_ERROR_BUFFULL /* Registered FULL (Delivery/Periodic Transmission/Communication Disruption Monitor) */
-#define RET_CAN_ERROR_CANIDFULL CANIF_RET_ERROR_CANIDFULL /* CAN ID type is FULL */
-#define RET_CAN_ERROR_TIMER CANIF_RET_ERROR_TIMER /* Timer acquisition failed */
-#define RET_CAN_ERROR_CANCEL CANIF_RET_ERROR_CANCEL /* Abnormal termination (discard/cancel data) */
-/* CANDataControl code used in the transmission/reception relationship */
-#define CAN_ID_EXT_FLAG 0x80000000UL /* CAN ID Extended Identity Codes */
-
-/* Timer Relationship */
-#define CAN_TIMER_SEQNO_CODE 0x0001 /* CAN thread timer sequence number */
-#define CAN_TIMER_SEQNO_BUFFLOGOUT 0x0002 /* Buffer log output timer No. */
-
-#define COMM_WATCH_SEQNO_CODE 0x0000 /* Timer Sequence Number Identification Flag of Communication Disruption */
-#define FREQ_TRANS_SEQNO_CODE 0x8000 /* Timer Sequence Number Identification Flag for Periodic Transmission */
-#define CAN_TIMER_DISTINCTION_CODE 0xF000 /* Timer Sequence Number Identification Flag */
-
-#define CAN_COMTIM_OFF 0x00 /* Timer not started */
-#define CAN_COMTIM_ON 0x01 /* Timer activation state */
-
-#define CAN_FREQ_TRSNSMISSION_LIST_NUM 32 /* Maximum number of periodic transmission management tables */
-#define COMM_WATCH_LIST_NUM 64 /* Maximum number of communication disruption monitoring management tables */
-
-
-/* Maximum number of CAN periodic transmission timer management data */
-#define CAN_FREQTRANS_TIMER_DATA CAN_FREQ_TRSNSMISSION_LIST_NUM
-/* Maximum number of CAN disruption monitoring timer management data */
-#define CAN_COMMWATCH_TIMER_DATA COMM_WATCH_LIST_NUM
-
-#define CAN_BUFFER_LOGOUT_NAME "/fs/U0/can_buffer_log.txt" /* */
-
-#define CAN_USAGE_RATE_THRESHOLD 80 /* Buffer Utilization Threshold (80%) */
-
-#define CAN_DELIVERY_DLCERR 0xfeff /* CAN delivery error (DLC) */
-#define CAN_DELIVERY_CSUMERR 0xfefe /* CAN delivery errors (CSUM) */
-#define CAN_DELIVERY_ERR 0xfefd /* CAN delivery error (delivery unregistered) */
-#define CAN_TRANCE_ICR_ERR 0xfefc /* CAN transmission error (ICR) */
-#define CAN_TRANCE_SYSCOM_ERR 0xfefb /* CAN transmission errors (SYSCOM) */
-
-/*********************************************************************
-* Type definition
-***********************************************************************/
+#define CAN_TRX_HEADER_SIZE 7 /* Size of send/receive header section (data length excluding operands) */
+#define CAN_TRX_CANID_SIZE 4 /* Transmit/Receive CAN ID Size */
+#define CAN_TRX_DLC_SIZE 1 /* Transmit/Receive DLC Data Size */
typedef CANIF_RET_API RET_CAN;
-
-typedef enum {
- CAN_PROTOCOL_TYPE_CAN = 0, /* CAN */
- /* -------------------------------------------------------------------- */
- CAN_PROTOCOL_TYPE_TERMINATE /* Mode termination */
-} CAN_PROTOCOL_TYPE;
-
-/************************************************************************
-* Function prototype *
-************************************************************************/
-RET_CAN CANMainThreadInit(void);
EFrameworkunifiedStatus CANCallbackForTimeOut(HANDLE);
-void CANTimeOutMsg(HANDLE h_app, uint16_t);
-void CANCommonTimerStart(void);
-void CANBufferLogOut(void);
-void CANDebugLogOut(uint16_t, void*);
-void CANFreqTransTimeOutMap(void);
-
-/*******************************************************************************
- * MODULE : CANMsgErrChk
- * ABSTRACT : Message Send/Receive Error Check Processing
- * FUNCTION : Check for message transmission and reception errors and perform error processing.
- * ARGUMENT : RET_API ret_api Message send/receive return value
- * : u_int16 communication_code Registration code
- * NOTE :
- * RETURN :
- ******************************************************************************/
-
-inline void CANMsgErrChk(int32_t ret_api, uint16_t communication_code) {
- if (RET_ERROR == ret_api) { /* In case of an error */
- FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "CANMsgErrChk Called.");
- exit(EXIT_FAILURE);
- }
-}
-#endif // COMMUNICATION_SERVER_INCLUDE_THREADS_CAN_THREAD_H_
+#endif // COMMUNICATION_SERVER_INCLUDE_THREADS_CAN_THREAD_H_ \ No newline at end of file