mirror of https://github.com/thesofproject/sof.git
Merge pull request #413 from tlauda/topic/host_trace_functions
host: arch: add new trace functions for host
This commit is contained in:
commit
e3238d6339
105
src/host/trace.c
105
src/host/trace.c
|
@ -143,7 +143,7 @@ static char *get_trace_class(uint32_t trace_class)
|
||||||
}
|
}
|
||||||
|
|
||||||
/* print trace event */
|
/* print trace event */
|
||||||
void _trace_event(uint32_t event)
|
void _trace_event0(uint32_t event)
|
||||||
{
|
{
|
||||||
char a, b, c;
|
char a, b, c;
|
||||||
char *trace_class = NULL;
|
char *trace_class = NULL;
|
||||||
|
@ -167,9 +167,108 @@ void _trace_event(uint32_t event)
|
||||||
free(trace_class);
|
free(trace_class);
|
||||||
}
|
}
|
||||||
|
|
||||||
void _trace_event_mbox_atomic(uint32_t event)
|
void _trace_event_mbox_atomic0(uint32_t event)
|
||||||
{
|
{
|
||||||
_trace_event(event);
|
_trace_event0(event);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* print trace event */
|
||||||
|
void _trace_event1(uint32_t event, uint32_t param)
|
||||||
|
{
|
||||||
|
char a, b, c;
|
||||||
|
char *trace_class = NULL;
|
||||||
|
|
||||||
|
if (test_bench_trace > 0) {
|
||||||
|
a = event & 0xff;
|
||||||
|
b = (event >> 8) & 0xff;
|
||||||
|
c = (event >> 16) & 0xff;
|
||||||
|
|
||||||
|
/* look up subsystem from trace class table */
|
||||||
|
trace_class = strdup(get_trace_class(event >> 24));
|
||||||
|
|
||||||
|
/* print trace event stderr*/
|
||||||
|
if (strcmp(trace_class, "value") == 0)
|
||||||
|
fprintf(stderr, "Trace value %d, param1 %d\n", event,
|
||||||
|
param);
|
||||||
|
else
|
||||||
|
fprintf(stderr, "Trace %s %c%c%c\n", trace_class,
|
||||||
|
c, b, a);
|
||||||
|
}
|
||||||
|
|
||||||
|
free(trace_class);
|
||||||
|
}
|
||||||
|
|
||||||
|
void _trace_event_mbox_atomic1(uint32_t event, uint32_t param)
|
||||||
|
{
|
||||||
|
_trace_event1(event, param);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* print trace event */
|
||||||
|
void _trace_event2(uint32_t event, uint32_t param1, uint32_t param2)
|
||||||
|
{
|
||||||
|
char a, b, c;
|
||||||
|
char *trace_class = NULL;
|
||||||
|
|
||||||
|
if (test_bench_trace > 0) {
|
||||||
|
a = event & 0xff;
|
||||||
|
b = (event >> 8) & 0xff;
|
||||||
|
c = (event >> 16) & 0xff;
|
||||||
|
|
||||||
|
/* look up subsystem from trace class table */
|
||||||
|
trace_class = strdup(get_trace_class(event >> 24));
|
||||||
|
|
||||||
|
/* print trace event stderr*/
|
||||||
|
if (strcmp(trace_class, "value") == 0)
|
||||||
|
fprintf(stderr,
|
||||||
|
"Trace value %d, param1 %d param2 %d\n",
|
||||||
|
event, param1, param2);
|
||||||
|
else
|
||||||
|
fprintf(stderr, "Trace %s %c%c%c\n", trace_class,
|
||||||
|
c, b, a);
|
||||||
|
}
|
||||||
|
|
||||||
|
free(trace_class);
|
||||||
|
}
|
||||||
|
|
||||||
|
void _trace_event_mbox_atomic2(uint32_t event, uint32_t param1,
|
||||||
|
uint32_t param2)
|
||||||
|
{
|
||||||
|
_trace_event2(event, param1, param2);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* print trace event */
|
||||||
|
void _trace_event3(uint32_t event, uint32_t param1, uint32_t param2,
|
||||||
|
uint32_t param3)
|
||||||
|
{
|
||||||
|
char a, b, c;
|
||||||
|
char *trace_class = NULL;
|
||||||
|
|
||||||
|
if (test_bench_trace > 0) {
|
||||||
|
a = event & 0xff;
|
||||||
|
b = (event >> 8) & 0xff;
|
||||||
|
c = (event >> 16) & 0xff;
|
||||||
|
|
||||||
|
/* look up subsystem from trace class table */
|
||||||
|
trace_class = strdup(get_trace_class(event >> 24));
|
||||||
|
|
||||||
|
/* print trace event stderr*/
|
||||||
|
if (strcmp(trace_class, "value") == 0)
|
||||||
|
fprintf
|
||||||
|
(stderr,
|
||||||
|
"Trace value %d, param1 %d param2 %d param3 %d\n",
|
||||||
|
event, param1, param2, param3);
|
||||||
|
else
|
||||||
|
fprintf(stderr, "Trace %s %c%c%c\n", trace_class,
|
||||||
|
c, b, a);
|
||||||
|
}
|
||||||
|
|
||||||
|
free(trace_class);
|
||||||
|
}
|
||||||
|
|
||||||
|
void _trace_event_mbox_atomic3(uint32_t event, uint32_t param1,
|
||||||
|
uint32_t param2, uint32_t param3)
|
||||||
|
{
|
||||||
|
_trace_event3(event, param1, param2, param3);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* enable trace in testbench */
|
/* enable trace in testbench */
|
||||||
|
|
Loading…
Reference in New Issue