Dec 15, 2020
08:19 AM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Dec 15, 2020
08:19 AM
Hello,
When running the SafeTlib DMA CRC test it is always failing when comparing the calculated CRC to the value in the DMA CRC registers. I am running on a TC233 using the HighTec Tricore v4.9.3.0 compiler. Here are things I have looked at:
-I verified that the Assumptions of Use for the DMA test are satisfied (DMA isn't being used by any other peripheral, the user stack is in the 0x70nnnnnn address range
-I confirmed that the DMA operation is taking place. The data is copied from SourceAddress1 to DestAddress1 and from SourceAddress2 to DestAddress2.
-The correct DMA channels are being used as configured
-Verified that the CRC32 macro definition is using the correct crc32 for the _GNU_C_TRICORE_:
__asm__ volatile("crc32 %0, %2, %1" :"=d"(res) : "d"(b), "d"(a): "memory");
return res;
-No code in the SafeTlib has been modified - it is being used as supplied.
Any ideas what could be causing the calculated CRC to not match the DMA CRC value?
Thanks,
Steve
When running the SafeTlib DMA CRC test it is always failing when comparing the calculated CRC to the value in the DMA CRC registers. I am running on a TC233 using the HighTec Tricore v4.9.3.0 compiler. Here are things I have looked at:
-I verified that the Assumptions of Use for the DMA test are satisfied (DMA isn't being used by any other peripheral, the user stack is in the 0x70nnnnnn address range
-I confirmed that the DMA operation is taking place. The data is copied from SourceAddress1 to DestAddress1 and from SourceAddress2 to DestAddress2.
-The correct DMA channels are being used as configured
-Verified that the CRC32 macro definition is using the correct crc32 for the _GNU_C_TRICORE_:
__asm__ volatile("crc32 %0, %2, %1" :"=d"(res) : "d"(b), "d"(a): "memory");
return res;
-No code in the SafeTlib has been modified - it is being used as supplied.
Any ideas what could be causing the calculated CRC to not match the DMA CRC value?
Thanks,
Steve
- Tags:
- IFX
2 Replies
Jan 15, 2021
06:58 AM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Jan 15, 2021
06:58 AM
Turns out the compiler version we were using handles the crc32 instruction differently. There is a specific version of the compiler that needs to be used for SafeTlib and we weren't using it. Using the correct version fixed the issue.
Nov 18, 2021
03:00 AM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Nov 18, 2021
03:00 AM
Hi,
I have the same issue now. Could you please tell me the correct version of the compiler? And which compiler is used? Thanks