summaryrefslogtreecommitdiff
path: root/lcmodule/source/cnh1606344_ldr_communication_module/source/a2_family.c
diff options
context:
space:
mode:
authorxmarvla <vlatko.markovic@seavus.com>2011-06-16 14:45:38 +0100
committerViktor Mladenovski <viktor.mladenovski@seavus.com>2011-08-17 22:10:43 +0200
commitb9b4df06ddb81a6d14354fc0d42e22acf0b4c30c (patch)
tree48b17930f3f28c72094f090ba38e6761aa43416b /lcmodule/source/cnh1606344_ldr_communication_module/source/a2_family.c
parentc9d1f9613e3ac18d5dd3b9432646e289bb88cec9 (diff)
LCM R1T and LCDriver R1N official release.
ST-Ericsson ID: 345044 ST-Ericsson FOSS-OUT ID: STETL-FOSS-OUT-10204 Change-Id: Ib1901abfc2efa6c887c70b8583ddd2258e21aa78 Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/25187 Tested-by: Vlatko STENKOSKI Tested-by: Cvetko MLADENOVSKI <cvetko.mladenovski@seavus.com> Tested-by: Aleksandar GASOSKI <aleksandar.gasoski@seavus.com> Reviewed-by: Zoran ANCEVSKI <zoran.ancevski@seavus.com> Reviewed-by: QATEST Reviewed-by: Vlatko PISTOLOV <vlatko.pistolov@seavus.com> Conflicts: lcmodule/win_binaries/LCM.dll win_binaries/LCDriver_CNH1606432.dll
Diffstat (limited to 'lcmodule/source/cnh1606344_ldr_communication_module/source/a2_family.c')
-rw-r--r--lcmodule/source/cnh1606344_ldr_communication_module/source/a2_family.c16
1 files changed, 10 insertions, 6 deletions
diff --git a/lcmodule/source/cnh1606344_ldr_communication_module/source/a2_family.c b/lcmodule/source/cnh1606344_ldr_communication_module/source/a2_family.c
index 83f155e..e5aad13 100644
--- a/lcmodule/source/cnh1606344_ldr_communication_module/source/a2_family.c
+++ b/lcmodule/source/cnh1606344_ldr_communication_module/source/a2_family.c
@@ -56,14 +56,18 @@ ErrorCode_e A2_Family_Init(Communication_t *Communication_p)
Communication_p->CurrentFamilyHash = HASH_CRC16;
if (NULL != Communication_p->BackupCommBuffer_p) {
- if (Communication_p->BackupCommBufferSize <= A2_HEADER_LENGTH) {
+ if (Communication_p->BackupCommBufferSize < A2_HEADER_LENGTH) {
memcpy(A2_NETWORK(Communication_p)->Inbound.Scratch, Communication_p->BackupCommBuffer_p, Communication_p->BackupCommBufferSize);
A2_NETWORK(Communication_p)->Inbound.ReqData = A2_HEADER_LENGTH - Communication_p->BackupCommBufferSize;
A2_NETWORK(Communication_p)->Inbound.ReqBuffOffset = Communication_p->BackupCommBufferSize;
A2_NETWORK(Communication_p)->Inbound.RecBackupData = Communication_p->BackupCommBufferSize;
Communication_p->BackupCommBufferSize = 0;
} else {
+ /* Copy content of backup buffer into scratch buffer */
memcpy(A2_NETWORK(Communication_p)->Inbound.Scratch, Communication_p->BackupCommBuffer_p, A2_HEADER_LENGTH);
+ /* Move rest of backup data at the beginning of the backup buffer */
+ memcpy(Communication_p->BackupCommBuffer_p, Communication_p->BackupCommBuffer_p + A2_HEADER_LENGTH, Communication_p->BackupCommBufferSize - A2_HEADER_LENGTH);
+ /* Update the size of the backup buffer */
Communication_p->BackupCommBufferSize = Communication_p->BackupCommBufferSize - A2_HEADER_LENGTH;
A2_NETWORK(Communication_p)->Inbound.RecBackupData = A2_HEADER_LENGTH;
}
@@ -86,7 +90,7 @@ ErrorExit:
/*
- * A2 family protocols sutdown.
+ * A2 family protocols shutdown.
*
* @param [in] Communication_p Communication module context.
*
@@ -131,10 +135,10 @@ ErrorExit:
}
/*
- * A2 Cancel Transmition.
+ * A2 Cancel Transmission.
*
* @param [in] Communication_p Communication module context.
- * @param [in] PacketsBeforeTransferStop Number of packets that will be transmited before stopping the transmition.
+ * @param [in] PacketsBeforeTransferStop Number of packets that will be transmitted before stopping the transmission.
*
* @retval E_SUCCESS After successful execution.
* @retval E_INVALID_INPUT_PARAMETERS Invalid input parameter.
@@ -145,12 +149,12 @@ ErrorCode_e A2_CancelReceiver(Communication_t *Communication_p, uint8 PacketsBef
VERIFY(NULL != Communication_p, E_INVALID_INPUT_PARAMETERS);
- A2_NETWORK(Communication_p)->Inbound.PacketsBeforeReceiverStop = PacketsBeforeReceiverStop;
+ A2_NETWORK(Communication_p)->Inbound.PacketsBeforeReceiverStop = PacketsBeforeReceiverStop;
A2_NETWORK(Communication_p)->Inbound.StopTransfer = TRUE;
ErrorExit:
A_(printf("protrom_family.c(%d) ErrorCode=%d\n", __LINE__, ReturnValue);)
- return ReturnValue;
+ return ReturnValue;
}