Is an ETM required in the target for SystemView to function? GD32F405

    This site uses cookies. By continuing to browse this site, you are agreeing to our Cookie Policy.

    • Is an ETM required in the target for SystemView to function? GD32F405

      I'm trying to set up a profile environment for the GD32F405 in SystemView using FreeRTOS 11. However it seems to be getting stuck with the following log and silently failing:

      Source Code

      1. 16:23:38 - JLink: Device "GD32F405ZK" selected.
      2. 16:23:38 - JLink: Found SW-DP with ID 0x2BA01477
      3. 16:23:38 - JLink: DPIDR: 0x2BA01477
      4. 16:23:38 - JLink: CoreSight SoC-400 or earlier
      5. 16:23:38 - JLink: Scanning AP map to find all available APs
      6. 16:23:38 - JLink: AP[1]: Stopped AP scan as end of AP map has been reached
      7. 16:23:38 - JLink: AP[0]: AHB-AP (IDR: 0x24770011)
      8. 16:23:38 - JLink: Iterating through AP map to find AHB-AP to use
      9. 16:23:38 - JLink: AP[0]: Core found
      10. 16:23:38 - JLink: AP[0]: AHB-AP ROM base: 0xE00FF000
      11. 16:23:38 - JLink: CPUID register: 0x410FC241. Implementer code: 0x41 (ARM)
      12. 16:23:38 - JLink: Found Cortex-M4 r0p1, Little endian.
      13. 16:23:38 - JLink: FPUnit: 6 code (BP) slots and 2 literal slots
      14. 16:23:38 - JLink: CoreSight components:
      15. 16:23:38 - JLink: ROMTbl[0] @ E00FF000
      16. 16:23:38 - JLink: [0][0]: E000E000 CID B105E00D PID 000BB00C SCS-M7
      17. 16:23:38 - JLink: [0][1]: E0001000 CID B105E00D PID 003BB002 DWT
      18. 16:23:38 - JLink: [0][2]: E0002000 CID B105E00D PID 002BB003 FPB
      19. 16:23:38 - JLink: [0][3]: E0000000 CID B105E00D PID 003BB001 ITM
      20. 16:23:38 - JLink: [0][4]: E0040000 CID B105900D PID 000BB9A1 TPIU
      21. 16:23:38 - JLink: [0][5]: E0041000 CID 00000000 PID 00000000 ???
      Display All
      It's definitely seeing the RTT control block as pressing "read recorded data" gives this further information

      Source Code

      1. 16:30:12 - JLink: [0][0]: E000E000 CID B105E00D PID 000BB00C SCS-M7
      2. 16:30:12 - JLink: [0][1]: E0001000 CID B105E00D PID 003BB002 DWT
      3. 16:30:12 - JLink: [0][2]: E0002000 CID B105E00D PID 002BB003 FPB
      4. 16:30:12 - JLink: [0][3]: E0000000 CID B105E00D PID 003BB001 ITM
      5. 16:30:12 - JLink: [0][4]: E0040000 CID B105900D PID 000BB9A1 TPIU
      6. 16:30:12 - JLink: [0][5]: E0041000 CID 00000000 PID 00000000 ???
      7. 16:30:13 - RTT Control Block found at 0x1000F9B4.
      8. 16:30:13 - SystemView Buffer found.
      9. 16:30:13 - SystemView Buffer is empty!
      10. 16:30:13 - Warning: Failed to read recorded data.
      Using the segger_sysview_start(); in code, I manage to pull the following data from the device using the "read recorded information" command:



      I believe I've managed to get this working in the past, though no longer have the original code find any differences.

      Any help would be really appreciated.