tracing: Add user-definable tracing interface

Create a new tracing option TRACING_USER that allows
the user to define certain user_sys_trace_... functions
to perform whatever work desired for tracing when
tasks are swiched in/out, during isr enter/exit, and when
cpu is idle.

This infrastructure can be useful for plugging into
locally defined tracing tools or any user-specific
debugging environment.

Signed-off-by: Nicholas Lowell <nlowell@lexmark.com>
This commit is contained in:
Nicholas Lowell 2020-09-01 10:12:09 -04:00 committed by Christopher Friedt
commit cc8ab95760
7 changed files with 406 additions and 1 deletions

View file

@ -40,7 +40,8 @@ zephyr_sources_ifdef(
endif()
if(NOT CONFIG_PERCEPIO_TRACERECORDER AND NOT CONFIG_TRACING_CTF
AND NOT CONFIG_SEGGER_SYSTEMVIEW AND NOT CONFIG_TRACING_TEST)
AND NOT CONFIG_SEGGER_SYSTEMVIEW AND NOT CONFIG_TRACING_TEST
AND NOT CONFIG_TRACING_USER)
zephyr_sources(tracing_none.c)
endif()
@ -55,3 +56,4 @@ zephyr_include_directories_ifdef(CONFIG_TRACING include)
add_subdirectory_ifdef(CONFIG_TRACING_CTF ctf)
add_subdirectory_ifdef(CONFIG_SEGGER_SYSTEMVIEW sysview)
add_subdirectory_ifdef(CONFIG_TRACING_TEST test)
add_subdirectory_ifdef(CONFIG_TRACING_USER user)