I've generally got SystemView running but have noticed some issues that I'll document here.
I've instrumented the SystemView firmware for a custom OS. The OS uses task IDs starting at zero so I've set SEGGER_SYSVIEW_ID_BASE to 0x00000000 and SEGGER_SYSVIEW_ID_SHIFT to 0. If I create a task with ID == 0 (i.e. create a SEGGER_SYSVIEW_TASKINFO struct with TaskID == 0) then the SystemView app will crash when attempting to connect to the target. If I bump the task IDs by one then it'll connect.
Possibly related to the above, SEGGER_SYSVIEW_Warn() and SEGGER_SYSVIEW_Error() work, but SEGGER_SYSVIEW_Print() seems to cause similar connection problems as above.
Additionally, auto-detection of the RTT Control Block when "continuous" recording (i.e. starting target then connecting with SystemView "start recording") generally works fine but auto-detection when single-shot recording (i.e. "read recorded data") does not find the block. I must specifically set the address of the block. The "target device" selected is LPC4330_M4.
Setup:
Eclipse Neon.3 CDT with GNU ARM Eclipse.
OSX 10.12.5.
JTrace Pro.
LPC4330 target, specifically M4 in this case.
JLink GDB Server V6.14h.
SystemView V2.50 app and V2.50 fw.
GNU Tools for ARM 6-2017-q1-update.
Thanks for you help.
-Kevin
I've instrumented the SystemView firmware for a custom OS. The OS uses task IDs starting at zero so I've set SEGGER_SYSVIEW_ID_BASE to 0x00000000 and SEGGER_SYSVIEW_ID_SHIFT to 0. If I create a task with ID == 0 (i.e. create a SEGGER_SYSVIEW_TASKINFO struct with TaskID == 0) then the SystemView app will crash when attempting to connect to the target. If I bump the task IDs by one then it'll connect.
Possibly related to the above, SEGGER_SYSVIEW_Warn() and SEGGER_SYSVIEW_Error() work, but SEGGER_SYSVIEW_Print() seems to cause similar connection problems as above.
Additionally, auto-detection of the RTT Control Block when "continuous" recording (i.e. starting target then connecting with SystemView "start recording") generally works fine but auto-detection when single-shot recording (i.e. "read recorded data") does not find the block. I must specifically set the address of the block. The "target device" selected is LPC4330_M4.
Setup:
Eclipse Neon.3 CDT with GNU ARM Eclipse.
OSX 10.12.5.
JTrace Pro.
LPC4330 target, specifically M4 in this case.
JLink GDB Server V6.14h.
SystemView V2.50 app and V2.50 fw.
GNU Tools for ARM 6-2017-q1-update.
Thanks for you help.
-Kevin