]> rtime.felk.cvut.cz Git - arc.git/blobdiff - diagnostic/Dem/Dem.c
Dem, Setting write flag to false when succesfully written FF to NvM.
[arc.git] / diagnostic / Dem / Dem.c
index af82bdcca6141758bab45e7e4807f4f78fb0d169..121cf1b8c06def2cd825bc63d9521a810143937a 100644 (file)
@@ -1481,7 +1481,7 @@ static boolean lookupExtendedDataPriMem(Dem_EventIdType eventId, ExtDataRecType
 Std_ReturnType copyNvmMirror(const NvM_BlockIdType BlockId, uint8 *dstPtr, const uint8 *srcPtr, uint8 len)\r
 {\r
 \r
-#if (DEM_USE_NVM == STD_ON)\r
+#if (DEM_USE_NVM == STD_ON  && DEM_UNIT_TEST == STD_OFF)\r
        Std_ReturnType blockReadStatus = E_NOT_OK;\r
        NvM_RequestResultType requestResult;\r
 \r
@@ -1504,7 +1504,7 @@ Std_ReturnType copyNvmMirror(const NvM_BlockIdType BlockId, uint8 *dstPtr, const
  */\r
 Std_ReturnType writeNvmMirror(const NvM_BlockIdType BlockId, uint8 *dstPtr, const uint8 *srcPtr, uint8 len)\r
 {\r
-#if (DEM_USE_NVM == STD_ON)\r
+#if (DEM_USE_NVM == STD_ON && DEM_UNIT_TEST == STD_OFF)\r
        Std_ReturnType blockWriteStatus = E_NOT_OK;\r
        NvM_RequestResultType requestResult;\r
 \r
@@ -1617,7 +1617,11 @@ static void storeFreezeFrameDataPerMem()
 \r
        for(uint16 i = 0; i < DEM_MAX_NUMBER_FF_DATA_PRI_MEM; i++){\r
                if(memcmp(&priMemFreezeFrameBuffer[i], FreezeFrameMirrorBuffer[i], sizeof(FreezeFrameRecType))){\r
-                       if( E_NOT_OK == writeNvmMirror(FreezeFrameBlockId[i], (uint8 *)FreezeFrameMirrorBuffer[i], (const uint8 *)&priMemFreezeFrameBuffer[i], sizeof(FreezeFrameRecType)) ) {\r
+                       if( E_OK == writeNvmMirror(FreezeFrameBlockId[i], (uint8 *)FreezeFrameMirrorBuffer[i], (const uint8 *)&priMemFreezeFrameBuffer[i], sizeof(FreezeFrameRecType)) ) {\r
+                               FFIsModified = FALSE;\r
+                       }\r
+                       else\r
+                       {\r
                                FFIsModified = TRUE;\r
                        }\r
                }\r
@@ -3331,8 +3335,7 @@ Dem_ReturnGetSizeOfFreezeFrameType Dem_GetSizeOfFreezeFrame(uint32  dtc,Dem_DTCK
 \r
 }\r
 \r
-#define DEM_UNIT_TEST\r
-#ifdef DEM_UNIT_TEST\r
+#if (DEM_UNIT_TEST == STD_ON)\r
 void getFFDataPreInit(FreezeFrameRecType **buf)\r
 {\r
        *buf = &preInitFreezeFrameBuffer[0];\r