diff options
author | Rob Austein <sra@hactrn.net> | 2017-04-15 16:35:41 -0400 |
---|---|---|
committer | Rob Austein <sra@hactrn.net> | 2017-04-15 16:35:41 -0400 |
commit | d0b87b7cc01270b3ed8a1e20a64482e1446f416b (patch) | |
tree | 289b5bba6f23194df5fa4593bb3b23434816ec23 /projects/hsm/hsm.c | |
parent | 108b532b9ae4c9138ad1a25e9ef437183711a05b (diff) |
Logging implementation for Alpha hardware.
Diffstat (limited to 'projects/hsm/hsm.c')
-rw-r--r-- | projects/hsm/hsm.c | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/projects/hsm/hsm.c b/projects/hsm/hsm.c index 60e35fc..5e9d06e 100644 --- a/projects/hsm/hsm.c +++ b/projects/hsm/hsm.c @@ -257,6 +257,31 @@ void hal_critical_section_end(void) } #endif +/* Logging */ + +static hal_log_level_t current_log_level; + +void hal_log_set_level(const hal_log_level_t level) +{ + current_log_level = level; +} + +void hal_log(const hal_log_level_t level, const char *format, ...) +{ + if (level < current_log_level) + return; + + char buffer[2048]; + va_list ap; + + va_start(ap, format); + vsnprintf(buffer, sizeof(buffer), format, ap); + va_end(ap); + + uart_send_string2(STM_UART_MGMT, buffer); + uart_send_string2(STM_UART_MGMT, "\r\n"); +} + /* The main thread. This does all the setup, and the worker threads handle * the rest. */ |