1MIPI SyS-T Instrumentation Library {#mipi_syst_mainpage} 2============================================================================== 3 4About the SyS-T instrumentation library 5============================================================================== 6The MIPI System Software Trace (SyS-T) library is a customizable, low 7overhead example implementation of the SyS-T API and data protocol described 8here: 9https://www.mipi.org/specifications/sys-t 10 11The library is written as a self-contained C-language module and does not 12depend on other runtime library or system include files. The SyS-T library is 13usable in very different software environments, including OS user mode code, OS 14kernel mode code, or controller firmware. 15 16This library provides the SyS-T instrumentation API to other software 17components. The SyS-T API calls generate the @ref mipi_syst_decoder_protocol 18and typically write it to a trace aggregator for bundling the data with other 19trace sources. The SyS-T API offers advanced trace capabilities, such as: 20 21* String formatting in C-language printf style 22* Catalog messages to save data size and trace I/O bandwidth 23* Tunnelling of other data protocols 24* Hardware and Software provided message time stamping and synchronisation 25 26The following picture shows the library execution flow left to 27right. The SyS-T API is a set of preprocessor macros that are calling library 28functions for generating trace messages based on the API input parameters. 29These parameters are encoded into an internal format and written out by 30platform specific code to the systems trace transport layer. 31 32 33 34 35Documentation for using SyS-T to instrument software 36============================================================================== 37 - [Instrumentation API Overview](@ref mipi_syst_api_overview) 38 - [API Quick Reference](@ref mipi_syst_api_page) 39 - [API Sets](@ref ApiSets) 40 41Click here for a minimal "Hello World" style example of 42a SyS-T instrumented application: @ref mipi_syst_example_page 43 44 45Documentation for building and integrating SyS-T 46============================================================================== 47- [Building the SyS-T Library](@ref mipi_syst_building_page) 48- [Adapting the SyS-T Library](@ref mipi_syst_adapting_page) 49- [Automated Collateral Generation](@ref mipi_syst_catgen_page) 50- [Decoding and printing the SyS-T data protocol] (@ref mipi_syst_printer_page) 51 52 53SyS-T License 54============================================================================== 55The SyS-T library code is Copyright (c) MIPI Alliance, Inc. and distributed 56under a permissive open source license. The detailed license information can 57be found [here](@ref mipi_syst_license_page). 58