comment update and cleanup
This commit is contained in:
@@ -260,14 +260,14 @@ static int32_t Scan_AdvHandler(L2_INST *instPtr)
|
|||||||
/* if time out reached, go back to init scan stage. */
|
/* if time out reached, go back to init scan stage. */
|
||||||
if (scanFsmPtr->advTimeout > ADV_LISTEN_TIMEOUT)
|
if (scanFsmPtr->advTimeout > ADV_LISTEN_TIMEOUT)
|
||||||
{
|
{
|
||||||
/* Antenna setting (reserved.) */
|
/* Antenna setting (reserved, automatically accomplished by physical layer) */
|
||||||
L2_SetupNextSlot(instPtr, L2_TOR_RX, L2_SCAN_FRAME);
|
L2_SetupNextSlot(instPtr, L2_TOR_RX, L2_SCAN_FRAME);
|
||||||
DBG_WARNING("Adv timeout, restart net scan from L2_SCAN_INIT_STAGE.\n");
|
DBG_WARNING("Adv timeout, restart net scan from L2_SCAN_INIT_STAGE.\n");
|
||||||
L2_Scan_Reset(scanFsmPtr);
|
L2_Scan_Reset(scanFsmPtr);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
/* Antenna setting (reserved.) */
|
/* Antenna setting (reserved, automatically accomplished by physical layer) */
|
||||||
L2_SetupNextSlot(instPtr, L2_TOR_RX, L2_ADV_FRAME);
|
L2_SetupNextSlot(instPtr, L2_TOR_RX, L2_ADV_FRAME);
|
||||||
scanFsmPtr->advTimeout++;
|
scanFsmPtr->advTimeout++;
|
||||||
}
|
}
|
||||||
@@ -333,6 +333,7 @@ static int32_t ScanMsg_Packing(L2_INST *instPtr, L2_FRAME_TYPE type, uint8_t dst
|
|||||||
return EPARAM;
|
return EPARAM;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Common section of link layer package
|
||||||
dataChunk = L2_GetNextFrameNum(instPtr);
|
dataChunk = L2_GetNextFrameNum(instPtr);
|
||||||
L2_FrameInsertChunk(buff, L2_MSG_FRAME_NUM, L2_MSG_FRAME_NUM_LEN, &dataChunk);
|
L2_FrameInsertChunk(buff, L2_MSG_FRAME_NUM, L2_MSG_FRAME_NUM_LEN, &dataChunk);
|
||||||
dataChunk = L2_GetNextSlotNum(instPtr);
|
dataChunk = L2_GetNextSlotNum(instPtr);
|
||||||
@@ -419,91 +420,6 @@ static int32_t ScanMsg_Packing(L2_INST *instPtr, L2_FRAME_TYPE type, uint8_t dst
|
|||||||
return SUCCESS;
|
return SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
|
||||||
/**
|
|
||||||
* @brief Initialize scan FSM.
|
|
||||||
*
|
|
||||||
* @param instPtr
|
|
||||||
*
|
|
||||||
* @return
|
|
||||||
*
|
|
||||||
******************************************************************************/
|
|
||||||
int32_t L2_Scan_Init(L2_SCAN_FSM **scanFSMPtr)
|
|
||||||
{
|
|
||||||
ASSERT(scanFSMPtr != NULL);
|
|
||||||
*scanFSMPtr = (L2_SCAN_FSM *)malloc(sizeof(L2_SCAN_FSM));
|
|
||||||
if (*scanFSMPtr == NULL)
|
|
||||||
{
|
|
||||||
DBG_ERROR("Failed to allocate memory for scanFsmPtr.\n");
|
|
||||||
return ENOMEM;
|
|
||||||
}
|
|
||||||
L2_Scan_Reset(*scanFSMPtr);
|
|
||||||
(*scanFSMPtr)->beamNo = 0;
|
|
||||||
(*scanFSMPtr)->tableNo = 0;
|
|
||||||
return SUCCESS;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*****************************************************************************/
|
|
||||||
/**
|
|
||||||
* @brief Reset ScanNet FSM
|
|
||||||
*
|
|
||||||
* @param scanFsmPtr a pointer to scan net finite state machine
|
|
||||||
*
|
|
||||||
* @return NONE
|
|
||||||
*
|
|
||||||
******************************************************************************/
|
|
||||||
void L2_Scan_Reset(L2_SCAN_FSM *scanFSMPtr)
|
|
||||||
{
|
|
||||||
ASSERT(scanFSMPtr != NULL);
|
|
||||||
scanFSMPtr->isLocked = false;
|
|
||||||
scanFSMPtr->isAdvRecvd = false;
|
|
||||||
scanFSMPtr->isAckPending = false;
|
|
||||||
scanFSMPtr->scanCnt = 0;
|
|
||||||
scanFSMPtr->advTimeout = 0;
|
|
||||||
scanFSMPtr->cfmTimeout = 0;
|
|
||||||
scanFSMPtr->scanStage = L2_SCAN_NONE_STAGE;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*****************************************************************************/
|
|
||||||
/**
|
|
||||||
* @brief Destroy ScanNet FSM, free memory
|
|
||||||
*
|
|
||||||
* @param scanFsmPtr a pointer to scan net finite state machine
|
|
||||||
*
|
|
||||||
* @return NONE
|
|
||||||
*
|
|
||||||
******************************************************************************/
|
|
||||||
void L2_Scan_Destroy(L2_SCAN_FSM *scanFSMPtr)
|
|
||||||
{
|
|
||||||
free(scanFSMPtr);
|
|
||||||
}
|
|
||||||
|
|
||||||
/*****************************************************************************/
|
|
||||||
/**
|
|
||||||
* @brief Refresh scan beam table.
|
|
||||||
*
|
|
||||||
* @param instPtr a pointer to linklayer layer instance
|
|
||||||
*
|
|
||||||
* @return NONE
|
|
||||||
*
|
|
||||||
******************************************************************************/
|
|
||||||
void L2_Scan_RefreashScanTable(L2_INST *instPtr)
|
|
||||||
{
|
|
||||||
ASSERT(instPtr != NULL);
|
|
||||||
L2_SCAN_FSM *scanFsmPtr = instPtr->scanFSM;
|
|
||||||
PHY_INST *phyRef = instPtr->config.phyInstPtr;
|
|
||||||
if (scanFsmPtr->tableNo == 0)
|
|
||||||
{
|
|
||||||
Phy_SetBeamTable(phyRef, antNrrwPattern_0, scanFsmPtr->beamNo);
|
|
||||||
scanFsmPtr->tableNo = 1;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
Phy_SetBeamTable(phyRef, antNrrwPattern_1, scanFsmPtr->beamNo);
|
|
||||||
scanFsmPtr->tableNo = 0;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/**
|
/**
|
||||||
* @brief Scan net packet handler.
|
* @brief Scan net packet handler.
|
||||||
@@ -702,6 +618,90 @@ int32_t L2_Scan_PktHandler(L2_INST *instPtr, uint8_t *msg)
|
|||||||
return Status;
|
return Status;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*****************************************************************************/
|
||||||
|
/**
|
||||||
|
* @brief Initialize scan FSM.
|
||||||
|
*
|
||||||
|
* @param instPtr
|
||||||
|
*
|
||||||
|
* @return
|
||||||
|
*
|
||||||
|
******************************************************************************/
|
||||||
|
int32_t L2_Scan_Init(L2_SCAN_FSM **scanFSMPtr)
|
||||||
|
{
|
||||||
|
ASSERT(scanFSMPtr != NULL);
|
||||||
|
*scanFSMPtr = (L2_SCAN_FSM *)malloc(sizeof(L2_SCAN_FSM));
|
||||||
|
if (*scanFSMPtr == NULL)
|
||||||
|
{
|
||||||
|
DBG_ERROR("Failed to allocate memory for scanFsmPtr.\n");
|
||||||
|
return ENOMEM;
|
||||||
|
}
|
||||||
|
L2_Scan_Reset(*scanFSMPtr);
|
||||||
|
(*scanFSMPtr)->beamNo = 0;
|
||||||
|
(*scanFSMPtr)->tableNo = 0;
|
||||||
|
return SUCCESS;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*****************************************************************************/
|
||||||
|
/**
|
||||||
|
* @brief Reset ScanNet FSM
|
||||||
|
*
|
||||||
|
* @param scanFsmPtr a pointer to scan net finite state machine
|
||||||
|
*
|
||||||
|
* @return NONE
|
||||||
|
*
|
||||||
|
******************************************************************************/
|
||||||
|
void L2_Scan_Reset(L2_SCAN_FSM *scanFSMPtr)
|
||||||
|
{
|
||||||
|
ASSERT(scanFSMPtr != NULL);
|
||||||
|
scanFSMPtr->isLocked = false;
|
||||||
|
scanFSMPtr->isAdvRecvd = false;
|
||||||
|
scanFSMPtr->isAckPending = false;
|
||||||
|
scanFSMPtr->scanCnt = 0;
|
||||||
|
scanFSMPtr->advTimeout = 0;
|
||||||
|
scanFSMPtr->cfmTimeout = 0;
|
||||||
|
scanFSMPtr->scanStage = L2_SCAN_NONE_STAGE;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*****************************************************************************/
|
||||||
|
/**
|
||||||
|
* @brief Destroy ScanNet FSM, free memory
|
||||||
|
*
|
||||||
|
* @param scanFsmPtr a pointer to scan net finite state machine
|
||||||
|
*
|
||||||
|
* @return NONE
|
||||||
|
*
|
||||||
|
******************************************************************************/
|
||||||
|
void L2_Scan_Destroy(L2_SCAN_FSM *scanFSMPtr)
|
||||||
|
{
|
||||||
|
free(scanFSMPtr);
|
||||||
|
}
|
||||||
|
|
||||||
|
/*****************************************************************************/
|
||||||
|
/**
|
||||||
|
* @brief Refresh scan beam table.
|
||||||
|
*
|
||||||
|
* @param instPtr a pointer to linklayer layer instance
|
||||||
|
*
|
||||||
|
* @return NONE
|
||||||
|
*
|
||||||
|
******************************************************************************/
|
||||||
|
void L2_Scan_RefreashScanTable(L2_INST *instPtr)
|
||||||
|
{
|
||||||
|
ASSERT(instPtr != NULL);
|
||||||
|
L2_SCAN_FSM *scanFsmPtr = instPtr->scanFSM;
|
||||||
|
PHY_INST *phyRef = instPtr->config.phyInstPtr;
|
||||||
|
if (scanFsmPtr->tableNo == 0)
|
||||||
|
{
|
||||||
|
Phy_SetBeamTable(phyRef, antNrrwPattern_0, scanFsmPtr->beamNo);
|
||||||
|
scanFsmPtr->tableNo = 1;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
Phy_SetBeamTable(phyRef, antNrrwPattern_1, scanFsmPtr->beamNo);
|
||||||
|
scanFsmPtr->tableNo = 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -88,6 +88,7 @@ static int32_t Service_Packing(L2_INST *instPtr, L2_FRAME_TYPE type, uint8_t dst
|
|||||||
uint32_t dataChunk;
|
uint32_t dataChunk;
|
||||||
uint8_t *buff = instPtr->sendPktData;
|
uint8_t *buff = instPtr->sendPktData;
|
||||||
|
|
||||||
|
// Common section of link layer package
|
||||||
dataChunk = L2_GetNextFrameNum(instPtr);
|
dataChunk = L2_GetNextFrameNum(instPtr);
|
||||||
L2_FrameInsertChunk(buff, L2_MSG_FRAME_NUM, L2_MSG_FRAME_NUM_LEN, &dataChunk);
|
L2_FrameInsertChunk(buff, L2_MSG_FRAME_NUM, L2_MSG_FRAME_NUM_LEN, &dataChunk);
|
||||||
dataChunk = L2_GetNextSlotNum(instPtr);
|
dataChunk = L2_GetNextSlotNum(instPtr);
|
||||||
@@ -113,7 +114,7 @@ static int32_t Service_Packing(L2_INST *instPtr, L2_FRAME_TYPE type, uint8_t dst
|
|||||||
L2_FrameInsertChunk(buff, L2_MSG_SVC_SRC_SPEEDZ, L2_MSG_SVC_SRC_SPEEDZ_LEN, &(instPtr->sysInfo.vZ));
|
L2_FrameInsertChunk(buff, L2_MSG_SVC_SRC_SPEEDZ, L2_MSG_SVC_SRC_SPEEDZ_LEN, &(instPtr->sysInfo.vZ));
|
||||||
|
|
||||||
uint32_t dataId;
|
uint32_t dataId;
|
||||||
if(L2_GetNodeType(instPtr) == L2_NODE_HEAD)
|
if (L2_GetNodeType(instPtr) == L2_NODE_HEAD)
|
||||||
{
|
{
|
||||||
SysMonitor_GetSendPayload(buff + L2_MSG_SVC_PAYLOAD, &dataId, PAYLOAD_LEN_FLJ_TX);
|
SysMonitor_GetSendPayload(buff + L2_MSG_SVC_PAYLOAD, &dataId, PAYLOAD_LEN_FLJ_TX);
|
||||||
}
|
}
|
||||||
@@ -128,12 +129,6 @@ static int32_t Service_Packing(L2_INST *instPtr, L2_FRAME_TYPE type, uint8_t dst
|
|||||||
L2_FrameInsertChunk(buff, L2_MSG_SVC_PAYLOAD, L2_MSG_SVC_PAYLOAD_LEN, testData);
|
L2_FrameInsertChunk(buff, L2_MSG_SVC_PAYLOAD, L2_MSG_SVC_PAYLOAD_LEN, testData);
|
||||||
}
|
}
|
||||||
|
|
||||||
// // packing payload
|
|
||||||
// uint32_t dataId;
|
|
||||||
// dataId = DATA_ID_TEST;
|
|
||||||
// L2_FrameInsertChunk(buff, L2_MSG_SVC_PAYLOAD_ID, L2_MSG_SVC_PAYLOAD_ID_LEN, &dataId);
|
|
||||||
// L2_FrameInsertChunk(buff, L2_MSG_SVC_PAYLOAD, L2_MSG_SVC_PAYLOAD_LEN, testData);
|
|
||||||
|
|
||||||
Status = L2_CrcAppend(buff, L2_SVC_PACK_LEN - L2_MSG_SVC_CRC_LEN, L2_MSG_SVC_CRC, L2_CRC16_1021);
|
Status = L2_CrcAppend(buff, L2_SVC_PACK_LEN - L2_MSG_SVC_CRC_LEN, L2_MSG_SVC_CRC, L2_CRC16_1021);
|
||||||
if (Status != SUCCESS)
|
if (Status != SUCCESS)
|
||||||
{
|
{
|
||||||
@@ -159,62 +154,6 @@ static int32_t Service_Packing(L2_INST *instPtr, L2_FRAME_TYPE type, uint8_t dst
|
|||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
|
||||||
/**
|
|
||||||
* @brief Initialize service net FSM
|
|
||||||
*
|
|
||||||
* @param serviceFSM A pointer to service FSM instance.
|
|
||||||
*
|
|
||||||
* @return SUCCESS Initialize successfully.
|
|
||||||
* Other Initialize failed.
|
|
||||||
*
|
|
||||||
******************************************************************************/
|
|
||||||
int32_t L2_Service_Init(L2_SVC_FSM **svcFSMPtr)
|
|
||||||
{
|
|
||||||
ASSERT(svcFSMPtr != NULL);
|
|
||||||
*svcFSMPtr = (L2_SVC_FSM *)malloc(sizeof(L2_SVC_FSM));
|
|
||||||
if (*svcFSMPtr == NULL)
|
|
||||||
{
|
|
||||||
return ENOMEM;
|
|
||||||
}
|
|
||||||
L2_Service_Reset(*svcFSMPtr);
|
|
||||||
return SUCCESS;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*****************************************************************************/
|
|
||||||
/**
|
|
||||||
* @brief Reset ServiceNet FSM
|
|
||||||
*
|
|
||||||
* @param scanFsmPtr a pointer to service net finite state machine
|
|
||||||
*
|
|
||||||
* @return NONE
|
|
||||||
*
|
|
||||||
******************************************************************************/
|
|
||||||
void L2_Service_Reset(L2_SVC_FSM *svcFSMPtr)
|
|
||||||
{
|
|
||||||
ASSERT(svcFSMPtr != NULL);
|
|
||||||
memset((&svcFSMPtr->rxLog), 0x00, sizeof(PAYLOAD));
|
|
||||||
memset((&svcFSMPtr->txLog), 0x00, sizeof(PAYLOAD));
|
|
||||||
#ifdef DATALINK_ENABLE_BERTEST
|
|
||||||
svcFSMPtr->bitTotal = 0;
|
|
||||||
svcFSMPtr->bitError = 0;
|
|
||||||
#endif
|
|
||||||
}
|
|
||||||
|
|
||||||
/*****************************************************************************/
|
|
||||||
/**
|
|
||||||
* @brief Destroy ServiceNet FSM, free memory
|
|
||||||
*
|
|
||||||
* @param scanFsmPtr a pointer to service net finite state machine
|
|
||||||
*
|
|
||||||
* @return NONE
|
|
||||||
*
|
|
||||||
******************************************************************************/
|
|
||||||
void L2_Service_Destroy(L2_SVC_FSM *serviceFSM)
|
|
||||||
{
|
|
||||||
free(serviceFSM);
|
|
||||||
}
|
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/**
|
/**
|
||||||
* @brief Handle service received packet. Send data up to MPC
|
* @brief Handle service received packet. Send data up to MPC
|
||||||
@@ -244,7 +183,7 @@ int32_t L2_Service_PktHandler(L2_INST *instPtr, uint8_t *msg)
|
|||||||
if (node == NULL)
|
if (node == NULL)
|
||||||
{
|
{
|
||||||
node = L2_AppendNode(instPtr->nodeList, nodeId, L2_NODE_MEMBER);
|
node = L2_AppendNode(instPtr->nodeList, nodeId, L2_NODE_MEMBER);
|
||||||
if(node == NULL)
|
if (node == NULL)
|
||||||
{
|
{
|
||||||
DBG_ERROR("Failed to append new node [id: %" PRIu8 "]", nodeId);
|
DBG_ERROR("Failed to append new node [id: %" PRIu8 "]", nodeId);
|
||||||
Status = ENOMEM;
|
Status = ENOMEM;
|
||||||
@@ -255,18 +194,18 @@ int32_t L2_Service_PktHandler(L2_INST *instPtr, uint8_t *msg)
|
|||||||
// Update node info.
|
// Update node info.
|
||||||
float nodePos;
|
float nodePos;
|
||||||
L2_FrameGetChunk(msg, L2_MSG_SVC_SRC_POSX, L2_MSG_SVC_SRC_POSX_LEN, &nodePos);
|
L2_FrameGetChunk(msg, L2_MSG_SVC_SRC_POSX, L2_MSG_SVC_SRC_POSX_LEN, &nodePos);
|
||||||
node->nodeInfo.pos.x = (double) nodePos;
|
node->nodeInfo.pos.x = (double)nodePos;
|
||||||
L2_FrameGetChunk(msg, L2_MSG_SVC_SRC_POSY, L2_MSG_SVC_SRC_POSY_LEN, &nodePos);
|
L2_FrameGetChunk(msg, L2_MSG_SVC_SRC_POSY, L2_MSG_SVC_SRC_POSY_LEN, &nodePos);
|
||||||
node->nodeInfo.pos.y = (double) nodePos;
|
node->nodeInfo.pos.y = (double)nodePos;
|
||||||
L2_FrameGetChunk(msg, L2_MSG_SVC_SRC_POSZ, L2_MSG_SVC_SRC_POSZ_LEN, &nodePos);
|
L2_FrameGetChunk(msg, L2_MSG_SVC_SRC_POSZ, L2_MSG_SVC_SRC_POSZ_LEN, &nodePos);
|
||||||
node->nodeInfo.pos.z = (double) nodePos;
|
node->nodeInfo.pos.z = (double)nodePos;
|
||||||
float nodeSpeed;
|
float nodeSpeed;
|
||||||
L2_FrameGetChunk(msg, L2_MSG_SVC_SRC_SPEEDX, L2_MSG_SVC_SRC_SPEEDX_LEN, &nodeSpeed);
|
L2_FrameGetChunk(msg, L2_MSG_SVC_SRC_SPEEDX, L2_MSG_SVC_SRC_SPEEDX_LEN, &nodeSpeed);
|
||||||
node->nodeInfo.speed.x = (double) nodePos;
|
node->nodeInfo.speed.x = (double)nodePos;
|
||||||
L2_FrameGetChunk(msg, L2_MSG_SVC_SRC_SPEEDY, L2_MSG_SVC_SRC_SPEEDY_LEN, &nodeSpeed);
|
L2_FrameGetChunk(msg, L2_MSG_SVC_SRC_SPEEDY, L2_MSG_SVC_SRC_SPEEDY_LEN, &nodeSpeed);
|
||||||
node->nodeInfo.speed.y = (double) nodePos;
|
node->nodeInfo.speed.y = (double)nodePos;
|
||||||
L2_FrameGetChunk(msg, L2_MSG_SVC_SRC_SPEEDZ, L2_MSG_SVC_SRC_SPEEDZ_LEN, &nodeSpeed);
|
L2_FrameGetChunk(msg, L2_MSG_SVC_SRC_SPEEDZ, L2_MSG_SVC_SRC_SPEEDZ_LEN, &nodeSpeed);
|
||||||
node->nodeInfo.speed.z = (double) nodePos;
|
node->nodeInfo.speed.z = (double)nodePos;
|
||||||
|
|
||||||
// Reset node ttl
|
// Reset node ttl
|
||||||
node->ttlCnt = 0;
|
node->ttlCnt = 0;
|
||||||
@@ -344,6 +283,65 @@ int32_t L2_Service_PktHandler(L2_INST *instPtr, uint8_t *msg)
|
|||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*****************************************************************************/
|
||||||
|
/**
|
||||||
|
* @brief Initialize service net FSM
|
||||||
|
*
|
||||||
|
* @param serviceFSM A pointer to service FSM instance.
|
||||||
|
*
|
||||||
|
* @return SUCCESS Initialize successfully.
|
||||||
|
* Other Initialize failed.
|
||||||
|
*
|
||||||
|
******************************************************************************/
|
||||||
|
int32_t L2_Service_Init(L2_SVC_FSM **svcFSMPtr)
|
||||||
|
{
|
||||||
|
ASSERT(svcFSMPtr != NULL);
|
||||||
|
*svcFSMPtr = (L2_SVC_FSM *)malloc(sizeof(L2_SVC_FSM));
|
||||||
|
if (*svcFSMPtr == NULL)
|
||||||
|
{
|
||||||
|
return ENOMEM;
|
||||||
|
}
|
||||||
|
L2_Service_Reset(*svcFSMPtr);
|
||||||
|
return SUCCESS;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*****************************************************************************/
|
||||||
|
/**
|
||||||
|
* @brief Reset ServiceNet FSM
|
||||||
|
*
|
||||||
|
* @param scanFsmPtr a pointer to service net finite state machine
|
||||||
|
*
|
||||||
|
* @return NONE
|
||||||
|
*
|
||||||
|
******************************************************************************/
|
||||||
|
void L2_Service_Reset(L2_SVC_FSM *svcFSMPtr)
|
||||||
|
{
|
||||||
|
ASSERT(svcFSMPtr != NULL);
|
||||||
|
svcFSMPtr->txCnt = 0;
|
||||||
|
svcFSMPtr->rxCnt = 0;
|
||||||
|
svcFSMPtr->rxdCnt = 0;
|
||||||
|
#ifdef DATALINK_ENABLE_BERTEST
|
||||||
|
svcFSMPtr->bitTotal = 0;
|
||||||
|
svcFSMPtr->bitError = 0;
|
||||||
|
svcFSMPtr->lossRate = 0;
|
||||||
|
svcFSMPtr->errorRate = 0;
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
|
/*****************************************************************************/
|
||||||
|
/**
|
||||||
|
* @brief Destroy ServiceNet FSM, free memory
|
||||||
|
*
|
||||||
|
* @param scanFsmPtr a pointer to service net finite state machine
|
||||||
|
*
|
||||||
|
* @return NONE
|
||||||
|
*
|
||||||
|
******************************************************************************/
|
||||||
|
void L2_Service_Destroy(L2_SVC_FSM *serviceFSM)
|
||||||
|
{
|
||||||
|
free(serviceFSM);
|
||||||
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/**
|
/**
|
||||||
* @brief Service FSM Routine.
|
* @brief Service FSM Routine.
|
||||||
@@ -364,9 +362,10 @@ int32_t L2_Service_Routine(L2_INST *instPtr, const L2_RTNE_TABLE_ENTRY *rtneEntr
|
|||||||
return SUCCESS; // skip
|
return SUCCESS; // skip
|
||||||
}
|
}
|
||||||
|
|
||||||
PHY_INST* phyRef = instPtr->config.phyInstPtr;
|
PHY_INST *phyRef = instPtr->config.phyInstPtr;
|
||||||
|
L2_SVC_FSM *svcFSMPtr = instPtr->serviceFSM;
|
||||||
L2_TOR_TYPE torState;
|
L2_TOR_TYPE torState;
|
||||||
const NODE_ENTRY* commNode;
|
const NODE_ENTRY *commNode;
|
||||||
if (rtneEntry->src == L2_GetNodeId(instPtr))
|
if (rtneEntry->src == L2_GetNodeId(instPtr))
|
||||||
{
|
{
|
||||||
torState = L2_TOR_TX;
|
torState = L2_TOR_TX;
|
||||||
|
|||||||
Reference in New Issue
Block a user