TianoCore EDK2 master
Loading...
Searching...
No Matches

Modules

 Optional Message Attributes
 

Data Structures

struct  mipi_syst_header
 
struct  mipi_syst_msg_tag
 
union  mipi_syst_msglocation32
 
union  mipi_syst_msglocation64
 
struct  mipi_syst_msglocation
 
struct  mipi_syst_handle_flags
 
struct  mipi_syst_handle
 

Macros

#define MIPI_SYST_PCFG_ENABLE_DEFAULT_SCATTER_WRITE
 
#define MIPI_SYST_PCFG_ENABLE_CATID32_API
 
#define MIPI_SYST_PCFG_ENABLE_CATID64_API
 
#define MIPI_SYST_PCFG_ENABLE_STRING_API
 
#define MIPI_SYST_PCFG_ENABLE_WRITE_API
 
#define MIPI_SYST_PCFG_ENABLE_BUILD_API
 
#define MIPI_SYST_PCFG_ENABLE_PRINTF_API
 
#define MIPI_SYST_PCFG_PRINTF_ARGBUF_SIZE   1024
 
#define MIPI_SYST_INLINE   static MIPI_SYST_CC_INLINE
 
#define _MIPI_SYST_MK_MODUNIT_ORIGIN(m, u)   (((u) & 0xF)|(m<<4))
 

Typedefs

typedef struct mipi_syst_header MIPI_SYST_HEADER
 
typedef struct mipi_syst_handle MIPI_SYST_HANDLE
 
typedef enum mipi_syst_severity MIPI_SYST_SEVERITY
 
typedef struct mipi_syst_guid MIPI_SYST_GUID
 
typedef struct mipi_syst_msg_tag MIPI_SYST_MSG_TAG
 
typedef struct mipi_syst_handle_flags MIPI_SYST_HANDLE_FLAGS
 

Enumerations

enum  mipi_syst_severity {
  MIPI_SYST_SEVERITY_MAX = 0 , MIPI_SYST_SEVERITY_FATAL = 1 , MIPI_SYST_SEVERITY_ERROR = 2 , MIPI_SYST_SEVERITY_WARNING = 3 ,
  MIPI_SYST_SEVERITY_INFO = 4 , MIPI_SYST_SEVERITY_USER1 = 5 , MIPI_SYST_SEVERITY_USER2 = 6 , MIPI_SYST_SEVERITY_DEBUG = 7
}
 

Variables

mipi_syst_u8   mipi_syst_guid::b [16]
 
mipi_syst_u64   mipi_syst_guid::ll [2]
 
union {
   mipi_syst_u8   mipi_syst_guid::b [16]
 
   mipi_syst_u64   mipi_syst_guid::ll [2]
 
mipi_syst_guid::u
 
struct mipi_syst_guid mipi_syst_origin::guid
 
mipi_syst_u16 mipi_syst_origin::unit
 
mipi_syst_u32 mipi_syst_header::systh_version
 
mipi_syst_inithandle_hook_t mipi_syst_header::systh_inith
 
mipi_syst_releasehandle_hook_t mipi_syst_header::systh_releaseh
 
mipi_syst_msg_write_t mipi_syst_header::systh_writer
 
mipi_syst_u32 mipi_syst_msg_tag::et_type: 4
 
mipi_syst_u32 mipi_syst_msg_tag::et_severity: 3
 
mipi_syst_u32 mipi_syst_msg_tag::et_res7: 1
 
mipi_syst_u32 mipi_syst_msg_tag::et_location: 1
 
mipi_syst_u32 mipi_syst_msg_tag::et_length: 1
 
mipi_syst_u32 mipi_syst_msg_tag::et_chksum: 1
 
mipi_syst_u32 mipi_syst_msg_tag::et_timestamp: 1
 
mipi_syst_u32 mipi_syst_msg_tag::et_modunit: 11
 
mipi_syst_u32 mipi_syst_msg_tag::et_guid: 1
 
mipi_syst_u32 mipi_syst_msg_tag::et_subtype: 6
 
mipi_syst_u32 mipi_syst_msg_tag::et_res30: 1
 
mipi_syst_u32 mipi_syst_msg_tag::et_res31: 1
 
mipi_syst_u16   mipi_syst_msglocation32::etls_fileID
 
mipi_syst_u16   mipi_syst_msglocation32::etls_lineNo
 
struct {
   mipi_syst_u16   mipi_syst_msglocation32::etls_fileID
 
   mipi_syst_u16   mipi_syst_msglocation32::etls_lineNo
 
mipi_syst_msglocation32::etls_source_location
 
mipi_syst_u32 mipi_syst_msglocation32::etls_code_location:32
 
mipi_syst_u32   mipi_syst_msglocation64::etls_fileID
 
mipi_syst_u32   mipi_syst_msglocation64::etls_lineNo
 
struct {
   mipi_syst_u32   mipi_syst_msglocation64::etls_fileID
 
