Ashling* RiscFree* Integrated Development Environment (IDE) for Intel® FPGAs User Guide

ID 730783
Date 12/14/2023
Public
Document Table of Contents

6.6. Debugging Zephyr Application

When you debug the Nios® V processor application, you can view the Zephyr Mutex (Mutual Exclusion Object) List, Zephyr Semaphore List, and Zephyr Thread List.

To display details of Zephyr Mutex, Semaphore and Thread lists, enable the macros as below in the prj.conf file.

Table 10.  Zephyr Debug Configuration
Debug Information Macros Configuration Description
Enable Trace CONFIG_TRACING y
To enable all the tracing function.
Note: All tracing macros have dependency to CONFIG_TRACING.
Mutex List CONFIG_TRACING_OBJECT_TRACKING

y

To enable object tracking for mutex.
Semaphore List To enable object tracking for semaphore.
Thread List CONFIG_DEBUG_THREAD_INFO y To display thread details.
The configuration is as shown below:
CONFIG_TRACING=y
CONFIG_TRACING_OBJECT_TRACKING=y
CONFIG_DEBUG_THREAD_INFO=y

To debug Zephyr application, follow these steps:

Launch the Zephyr application debug.
  • To open the Zephyr Mutex List view, go to Window > Show View > Other > Zephyr Mutex List.
    Figure 30. Zephyr OS Mutex List View

    The Zephyr Mutex List tab shows details of all mutexes including handle, thread owner, lock count, priority, along with any wait threads related to each mutex.

  • To open the Zephyr Semaphore List view, go to Window > Show View > Other > Zephyr Sempahore List.
    Figure 31. Zephyr Sempahore List View

    The Zephyr Semaphore List tab shows details of all semaphores including handle, count, limit along with any wait threads related to each semaphore.

  • To open the Zephyr Thread List view, go to Window > Show View > Other > Zephyr Thread List.
    Figure 32. Zephyr OS Thread List View

    The Zephyr Thread List tab shows thread details including name, handle, priority, start of stack, stack size, and status details.