diff options
author | XVSALGE <aleksandar.gerasimovski@seavus.com> | 2012-02-22 08:14:11 +0100 |
---|---|---|
committer | Viktor Mladenovski <viktor.mladenovski@seavus.com> | 2012-05-25 14:44:00 +0200 |
commit | 9dc2897fef041426347e80385707b7c86324c63e (patch) | |
tree | b7525770a2da28553426465f47a6d65efaa22c3b /lcmodule/source/cnh1605204_ldr_transport_layer/source/r15_transport_layer.c | |
parent | 828be7d08c886347641d8bba675993caf5a13d1a (diff) |
Sync lcm with CC source
Synchronize loader_communication with clearcase source
ST-Ericsson ID: 413947
ST-Ericsson FOSS-OUT ID: STETL-FOSS-OUT-10204
Change-Id: Ib23b84360b351a2598190d9d6b510895cc892436
Depends-On: I4b049943fc2acc63ed5f94dff6d4bc0e36fde1cf
Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/48934
Reviewed-by: QABUILD
Reviewed-by: QATEST
Reviewed-by: Zoran ANCEVSKI <zoran.ancevski@seavus.com>
Tested-by: Aleksandar GASOSKI <aleksandar.gasoski@seavus.com>
Tested-by: Cvetko MLADENOVSKI <cvetko.mladenovski@seavus.com>
Reviewed-by: Vlatko PISTOLOV <vlatko.pistolov@seavus.com>
Tested-by: Vlatko PISTOLOV <vlatko.pistolov@seavus.com>
Diffstat (limited to 'lcmodule/source/cnh1605204_ldr_transport_layer/source/r15_transport_layer.c')
-rw-r--r-- | lcmodule/source/cnh1605204_ldr_transport_layer/source/r15_transport_layer.c | 42 |
1 files changed, 39 insertions, 3 deletions
diff --git a/lcmodule/source/cnh1605204_ldr_transport_layer/source/r15_transport_layer.c b/lcmodule/source/cnh1605204_ldr_transport_layer/source/r15_transport_layer.c index 893412f..dcc5a3a 100644 --- a/lcmodule/source/cnh1605204_ldr_transport_layer/source/r15_transport_layer.c +++ b/lcmodule/source/cnh1605204_ldr_transport_layer/source/r15_transport_layer.c @@ -14,7 +14,7 @@ /******************************************************************************* * Includes ******************************************************************************/ -#include "c_system.h" +#include "c_system_v2.h" #include "r_r15_transport_layer.h" #include <stdlib.h> #include <string.h> @@ -37,7 +37,9 @@ ******************************************************************************/ static Timer_t *TimerSet(PacketMeta_t *Packet_p, const SendData_LP_t *const InputData_p, Communication_t *Communication_p); static void R15_Transport_OutHashCallback(const void *const Data_p, uint32 Length, const uint8 *const Hash_p, void *Param_p); - +#ifdef CFG_ENABLE_LOADER_TYPE +static ErrorCode_e ConfigureDeviceTimeouts(Communication_t *Communication_p); +#endif /******************************************************************************* * File scope types, constants and variables ******************************************************************************/ @@ -57,6 +59,7 @@ static void R15_Transport_OutHashCallback(const void *const Data_p, uint32 Lengt */ ErrorCode_e R15_Transport_Initialize(const Communication_t *const Communication_p) { + ErrorCode_e ReturnValue = E_SUCCESS; int VectorCounter; /* Initialize the session counters for command protocol*/ @@ -67,9 +70,14 @@ ErrorCode_e R15_Transport_Initialize(const Communication_t *const Communication_ R15_TRANSPORT(Communication_p)->BulkSessionCounter = 0; /* Initialize the default timeouts */ +#ifndef CFG_ENABLE_LOADER_TYPE R15_TIMEOUTS(Communication_p)->TCACK = ACK_TIMEOUT_IN_MS; R15_TIMEOUTS(Communication_p)->TBCR = BULK_COMMAND_RECEIVING_TIMEOUT; R15_TIMEOUTS(Communication_p)->TBDR = BULK_DATA_RECEIVING_TIMEOUT; +#else + ReturnValue = ConfigureDeviceTimeouts((Communication_t *)Communication_p); + VERIFY(E_SUCCESS == ReturnValue, ReturnValue); +#endif for (VectorCounter = 0; VectorCounter < MAX_BULK_TL_PROCESSES; VectorCounter++) { R15_TRANSPORT(Communication_p)->BulkVectorList[VectorCounter].Status = BULK_SESSION_IDLE; @@ -80,7 +88,10 @@ ErrorCode_e R15_Transport_Initialize(const Communication_t *const Communication_ R15_TRANSPORT(Communication_p)->BulkHandle.BulkTransferCS = Do_CriticalSection_Create(); R15_TRANSPORT(Communication_p)->BulkHandle.PendingBulkHeader_p = NULL; - return E_SUCCESS; +#ifdef CFG_ENABLE_LOADER_TYPE +ErrorExit: +#endif + return ReturnValue; } /* @@ -314,6 +325,31 @@ static Timer_t *TimerSet(PacketMeta_t *Packet_p, const SendData_LP_t *const Inpu return Timer_p; } + +#ifdef CFG_ENABLE_LOADER_TYPE +/* + * Function for configuration of timeouts for communication device. + * + * @param [in] Communication_p Communication module context. + * + * @return E_SUCCESS If is successfully executed. + */ +static ErrorCode_e ConfigureDeviceTimeouts(Communication_t *Communication_p) +{ + ErrorCode_e ReturnValue = E_INVALID_INPUT_PARAMETERS; + R15_Timeouts_t NewTimeoutData = {0}; + + ReturnValue = Communication_p->CommunicationDevice_p->SetTimeouts((void *)&NewTimeoutData, (void *)Communication_p); + VERIFY(E_SUCCESS == ReturnValue, ReturnValue); + + ReturnValue = R15_SetProtocolTimeouts(Communication_p, (void *)&NewTimeoutData); + VERIFY(E_SUCCESS == ReturnValue, ReturnValue); + +ErrorExit: + return ReturnValue; +} +#endif + /** @} */ /** @} */ /** @} */ |