   mipi_syst_u32   mipi_syst_msglocation64::etls_lineNo
 
mipi_syst_msglocation64::etls_source_location
 
mipi_syst_u64 mipi_syst_msglocation64::etls_code_location
 
mipi_syst_u8 mipi_syst_msglocation::el_format
 
union mipi_syst_msglocation32   mipi_syst_msglocation::loc32
 
union mipi_syst_msglocation64   mipi_syst_msglocation::loc64
 
union {
   union mipi_syst_msglocation32   mipi_syst_msglocation::loc32
 
   union mipi_syst_msglocation64   mipi_syst_msglocation::loc64
 
mipi_syst_msglocation::el_u
 
mipi_syst_u32 mipi_syst_handle_flags::shf_alloc:1
 
struct mipi_syst_headermipi_syst_handle::systh_header
 
struct mipi_syst_handle_flags mipi_syst_handle::systh_flags
 
struct mipi_syst_msg_tag mipi_syst_handle::systh_tag
 
struct mipi_syst_guid mipi_syst_handle::systh_guid
 
mipi_syst_u32 mipi_syst_handle::systh_param_count
 
mipi_syst_u32 mipi_syst_handle::systh_param [6]
 
struct mipi_syst_platform_handle mipi_syst_handle::systh_platform
 

Detailed Description

These defines enable API sets in the SyS-T library. They are set by default depending on the SyS-T API conformance level. The level is specified using the define MIPI_SYST_CONFORMANCE_LEVEL.

Macro Definition Documentation

◆ _MIPI_SYST_MK_MODUNIT_ORIGIN

#define _MIPI_SYST_MK_MODUNIT_ORIGIN (   m,
 
)    (((u) & 0xF)|(m<<4))

Definition at line 671 of file mipi_syst.h.

◆ MIPI_SYST_INLINE

#define MIPI_SYST_INLINE   static MIPI_SYST_CC_INLINE

Definition at line 609 of file mipi_syst.h.

◆ MIPI_SYST_PCFG_ENABLE_BUILD_API

#define MIPI_SYST_PCFG_ENABLE_BUILD_API

Enable Build API

Definition at line 512 of file mipi_syst.h.

◆ MIPI_SYST_PCFG_ENABLE_CATID32_API

#define MIPI_SYST_PCFG_ENABLE_CATID32_API

Enable the Catalog API for 32-Bit Catalog IDs.

Definition at line 492 of file mipi_syst.h.

◆ MIPI_SYST_PCFG_ENABLE_CATID64_API

#define MIPI_SYST_PCFG_ENABLE_CATID64_API

Enable the Catalog API for 64-Bit Catalog IDs.

Definition at line 497 of file mipi_syst.h.

◆ MIPI_SYST_PCFG_ENABLE_DEFAULT_SCATTER_WRITE

#define MIPI_SYST_PCFG_ENABLE_DEFAULT_SCATTER_WRITE

Use SyS-T scatter write output function

The library comes with an output routine that is intended to write data out to an MMIO space. It simplifies a SyS-T platform integration as only low-level access macros must be provided for outputting data. These macros follow MIPI System Trace Protocol (STP) naming convention, also non STP generators can use this interface.

These low level output macros are:

MIPI_SYST_OUTPUT_D32MTS, MIPI_SYST_OUTPUT_D64MTS, MIPI_SYST_OUTPUT_D32TS, #MIPI_SYST_OUTPUT_D64, MIPI_SYST_OUTPUT_D32, MIPI_SYST_OUTPUT_D16, MIPI_SYST_OUTPUT_D8 and MIPI_SYST_OUTPUT_FLAG

Note: This version of the write function always starts messages using a 32-bit timestamped record also other sized timestamped packets are allowed by the SyS-T specification.

Definition at line 487 of file mipi_syst.h.

◆ MIPI_SYST_PCFG_ENABLE_PRINTF_API

#define MIPI_SYST_PCFG_ENABLE_PRINTF_API

Enable printf API support

Note: Enabling printf requires compiler var_arg support as defined by the header files stdarg.h stddef.h.

Definition at line 524 of file mipi_syst.h.

◆ MIPI_SYST_PCFG_ENABLE_STRING_API

#define MIPI_SYST_PCFG_ENABLE_STRING_API

Enable plain UTF-8 string output APIs.

Definition at line 502 of file mipi_syst.h.

◆ MIPI_SYST_PCFG_ENABLE_WRITE_API

#define MIPI_SYST_PCFG_ENABLE_WRITE_API

Enable raw data output APIs

Definition at line 507 of file mipi_syst.h.

◆ MIPI_SYST_PCFG_PRINTF_ARGBUF_SIZE

#define MIPI_SYST_PCFG_PRINTF_ARGBUF_SIZE   1024

Maximum size of printf payload in bytes. Adjust this value if larger strings shall be supported by the library. The buffer space is located in stack memory when calling one of the printf style APIs.

Definition at line 532 of file mipi_syst.h.

Typedef Documentation

◆ MIPI_SYST_GUID

Definition at line 786 of file mipi_syst.h.

◆ MIPI_SYST_HANDLE

Definition at line 784 of file mipi_syst.h.

◆ MIPI_SYST_HANDLE_FLAGS

Definition at line 788 of file mipi_syst.h.

◆ MIPI_SYST_HEADER

Definition at line 783 of file mipi_syst.h.

◆ MIPI_SYST_MSG_TAG

Definition at line 787 of file mipi_syst.h.

◆ MIPI_SYST_SEVERITY

typedef enum mipi_syst_severity MIPI_SYST_SEVERITY

Definition at line 785 of file mipi_syst.h.

Enumeration Type Documentation

◆ mipi_syst_severity

Message severity level enumeration

Enumerator
MIPI_SYST_SEVERITY_MAX 

no assigned severity

MIPI_SYST_SEVERITY_FATAL 

critical error level

MIPI_SYST_SEVERITY_ERROR 

error message level

MIPI_SYST_SEVERITY_WARNING 

warning message level

MIPI_SYST_SEVERITY_INFO 

information message level

MIPI_SYST_SEVERITY_USER1 

user defined level 5

MIPI_SYST_SEVERITY_USER2 

user defined level 6

MIPI_SYST_SEVERITY_DEBUG 

debug information level

Definition at line 676 of file mipi_syst.h.

Variable Documentation

◆ b [1/2]

mipi_syst_u8 mipi_syst_guid::b[16]

Definition at line 186 of file mipi_syst.h.

◆  [2/2]

mipi_syst_u8 { ... } ::b[16]

Definition at line 186 of file mipi_syst.h.

◆ el_format

mipi_syst_u8 mipi_syst_msglocation::el_format

Message format 0 = 16-Bit file and 16-Bit line (total: 32-bit) 1 = 32-Bit file and 32-Bit line (total: 64-bit) 2 = 32-bit code address 3 = 64-bit code address

Definition at line 734 of file mipi_syst.h.

◆ et_chksum

mipi_syst_u32 mipi_syst_msg_tag::et_chksum

indicate 32-bit CRC

Definition at line 662 of file mipi_syst.h.

◆ et_guid

mipi_syst_u32 mipi_syst_msg_tag::et_guid

128-bit GUID present

Definition at line 665 of file mipi_syst.h.

◆ et_length

mipi_syst_u32 mipi_syst_msg_tag::et_length

indicate length field

Definition at line 661 of file mipi_syst.h.

◆ et_location

mipi_syst_u32 mipi_syst_msg_tag::et_location

indicate location information

Definition at line 660 of file mipi_syst.h.

◆ et_modunit

mipi_syst_u32 mipi_syst_msg_tag::et_modunit

unit for GUID or module:unit

Definition at line 664 of file mipi_syst.h.

◆ et_res30

mipi_syst_u32 mipi_syst_msg_tag::et_res30

reserved for future use

Definition at line 667 of file mipi_syst.h.

◆ et_res31

mipi_syst_u32 mipi_syst_msg_tag::et_res31

reserved for future use

Definition at line 668 of file mipi_syst.h.

◆ et_res7

mipi_syst_u32 mipi_syst_msg_tag::et_res7

reserved for future use

Definition at line 659 of file mipi_syst.h.

◆ et_severity

mipi_syst_u32 mipi_syst_msg_tag::et_severity

severity level of message

Definition at line 658 of file mipi_syst.h.

◆ et_subtype

mipi_syst_u32 mipi_syst_msg_tag::et_subtype

type dependent sub category

Definition at line 666 of file mipi_syst.h.

◆ et_timestamp

mipi_syst_u32 mipi_syst_msg_tag::et_timestamp

indicate 64-bit timestamp

Definition at line 663 of file mipi_syst.h.

◆ et_type

mipi_syst_u32 mipi_syst_msg_tag::et_type

SyS-T message type ID

Definition at line 657 of file mipi_syst.h.

◆ etls_code_location [1/2]

mipi_syst_u32 mipi_syst_msglocation32::etls_code_location

instruction pointer value

Definition at line 703 of file mipi_syst.h.

◆ etls_code_location [2/2]

mipi_syst_u64 mipi_syst_msglocation64::etls_code_location

instruction pointer value

Definition at line 721 of file mipi_syst.h.

◆  [1/4]

mipi_syst_u16 { ... } ::etls_fileID

ID of instrumented file

Definition at line 698 of file mipi_syst.h.

◆ etls_fileID [2/4]

mipi_syst_u16 mipi_syst_msglocation32::etls_fileID

ID of instrumented file

Definition at line 698 of file mipi_syst.h.

◆ etls_fileID [3/4]

mipi_syst_u32 mipi_syst_msglocation64::etls_fileID

ID of instrumented file

Definition at line 717 of file mipi_syst.h.

◆  [4/4]

mipi_syst_u32 { ... } ::etls_fileID

ID of instrumented file

Definition at line 717 of file mipi_syst.h.

◆ etls_lineNo [1/4]

mipi_syst_u16 mipi_syst_msglocation32::etls_lineNo

line number in file

Definition at line 699 of file mipi_syst.h.

◆  [2/4]

mipi_syst_u16 { ... } ::etls_lineNo

line number in file

Definition at line 699 of file mipi_syst.h.

◆ etls_lineNo [3/4]

mipi_syst_u32 mipi_syst_msglocation64::etls_lineNo

line number in file

Definition at line 718 of file mipi_syst.h.

◆  [4/4]

mipi_syst_u32 { ... } ::etls_lineNo

line number in file

Definition at line 718 of file mipi_syst.h.

◆ guid

struct mipi_syst_guid mipi_syst_origin::guid

origin GUID or module value

Definition at line 237 of file mipi_syst.h.

◆  [1/2]

mipi_syst_u64 { ... } ::ll[2]

Definition at line 187 of file mipi_syst.h.

◆ ll [2/2]

mipi_syst_u64 mipi_syst_guid::ll[2]

Definition at line 187 of file mipi_syst.h.

◆ loc32 [1/2]

union mipi_syst_msglocation32 mipi_syst_msglocation::loc32

data for 32-bit variant

Definition at line 736 of file mipi_syst.h.

◆  [2/2]

union mipi_syst_msglocation32 { ... } ::loc32

data for 32-bit variant

Definition at line 736 of file mipi_syst.h.

◆ loc64 [1/2]

union mipi_syst_msglocation64 mipi_syst_msglocation::loc64

data for 64-bit variant

Definition at line 737 of file mipi_syst.h.

◆  [2/2]

union mipi_syst_msglocation64 { ... } ::loc64

data for 64-bit variant

Definition at line 737 of file mipi_syst.h.

◆ shf_alloc

mipi_syst_u32 mipi_syst_handle_flags::shf_alloc

set to 1 if heap allocated handle

Definition at line 744 of file mipi_syst.h.

◆ systh_flags

struct mipi_syst_handle_flags mipi_syst_handle::systh_flags

handle state

Definition at line 755 of file mipi_syst.h.

◆ systh_guid

struct mipi_syst_guid mipi_syst_handle::systh_guid

module GUID

Definition at line 759 of file mipi_syst.h.

◆ systh_header

struct mipi_syst_header* mipi_syst_handle::systh_header

global state

Definition at line 754 of file mipi_syst.h.

◆ systh_inith

mipi_syst_inithandle_hook_t mipi_syst_header::systh_inith

handle init hook function

Definition at line 621 of file mipi_syst.h.

◆ systh_param

mipi_syst_u32 mipi_syst_handle::systh_param[6]

catalog msg parameters

Definition at line 767 of file mipi_syst.h.

◆ systh_param_count

mipi_syst_u32 mipi_syst_handle::systh_param_count

number of parameters

Definition at line 766 of file mipi_syst.h.

◆ systh_platform

struct mipi_syst_platform_handle mipi_syst_handle::systh_platform

platform specific state

Definition at line 770 of file mipi_syst.h.

◆ systh_releaseh

mipi_syst_releasehandle_hook_t mipi_syst_header::systh_releaseh

handle release hook

Definition at line 622 of file mipi_syst.h.

◆ systh_tag

struct mipi_syst_msg_tag mipi_syst_handle::systh_tag

tag flags

Definition at line 756 of file mipi_syst.h.

◆ systh_version

mipi_syst_u32 mipi_syst_header::systh_version

SyS-T version ID

Definition at line 618 of file mipi_syst.h.

◆ systh_writer

mipi_syst_msg_write_t mipi_syst_header::systh_writer

message output routine

Definition at line 626 of file mipi_syst.h.

◆ unit

mipi_syst_u16 mipi_syst_origin::unit

unit value

Definition at line 238 of file mipi_syst.h.