GLAST / LAT > DAQ and FSW > FSW > Doxygen Index> TEX / V0-0-1 > tex / rhel6-32


Interface   Data Structures   File List   Data Fields   Globals  

TEX_pubdefs.h File Reference

Public definitions for the TEX exception trace facilities. More...

#include <TEX/TEX_pubdefs.h.xx-xxx-xxx>

Classes

union  _TRC_Format
 Union of unsigned int and unsigned char formats. More...

Defines

#define TRC_DATA_ROW_SIZE   (6)
 Size of the data buffer available to the user (unit is 4-bytes).
#define TRC_K_FLUSH_CACHE   (0)
 Enable/disable cache flushing of trace rows (enumeration).
#define TRC_K_EXCEPTION_5   (1)
 Enable/disable exception 5 tracing (external interrupt) (enumeration).
#define TRC_K_EXCEPTION_9   (2)
 Enable/disable exception 9 tracing (decrementer) (enumeration).
#define TRC_M_FLUSH_CACHE   ( 1 << TRC_K_FLUSH_CACHE )
#define TRC_M_EXCEPTION_5   ( 1 << TRC_K_EXCEPTION_5 )
 Enable/disable exception 5 tracing (external interrupt) (mask).
#define TRC_M_EXCEPTION_9   ( 1 << TRC_K_EXCEPTION_9 )
 Enable/disable exception 9 tracing (decrementer) (mask).

Typedefs

typedef enum _TRC_ExcCallType TRC_ExcCallType
 Typedef for enum _TRC_ExcCallType.
typedef enum _TRC_EX5_Message TRC_EX5_Message
 Typedef for enum _TRC_EX5_Message.
typedef enum _TRC_EX9_Message TRC_EX9_Message
 Typedef for enum _TRC_EX9_Message.
typedef union _TRC_Format TRC_Format
 Typedef for struct _TRC_Format.
typedef void TRC_cb_Exception (unsigned long long tim, unsigned int fui, unsigned int *dat)
 Signature for a routine to trace exceptions.

Enumerations

enum  _TRC_ExcCallType {
  TRC_EXC_OTHER = 0,
  TRC_EXC_ENTER = 1,
  TRC_EXC_EXIT = 2
}
 Type of trace entry being requested by the exception handler. More...
enum  _TRC_EX5_Message {
  TRC_EX5_PPCI_ENTER = 0,
  TRC_EX5_PPCI_DISPATCH = 1,
  TRC_EX5_PPCI_EXIT = 2,
  TRC_EX5_MPIC_ENTER = 3,
  TRC_EX5_MPIC_EXIT = 4
}
 Message codes for exception 5. More...
enum  _TRC_EX9_Message {
  TRC_EX9_ENTER_NODISPATCH = 0,
  TRC_EX9_ENTER_DISPATCH = 1,
  TRC_EX9_DISPATCH = 2,
  TRC_EX9_EXIT = 3
}
 Message codes for exception 9. More...

Functions

unsigned int TRC_configureEnables (unsigned int msk, unsigned int val)
 Configure the elements to trace.
TRC_cb_ExceptionTRC_setExceptionRoutine (TRC_cb_Exception *new)
 Change the routine used to trace exceptions.
static TRC_cb_ExceptionTRC__isEnabled (unsigned int val)
 Enquire about the enable status of an element of tracing.

Variables

unsigned int TRC_enableMask
 Bit-mask of the trace elements enabled.
TRC_cb_ExceptionTRC_vectorException
 Points to the routine providing exception tracing facilities.


Detailed Description

Public definitions for the TEX exception trace facilities.

CVS $Id: TEX_pubdefs.h,v 1.2 2011/03/24 22:38:54 apw Exp $
Author:
A.P.Waite

Define Documentation

#define TRC_K_FLUSH_CACHE   (0)

Enable/disable cache flushing of trace rows (enumeration).

Enable/disable cache flushing of trace rows (mask).


Enumeration Type Documentation

Message codes for exception 5.

Enumerator:
TRC_EX5_PPCI_ENTER  Print a PPCI entrance record
TRC_EX5_PPCI_DISPATCH  Print a PPCI dispatch record
TRC_EX5_PPCI_EXIT  Print a PPCI exit record
TRC_EX5_MPIC_ENTER  Print a MPIC entrance record
TRC_EX5_MPIC_EXIT  Print a MPIC exit record

Message codes for exception 9.

Enumerator:
TRC_EX9_ENTER_NODISPATCH  Print enter without dispatch
TRC_EX9_ENTER_DISPATCH  Print enter with dispatch
TRC_EX9_DISPATCH  Print secondary dispatch
TRC_EX9_EXIT  Print exit

Type of trace entry being requested by the exception handler.

Enumerator:
TRC_EXC_OTHER  Neither entrance nor exit
TRC_EXC_ENTER  Calling on entry
TRC_EXC_EXIT  Calling on exit


Function Documentation

static inline TRC_cb_Exception * TRC__isEnabled ( unsigned int  val  )  [inline, static]

Enquire about the enable status of an element of tracing.

Parameters:
val (in) Trace element to enquire about
Return values:
NULL Element is not enabled
x The routine to call to record trace information (from exception)
Warning:
This routine is optimized for use by exception level tracing. It's callable outside of the exception context, but the only valid use of the returned value is a test of NULL/not-NULL.
Note that suitable values of val are provided #define macros beginning with the prefix TRC_K_TRC_.

References TRC_enableMask, and TRC_vectorException.

unsigned int TRC_configureEnables ( unsigned int  msk,
unsigned int  val 
)

Configure the elements to trace.

Parameters:
msk (in) Mask of elements to touch
val (in) Values to set masked bits to
Returns:
The previous enable mask
TRC_configureEnables() enables/disables the elements that are written to the system trace. The routine functions as a selective set and clear. Bits that the caller wishes to change should be set in the msk parameter. The value to which they should be set should appear in the corresponding position(s) of the val parameter (bit set means enable).

Thus both msk and val should be filled from mask bits. Suitable mask bits are provided as #define macros beginning with the prefix TRC_M_TRC_.

TRC_cb_Exception* TRC_setExceptionRoutine ( TRC_cb_Exception new  ) 

Change the routine used to trace exceptions.

Parameters:
new (in) New routine to call for exception tracing
Return values:
x Routine previously used for exception tracing
When the exception tracing facilities are first initialized, there's no trace in existence. For that reason, these facilities come up with a dummy routine defined for the trace exception routine. At a later point during system initialization, the dummy can be replaced with a functional routine by using this call.


Generated on Tue Nov 29 16:52:49 2011 by  doxygen 1.5.8