You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mynewt.apache.org by ma...@apache.org on 2015/11/19 01:12:18 UTC
[05/14] incubator-mynewt-larva git commit: console_vprintf(),
which is va_args version of console_printf(). Don't add newline
automatically at the end of output in console_printf().
console_vprintf(), which is va_args version of console_printf().
Don't add newline automatically at the end of output in
console_printf().
Project: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-larva/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-larva/commit/8ebf6cd0
Tree: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-larva/tree/8ebf6cd0
Diff: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-larva/diff/8ebf6cd0
Branch: refs/heads/master
Commit: 8ebf6cd0a572b3559661497b6c811fdb3a3ab91e
Parents: 339374f
Author: Marko Kiiskila <ma...@runtime.io>
Authored: Wed Nov 18 15:56:50 2015 -0800
Committer: Marko Kiiskila <ma...@runtime.io>
Committed: Wed Nov 18 15:56:50 2015 -0800
----------------------------------------------------------------------
libs/console/full/include/console/console.h | 5 +++-
libs/console/full/src/cons_fmt.c | 32 +++++++++++++-----------
libs/console/full/src/cons_tty.c | 2 +-
libs/console/stub/include/console/console.h | 13 ++++++++++
libs/os/src/arch/cortex_m4/os_fault.c | 14 +++++------
5 files changed, 43 insertions(+), 23 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-mynewt-larva/blob/8ebf6cd0/libs/console/full/include/console/console.h
----------------------------------------------------------------------
diff --git a/libs/console/full/include/console/console.h b/libs/console/full/include/console/console.h
index 92fbc72..b331d83 100644
--- a/libs/console/full/include/console/console.h
+++ b/libs/console/full/include/console/console.h
@@ -16,13 +16,16 @@
#ifndef __CONSOLE_H__
#define __CONSOLE_H__
+#include <stdarg.h>
+
typedef void (*console_rx_cb)(int full_line);
int console_init(console_rx_cb rx_cb);
-void console_write(char *str, int cnt);
+void console_write(const char *str, int cnt);
int console_read(char *str, int cnt);
void console_blocking_mode(void);
void console_printf(const char *fmt, ...);
+int console_vprintf(const char *fmt, va_list args);
#endif /* __CONSOLE_H__ */
http://git-wip-us.apache.org/repos/asf/incubator-mynewt-larva/blob/8ebf6cd0/libs/console/full/src/cons_fmt.c
----------------------------------------------------------------------
diff --git a/libs/console/full/src/cons_fmt.c b/libs/console/full/src/cons_fmt.c
index 48676a9..064018f 100644
--- a/libs/console/full/src/cons_fmt.c
+++ b/libs/console/full/src/cons_fmt.c
@@ -20,27 +20,31 @@
#define CONS_OUTPUT_MAX_LINE 128
-void console_printf(const char *fmt, ...)
+int
+console_vprintf(const char *fmt, va_list args)
{
- va_list args;
char buf[CONS_OUTPUT_MAX_LINE];
int len;
- len = snprintf(buf, sizeof(buf), "%lu:", (unsigned long)os_time_get());
- console_write(buf, len);
-
- va_start(args, fmt);
len = vsnprintf(buf, sizeof(buf), fmt, args);
- va_end(args);
-
if (len >= sizeof(buf)) {
len = sizeof(buf) - 1;
}
- if (buf[len - 1] != '\n') {
- if (len != sizeof(buf) - 1) {
- len++;
- }
- buf[len - 1] = '\n';
- }
console_write(buf, len);
+ return len;
+}
+
+void
+console_printf(const char *fmt, ...)
+{
+ va_list args;
+ char buf[24];
+ int len;
+
+ len = snprintf(buf, sizeof(buf), "%lu:", (unsigned long)os_time_get());
+ console_write(buf, len);
+
+ va_start(args, fmt);
+ len = console_vprintf(fmt, args);
+ va_end(args);
}
http://git-wip-us.apache.org/repos/asf/incubator-mynewt-larva/blob/8ebf6cd0/libs/console/full/src/cons_tty.c
----------------------------------------------------------------------
diff --git a/libs/console/full/src/cons_tty.c b/libs/console/full/src/cons_tty.c
index 8e24d8f..31be30f 100644
--- a/libs/console/full/src/cons_tty.c
+++ b/libs/console/full/src/cons_tty.c
@@ -115,7 +115,7 @@ console_blocking_mode(void)
}
void
-console_write(char *str, int cnt)
+console_write(const char *str, int cnt)
{
struct console_tty *ct = &console_tty;
int i;
http://git-wip-us.apache.org/repos/asf/incubator-mynewt-larva/blob/8ebf6cd0/libs/console/stub/include/console/console.h
----------------------------------------------------------------------
diff --git a/libs/console/stub/include/console/console.h b/libs/console/stub/include/console/console.h
index 5f04d8e..f3204c1 100644
--- a/libs/console/stub/include/console/console.h
+++ b/libs/console/stub/include/console/console.h
@@ -16,6 +16,8 @@
#ifndef __CONSOLE_H__
#define __CONSOLE_H__
+#include <stdarg.h>
+
typedef void (*console_rx_cb)(int full_line);
static int inline
@@ -36,9 +38,20 @@ console_blocking_mode(void)
}
static void inline
+console_write(const char *str, int cnt)
+{
+}
+
+static void inline
console_printf(const char *fmt, ...)
{
}
+static int inline
+console_vprintf(const char *fmt, va_list args)
+{
+ return 0;
+}
+
#endif /* __CONSOLE__ */
http://git-wip-us.apache.org/repos/asf/incubator-mynewt-larva/blob/8ebf6cd0/libs/os/src/arch/cortex_m4/os_fault.c
----------------------------------------------------------------------
diff --git a/libs/os/src/arch/cortex_m4/os_fault.c b/libs/os/src/arch/cortex_m4/os_fault.c
index b10760e..d31666b 100644
--- a/libs/os/src/arch/cortex_m4/os_fault.c
+++ b/libs/os/src/arch/cortex_m4/os_fault.c
@@ -68,18 +68,18 @@ void
os_default_irq(struct trap_frame *tf)
{
console_blocking_mode();
- console_printf("Unhandled interrupt (%d), exception sp %8.8x",
+ console_printf("Unhandled interrupt (%d), exception sp %8.8x\n",
SCB->ICSR & SCB_ICSR_VECTACTIVE_Msk, (uint32_t)tf->ef);
- console_printf(" r0:%8.8x r1:%8.8x r2:%8.8x r3:%8.8x",
+ console_printf(" r0:%8.8x r1:%8.8x r2:%8.8x r3:%8.8x\n",
tf->ef->r0, tf->ef->r1, tf->ef->r2, tf->ef->r3);
- console_printf(" r4:%8.8x r5:%8.8x r6:%8.8x r7:%8.8x",
+ console_printf(" r4:%8.8x r5:%8.8x r6:%8.8x r7:%8.8x\n",
tf->r4, tf->r5, tf->r6, tf->r7);
- console_printf(" r8:%8.8x r9:%8.8x r10:%8.8x r11:%8.8x",
+ console_printf(" r8:%8.8x r9:%8.8x r10:%8.8x r11:%8.8x\n",
tf->r8, tf->r9, tf->r10, tf->r11);
- console_printf("r12:%8.8x lr:%8.8x pc:%8.8x psr:%8.8x",
+ console_printf("r12:%8.8x lr:%8.8x pc:%8.8x psr:%8.8x\n",
tf->ef->r12, tf->ef->lr, tf->ef->pc, tf->ef->psr);
- console_printf("ICSR:%8.8x HFSR:%8.8x CFSR:%8.8x",
+ console_printf("ICSR:%8.8x HFSR:%8.8x CFSR:%8.8x\n",
SCB->ICSR, SCB->HFSR, SCB->CFSR);
- console_printf("BFAR:%8.8x MMFAR:%8.8x", SCB->BFAR, SCB->MMFAR);
+ console_printf("BFAR:%8.8x MMFAR:%8.8x\n", SCB->BFAR, SCB->MMFAR);
system_reset();
}