module ti.uia.events.UIASWICtx

index URL

UIA Software Interrupt Context Instrumentation

*       C synopsis

*  Individual elements

*       DETAILS

*       EXAMPLES

The UIASWICtx module defines context change events and methods that allow tooling to identify software interrupt context switches and to enable SWI-aware filtering, trace and analysis. more ... ]

C synopsis

target-domain

sourced in ti/uia/events/UIASWICtx.xdc

#include <ti/uia/events/UIASWICtx.h>

Typedefs

typedef Bool 

Constants

extern const Bits16 

extern const Log_Event 

extern const Log_Event 

extern const Bits16 

 

DETAILS

The UIASWICtx module defines context change events and methods that allow tooling to identify software interrupt context switches and to enable SWI-aware filtering, trace and analysis.

Note: in order to reduce overhead, UIASWICtx does not support context-aware filtering

EXAMPLES

Example 1: The following example shows how to turn on and off logging of ANALYSIS events from the application’s source code. See the Diags_setMask() function for details on specifying the control string.

  // turn on logging of ANALYSIS events in the module
  Diags_setMask("my.pkg.Mod+Z");
 
  // turn off logging of ANALYSIS events in the module
  Diags_setMask("my.pkg.Mod-Z");

 

typedef UIASWICtx_IsLoggingEnabledFxn

index URL

C synopsis

target-domain

typedef Bool (*UIASWICtx_IsLoggingEnabledFxn)(Int);

 

 

config UIASWICtx_ENABLEMASK  // module-wide

index URL

Ctx Filter Enable Mask

C synopsis

target-domain

extern const Bits16 UIASWICtx_ENABLEMASK;

 

DETAILS

configures which bit of the ti_uia_runtime_CtxFilter_gFlags is assigned to control context aware filtering for frame context changes. Must be configured with a value that is 2**SYNCID.

 

config UIASWICtx_SYNCID  // module-wide

index URL

Trace Synchronization ID

C synopsis

target-domain

extern const Bits16 UIASWICtx_SYNCID;

 

DETAILS

configures the value to be written into the 4 bit context change type field used by the UIASync trace synchronization

 

config UIASWICtx_isLoggingEnabledFxn  // module-wide

index URL

C synopsis

target-domain

extern const IUIACtx_IsLoggingEnabledFxn UIASWICtx_isLoggingEnabledFxn;

 

 

config UIASWICtx_start  // module-wide

index URL

Software Interrupt start event

C synopsis

target-domain

extern const Log_Event UIASWICtx_start;

 

VALUES

fmt — a constant string that describes the SWI and provides a format specifier for the SWI handle

handle — an integer which uniquely identifies the SWI

DETAILS

Used to log the start of a Software Interrupt service routine

EXAMPLE

The following C code shows how to log a Context Change event that identifies the start of a SWI. It implements a BIOS hook function. Alternatively, the LogCtxChg_swiStart API can be called directly from the SWI service routine.

  #include <ti/uia/runtime/LogCtxChg.h>
   ...
  Void swiBeginHook(Swi_Handle handle) {
    LogCtxChg_swiStart("Swi_Handle:0x%x",handle);
  }

This event has an associated format string (%$S) which is recursively formatted with any addition arguments. The following text is an example of what will be displayed for the event:

  "SWI start: Swi_Handle:0x80001200"
 

 

config UIASWICtx_stop  // module-wide

index URL

Software Interrupt Stop event

C synopsis

target-domain

extern const Log_Event UIASWICtx_stop;

 

VALUES

fmt — a constant string that describes the HWI and provides a format specifier for the HWI handle

handle — an integer which uniquely identifies the HWI

DETAILS

Used to log the end of a Software Interrupt service routine

EXAMPLE

The following C code shows how to log a Context Change event that identifies the end of a SWI. It implements a BIOS hook function. Alternatively, the LogCtxChg_swiStop API can be called directly from the SWI service routine.

  #include <ti/uia/runtime/LogCtxChg.h>
   ...
  Void swiEndHook(Swi_Handle handle) {
    LogCtxChg_swiStop("Swi_Handle:0x%x",handle);
  }

This event has an associated format string (%$S) which is recursively formatted with any addition arguments. The following text is an example of what will be displayed for the event:

  "SWI stop: Swi_Handle:0x80001200"
 

generated on Wed, 14 Mar 2012 16:46:04 GMT