CONFIG_PERCEPIO_RECORDER_TRC_CFG_USE_IMPLICIT_IFE_RULES

Use Implicit IFE Rules

Type: bool

Help

Tracealyzer groups the events into "instances" based on Instance Finish
            Events (IFEs), produced either by default rules or calls to the recorder
            functions vTraceInstanceFinishedNow and vTraceInstanceFinishedNext.

            If TRC_CFG_USE_IMPLICIT_IFE_RULES is one (1), the default IFE rules is
            used, resulting in a "typical" grouping of events into instances.
            If these rules don't give appropriate instances in your case, you can
            override the default rules using vTraceInstanceFinishedNow/Next for one
            or several tasks. The default IFE rules are then disabled for those tasks.

            If TRC_CFG_USE_IMPLICIT_IFE_RULES is zero (0), the implicit IFE rules are
            disabled globally. You must then call vTraceInstanceFinishedNow or
            vTraceInstanceFinishedNext to manually group the events into instances,
            otherwise the tasks will appear a single long instance.

            The default IFE rules count the following events as "instance finished":
             - Task delay, delay until
             - Task suspend
             - Blocking on "input" operations, i.e., when the task is waiting for the
               next a message/signal/event. But only if this event is blocking.

Direct dependencies

PERCEPIO_TRC_RECORDER_MODE_SNAPSHOT && PERCEPIO_TRC_RECORDER_MODE_SNAPSHOT && PERCEPIO_TRACERECORDER

(Includes any dependencies from ifs and menus.)

Default

  • y

Kconfig definition

At /home/runner/work/sdk-nrf/sdk-nrf/ncs/modules/debug/TraceRecorder/kernelports/Zephyr/Kconfig:672

Included via <Zephyr>/Kconfig:8<Zephyr>/Kconfig.zephyr:23<Zephyr>/modules/Kconfig:6<BuildDir>/kconfig/Kconfig.modules:56

Menu path: (Top) → Modules → TraceRecorder (/home/runner/work/sdk-nrf/sdk-nrf/ncs/modules/debug/TraceRecorder) → Percepio Trace Recorder → Snapshot Configuration

config PERCEPIO_RECORDER_TRC_CFG_USE_IMPLICIT_IFE_RULES
    bool "Use Implicit IFE Rules"
    default y
    depends on PERCEPIO_TRC_RECORDER_MODE_SNAPSHOT && PERCEPIO_TRC_RECORDER_MODE_SNAPSHOT && PERCEPIO_TRACERECORDER
    help
      Tracealyzer groups the events into "instances" based on Instance Finish
                  Events (IFEs), produced either by default rules or calls to the recorder
                  functions vTraceInstanceFinishedNow and vTraceInstanceFinishedNext.

                  If TRC_CFG_USE_IMPLICIT_IFE_RULES is one (1), the default IFE rules is
                  used, resulting in a "typical" grouping of events into instances.
                  If these rules don't give appropriate instances in your case, you can
                  override the default rules using vTraceInstanceFinishedNow/Next for one
                  or several tasks. The default IFE rules are then disabled for those tasks.

                  If TRC_CFG_USE_IMPLICIT_IFE_RULES is zero (0), the implicit IFE rules are
                  disabled globally. You must then call vTraceInstanceFinishedNow or
                  vTraceInstanceFinishedNext to manually group the events into instances,
                  otherwise the tasks will appear a single long instance.

                  The default IFE rules count the following events as "instance finished":
                   - Task delay, delay until
                   - Task suspend
                   - Blocking on "input" operations, i.e., when the task is waiting for the
                     next a message/signal/event. But only if this event is blocking.

(The ‘depends on’ condition includes propagated dependencies from ifs and menus.)