]> rtime.felk.cvut.cz Git - arc.git/commitdiff
Merge with 62f20cf2f1035f45ac37ca2add94c34ba6404cc4
authorjohn <devnull@localhost>
Tue, 11 Sep 2012 09:45:16 +0000 (11:45 +0200)
committerjohn <devnull@localhost>
Tue, 11 Sep 2012 09:45:16 +0000 (11:45 +0200)
1  2 
diagnostic/Dcm/Dcm_Dsp.c

diff --combined diagnostic/Dcm/Dcm_Dsp.c
index 77928f6464641ba0ea8de3ca1a7ea3e47dfa8de0,a94a10db7a429be33443cb03e3d4c922a13aa9b7..d790ce2c805f4a8d72267656055b0f644d88b1bb
@@@ -1264,8 -1264,8 +1264,8 @@@ static Dcm_NegativeResponseCodeType wri
  \r
                                        if (result == E_OK) {\r
                                                if (didLen == writeDidLen) {    /** @req DCM473 */\r
 -                                                      result = didPtr->DspDidWriteDataFnc(&pduRxData->SduDataPtr[3], (uint8)didLen, &errorCode);      /** @req DCM395 */\r
 -                                                      if ((result != E_OK) && (errorCode == DCM_E_POSITIVERESPONSE)) {\r
 +                                                      result = didPtr->DspDidWriteDataFnc(&pduRxData->SduDataPtr[3], (uint8)didLen, &responseCode);   /** @req DCM395 */\r
 +                                                      if( result != E_OK && responseCode == DCM_E_POSITIVERESPONSE ) {\r
                                                                responseCode = DCM_E_CONDITIONSNOTCORRECT;\r
                                                        }\r
                                                }\r
@@@ -2743,23 -2743,16 +2743,16 @@@ void DspDynamicallyDefineDataIdentifier
  static Dcm_NegativeResponseCodeType DspIOControlReturnControlToECU(const Dcm_DspDidType *DidPtr,const PduInfoType *pduRxData,PduInfoType *pduTxData)\r
  {\r
        Dcm_NegativeResponseCodeType responseCode = DCM_E_POSITIVERESPONSE;\r
-       if(DidPtr->DspDidInfoRef->DspDidAccess.DspDidControl->DspDidReturnControlToEcu == TRUE)\r
+       if(pduRxData->SduLength > 4)\r
        {\r
-               if(pduRxData->SduLength > 4)\r
+               if(DidPtr->DspDidInfoRef->DspDidAccess.DspDidControl != NULL)\r
                {\r
-                       if(DidPtr->DspDidInfoRef->DspDidAccess.DspDidControl != NULL)\r
+                       if(((DidPtr->DspDidInfoRef->DspDidAccess.DspDidControl->DspDidReturnControlToEcu->DspDidControlOptionRecordSize + 7) >> 3) == (pduRxData->SduLength - 4))\r
                        {\r
-                               if(((DidPtr->DspDidControlRecordSize->DspDidControlRecordSize + 7) >> 3) == (pduRxData->SduLength - 4))\r
+                               if(DidPtr->DspDidReturnControlToEcuFnc != NULL)\r
                                {\r
-                                       if(DidPtr->DspDidReturnControlToEcuFnc != NULL)\r
-                                       {\r
-                                               DidPtr->DspDidReturnControlToEcuFnc(NULL,&pduRxData->SduDataPtr[4],&pduTxData->SduDataPtr[4],&responseCode);\r
-                                               \r
-                                       }\r
-                                       else\r
-                                       {\r
-                                               responseCode = DCM_E_REQUESTOUTOFRANGE;\r
-                                       }\r
+                                       DidPtr->DspDidReturnControlToEcuFnc(NULL,&pduRxData->SduDataPtr[4],&pduTxData->SduDataPtr[4],&responseCode);\r
\r
                                }\r
                                else\r
                                {\r
                }\r
                else\r
                {\r
-                       if(DidPtr->DspDidReturnControlToEcuFnc != NULL)\r
-                       {\r
+                       responseCode = DCM_E_REQUESTOUTOFRANGE;\r
+               }\r
+       }\r
+       else\r
+       {\r
+               if(DidPtr->DspDidReturnControlToEcuFnc != NULL)\r
+               {\r
  \r
-                               if(DidPtr->DspDidControlRecordSize != NULL)\r
-                               {\r
-                                       DidPtr->DspDidReturnControlToEcuFnc(NULL,NULL,&pduTxData->SduDataPtr[4],&responseCode);\r
-                                       pduTxData->SduLength = DidPtr->DspDidControlRecordSize->DspDidControlStatusRecordSize + 4;\r
-                               }\r
-                               else\r
-                               {\r
-                                       responseCode = DCM_E_REQUESTOUTOFRANGE;\r
-                               }\r
+                       if(DidPtr->DspDidControlRecordSize != NULL)\r
+                       {\r
+                               DidPtr->DspDidReturnControlToEcuFnc(NULL,NULL,&pduTxData->SduDataPtr[4],&responseCode);\r
+                               pduTxData->SduLength = DidPtr->DspDidInfoRef->DspDidAccess.DspDidControl->DspDidReturnControlToEcu->DspDidControlStatusRecordSize + 4;\r
                        }\r
                        else\r
                        {\r
                                responseCode = DCM_E_REQUESTOUTOFRANGE;\r
                        }\r
                }\r
-       }\r
-       else\r
-       {\r
-               responseCode = DCM_E_REQUESTOUTOFRANGE;\r
+               else\r
+               {\r
+                       responseCode = DCM_E_REQUESTOUTOFRANGE;\r
+               }\r
        }\r
        if(responseCode == DCM_E_POSITIVERESPONSE)\r
        {\r
-               pduTxData->SduLength = DidPtr->DspDidControlRecordSize->DspDidControlStatusRecordSize + 4;\r
+               pduTxData->SduLength = DidPtr->DspDidInfoRef->DspDidAccess.DspDidControl->DspDidReturnControlToEcu->DspDidControlStatusRecordSize + 4;\r
                pduTxData->SduDataPtr[3] = DCM_RETURN_CONTROL_TO_ECU;\r
        }\r
        \r
  static Dcm_NegativeResponseCodeType DspIOControlResetToDefault(const Dcm_DspDidType *DidPtr,const PduInfoType *pduRxData,PduInfoType *pduTxData)\r
  {\r
        Dcm_NegativeResponseCodeType responseCode = DCM_E_POSITIVERESPONSE;\r
-       if(DidPtr->DspDidInfoRef->DspDidAccess.DspDidControl->DspDidResetToDefault == TRUE)\r
+       if(pduRxData->SduLength > 4)\r
        {\r
-               if(pduRxData->SduLength > 4)\r
+               if(DidPtr->DspDidInfoRef->DspDidAccess.DspDidControl != NULL)\r
                {\r
-                       if(DidPtr->DspDidInfoRef->DspDidAccess.DspDidControl != NULL)\r
+                       if(((DidPtr->DspDidInfoRef->DspDidAccess.DspDidControl->DspDidResetToDefault->DspDidControlOptionRecordSize + 7) >> 3) == (pduRxData->SduLength - 4))\r
                        {\r
-                               if(((DidPtr->DspDidControlRecordSize->DspDidControlRecordSize + 7) >> 3) == (pduRxData->SduLength - 4))\r
+                               if(DidPtr->DspDidReturnControlToEcuFnc != NULL)\r
                                {\r
-                                       if(DidPtr->DspDidReturnControlToEcuFnc != NULL)\r
-                                       {\r
-                                               DidPtr->DspDidResetToDeaultFnc(NULL,&pduRxData->SduDataPtr[4],&pduTxData->SduDataPtr[4],&responseCode);\r
-                                       }\r
-                                       else\r
-                                       {\r
-                                               responseCode = DCM_E_REQUESTOUTOFRANGE;\r
-                                       }\r
+                                       DidPtr->DspDidResetToDeaultFnc(NULL,&pduRxData->SduDataPtr[4],&pduTxData->SduDataPtr[4],&responseCode);\r
                                }\r
                                else\r
                                {\r
                }\r
                else\r
                {\r
-                       if(DidPtr->DspDidResetToDeaultFnc != NULL)\r
-                       {\r
+                       responseCode = DCM_E_REQUESTOUTOFRANGE;\r
+               }\r
+       }\r
+       else\r
+       {\r
+               if(DidPtr->DspDidResetToDeaultFnc != NULL)\r
+               {\r
  \r
-                               if(DidPtr->DspDidControlRecordSize != NULL)\r
-                               {\r
-                                       DidPtr->DspDidResetToDeaultFnc(NULL,NULL,&pduTxData->SduDataPtr[4],&responseCode);\r
-                                       pduTxData->SduLength = DidPtr->DspDidControlRecordSize->DspDidControlStatusRecordSize + 4;\r
-                               }\r
-                               else\r
-                               {\r
-                                       responseCode = DCM_E_REQUESTOUTOFRANGE;\r
-                               }\r
+                       if(DidPtr->DspDidControlRecordSize != NULL)\r
+                       {\r
+                               DidPtr->DspDidResetToDeaultFnc(NULL,NULL,&pduTxData->SduDataPtr[4],&responseCode);\r
+                               pduTxData->SduLength = DidPtr->DspDidInfoRef->DspDidAccess.DspDidControl->DspDidResetToDefault->DspDidControlStatusRecordSize + 4;\r
                        }\r
                        else\r
                        {\r
                                responseCode = DCM_E_REQUESTOUTOFRANGE;\r
                        }\r
                }\r
-       }\r
-       else\r
-       {\r
-               responseCode = DCM_E_REQUESTOUTOFRANGE;\r
+               else\r
+               {\r
+                       responseCode = DCM_E_REQUESTOUTOFRANGE;\r
+               }\r
        }\r
        if(responseCode == DCM_E_POSITIVERESPONSE)\r
        {\r
-               pduTxData->SduLength = DidPtr->DspDidControlRecordSize->DspDidControlStatusRecordSize+4;\r
+               pduTxData->SduLength = DidPtr->DspDidInfoRef->DspDidAccess.DspDidControl->DspDidResetToDefault->DspDidControlStatusRecordSize+4;\r
                pduTxData->SduDataPtr[3] = DCM_RESET_TO_DEFAULT;\r
        }\r
        return responseCode;\r
  static Dcm_NegativeResponseCodeType DspIOControlFreezeCurrentState(const Dcm_DspDidType *DidPtr,const PduInfoType *pduRxData,PduInfoType *pduTxData)\r
  {\r
        Dcm_NegativeResponseCodeType responseCode = DCM_E_POSITIVERESPONSE;\r
-       if(DidPtr->DspDidInfoRef->DspDidAccess.DspDidControl->DspDidFreezeCurrentState == TRUE)\r
+       if(pduRxData->SduLength > 4)\r
        {\r
-               if(pduRxData->SduLength > 4)\r
+               if(DidPtr->DspDidInfoRef->DspDidAccess.DspDidControl != NULL)\r
                {\r
-                       if(DidPtr->DspDidInfoRef->DspDidAccess.DspDidControl != NULL)\r
+                       if(((DidPtr->DspDidInfoRef->DspDidAccess.DspDidControl->DspDidFreezeCurrentState->DspDidControlOptionRecordSize + 7) >> 3) == (pduRxData->SduLength - 4))\r
                        {\r
-                               if(((DidPtr->DspDidControlRecordSize->DspDidControlRecordSize + 7) >> 3) == (pduRxData->SduLength - 4))\r
+                               if(DidPtr->DspDidFreezeCurrentStateFnc != NULL)\r
                                {\r
-                                       if(DidPtr->DspDidFreezeCurrentStateFnc != NULL)\r
-                                       {\r
-                                               DidPtr->DspDidFreezeCurrentStateFnc(NULL,&pduRxData->SduDataPtr[4],&pduTxData->SduDataPtr[4],&responseCode);\r
-                                       }\r
-                                       else\r
-                                       {\r
-                                               responseCode = DCM_E_REQUESTOUTOFRANGE;\r
-                                       }\r
+                                       DidPtr->DspDidFreezeCurrentStateFnc(NULL,&pduRxData->SduDataPtr[4],&pduTxData->SduDataPtr[4],&responseCode);\r
                                }\r
                                else\r
                                {\r
                }\r
                else\r
                {\r
-                       if(DidPtr->DspDidFreezeCurrentStateFnc != NULL)\r
-                       {\r
+                       responseCode = DCM_E_REQUESTOUTOFRANGE;\r
+               }\r
+       }\r
+       else\r
+       {\r
+               if(DidPtr->DspDidFreezeCurrentStateFnc != NULL)\r
+               {\r
  \r
-                               if(DidPtr->DspDidControlRecordSize != 0)\r
-                               {\r
-                                       DidPtr->DspDidFreezeCurrentStateFnc(NULL,NULL,&pduTxData->SduDataPtr[4],&responseCode);\r
-                                       pduTxData->SduLength = DidPtr->DspDidControlRecordSize->DspDidControlStatusRecordSize + 4;\r
-                               }\r
-                               else\r
-                               {\r
-                                       responseCode = DCM_E_REQUESTOUTOFRANGE;\r
-                               }\r
+                       if(DidPtr->DspDidControlRecordSize != 0)\r
+                       {\r
+                               DidPtr->DspDidFreezeCurrentStateFnc(NULL,NULL,&pduTxData->SduDataPtr[4],&responseCode);\r
+                               pduTxData->SduLength = DidPtr->DspDidInfoRef->DspDidAccess.DspDidControl->DspDidFreezeCurrentState->DspDidControlStatusRecordSize + 4;\r
                        }\r
                        else\r
                        {\r
                                responseCode = DCM_E_REQUESTOUTOFRANGE;\r
                        }\r
                }\r
-       }\r
-       else\r
-       {\r
-               responseCode = DCM_E_REQUESTOUTOFRANGE;\r
+               else\r
+               {\r
+                       responseCode = DCM_E_REQUESTOUTOFRANGE;\r
+               }\r
        }\r
        if(responseCode == DCM_E_POSITIVERESPONSE)\r
        {\r
-               pduTxData->SduLength = DidPtr->DspDidControlRecordSize->DspDidControlStatusRecordSize + 4;\r
+               pduTxData->SduLength = DidPtr->DspDidInfoRef->DspDidAccess.DspDidControl->DspDidFreezeCurrentState->DspDidControlStatusRecordSize + 4;\r
                pduTxData->SduDataPtr[3] = DCM_FREEZE_CURRENT_STATE;\r
        }\r
        \r
  static Dcm_NegativeResponseCodeType DspIOControlShortTeamAdjustment(const Dcm_DspDidType *DidPtr,const PduInfoType *pduRxData,PduInfoType *pduTxData)\r
  {\r
        Dcm_NegativeResponseCodeType responseCode = DCM_E_POSITIVERESPONSE;\r
-       uint8 didControlOptionRecordSize = DidPtr->DspDidControlRecordSize->DspDidControlOptionRecordSize;\r
-       if(DidPtr->DspDidInfoRef->DspDidAccess.DspDidControl->DspDidShortTermAdjustment == TRUE)\r
+       uint8 didControlOptionRecordSize = DidPtr->DspDidInfoRef->DspDidAccess.DspDidControl->DspDidShortTermAdjustment->DspDidControlOptionRecordSize;\r
+       if(pduRxData->SduLength > 4)\r
        {\r
-               if(pduRxData->SduLength > 4)\r
+               if(DidPtr->DspDidInfoRef->DspDidAccess.DspDidControl != NULL)\r
                {\r
-                       if(DidPtr->DspDidInfoRef->DspDidAccess.DspDidControl != NULL)\r
+                       if(((((DidPtr->DspDidInfoRef->DspDidAccess.DspDidControl->DspDidShortTermAdjustment->DspDidControlRecordSize + 7)) >> 3) + (didControlOptionRecordSize)) == (pduRxData->SduLength - 4))\r
                        {\r
-                               if(((((DidPtr->DspDidControlRecordSize->DspDidControlRecordSize + 7)) >> 3) + (didControlOptionRecordSize)) == (pduRxData->SduLength - 4))\r
+                               if(DidPtr->DspDidShortTermAdjustmentFnc != NULL)\r
                                {\r
-                                       if(DidPtr->DspDidShortTermAdjustmentFnc != NULL)\r
-                                       {\r
-                                               DidPtr->DspDidShortTermAdjustmentFnc(&pduRxData->SduDataPtr[4],&pduRxData->SduDataPtr[4 + didControlOptionRecordSize],&pduTxData->SduDataPtr[4],&responseCode);\r
-                                       }\r
-                                       else\r
-                                       {\r
-                                               responseCode = DCM_E_REQUESTOUTOFRANGE;\r
-                                       }\r
+                                       DidPtr->DspDidShortTermAdjustmentFnc(&pduRxData->SduDataPtr[4],&pduRxData->SduDataPtr[4 + didControlOptionRecordSize],&pduTxData->SduDataPtr[4],&responseCode);\r
                                }\r
-                               else if((didControlOptionRecordSize) == (pduRxData->SduLength - 4))\r
+                               else\r
                                {\r
-                                       if(DidPtr->DspDidShortTermAdjustmentFnc != NULL)\r
-                                       {\r
-                                               DidPtr->DspDidShortTermAdjustmentFnc(&pduRxData->SduDataPtr[4],NULL,&pduTxData->SduDataPtr[4],&responseCode);\r
-                                       }\r
-                                       else\r
-                                       {\r
-                                               responseCode = DCM_E_REQUESTOUTOFRANGE;\r
-                                       }\r
+                                       responseCode = DCM_E_REQUESTOUTOFRANGE;\r
+                               }\r
+                       }\r
+                       else if((didControlOptionRecordSize) == (pduRxData->SduLength - 4))\r
+                       {\r
+                               if(DidPtr->DspDidShortTermAdjustmentFnc != NULL)\r
+                               {\r
+                                       DidPtr->DspDidShortTermAdjustmentFnc(&pduRxData->SduDataPtr[4],NULL,&pduTxData->SduDataPtr[4],&responseCode);\r
                                }\r
                                else\r
                                {\r
                                        responseCode = DCM_E_REQUESTOUTOFRANGE;\r
                                }\r
                        }\r
-                       else \r
+                       else\r
                        {\r
                                responseCode = DCM_E_REQUESTOUTOFRANGE;\r
                        }\r
        }\r
        if(responseCode == DCM_E_POSITIVERESPONSE)\r
        {\r
-               pduTxData->SduLength = DidPtr->DspDidControlRecordSize->DspDidControlStatusRecordSize + 4;\r
+               pduTxData->SduLength = DidPtr->DspDidInfoRef->DspDidAccess.DspDidControl->DspDidShortTermAdjustment->DspDidControlStatusRecordSize + 4;\r
                pduTxData->SduDataPtr[3] = DCM_SHORT_TERM_ADJUSTMENT;\r
        }\r
        \r