diff options
| author | Ian Moffett <ian@osmora.org> | 2025-12-21 19:19:56 -0500 |
|---|---|---|
| committer | Ian Moffett <ian@osmora.org> | 2025-12-21 19:19:56 -0500 |
| commit | 0874e73bfb52bb20c5df3452532658b3ccaf45bb (patch) | |
| tree | 861a5937f593cd833163b3f18515e1a87e9fa768 | |
| parent | 21cc24baa135c1a2b882ba67c1e0b2cf9e64edfc (diff) | |
mos: kern: Add formatted trace helpers
Signed-off-by: Ian Moffett <ian@osmora.org>
| -rw-r--r-- | mos/sys/inc/kern/trace.h | 11 | ||||
| -rw-r--r-- | mos/sys/kern/kern_trace.c | 12 |
2 files changed, 23 insertions, 0 deletions
diff --git a/mos/sys/inc/kern/trace.h b/mos/sys/inc/kern/trace.h index 820478e..bf60380 100644 --- a/mos/sys/inc/kern/trace.h +++ b/mos/sys/inc/kern/trace.h @@ -6,6 +6,8 @@ #ifndef _KERN_TRACE_H_ #define _KERN_TRACE_H_ +#define TRACE_BUF_LEN 256 + /* * Write a raw null terminated string to the system * trace logs @@ -14,4 +16,13 @@ */ void trace_raw(const char *str); +/* + * Write a formatted string to the system trace + * logs + * + * @fmt: Format string + * @<...>: Args + */ +void trace(const char *fmt, ...); + #endif /* !_KERN_TRACE_H_ */ diff --git a/mos/sys/kern/kern_trace.c b/mos/sys/kern/kern_trace.c index 65f32a6..ee4f6c7 100644 --- a/mos/sys/kern/kern_trace.c +++ b/mos/sys/kern/kern_trace.c @@ -20,3 +20,15 @@ trace_raw(const char *str) len = strlen(str); mu_uart_writed(str, len); } + +void +trace(const char *fmt, ...) +{ + char buf[TRACE_BUF_LEN]; + va_list ap; + + va_start(ap, fmt); + vsnprintf(buf, sizeof(buf), fmt, ap); + trace_raw(buf); + va_end(ap); +} |
