summaryrefslogtreecommitdiff
path: root/kernel/printk.c
diff options
context:
space:
mode:
authorPhilippe Langlais <philippe.langlais@stericsson.com>2012-04-06 11:11:20 +0200
committerPhilippe Langlais <philippe.langlais@stericsson.com>2012-04-06 11:11:20 +0200
commit36cee0c070a631eb744aff33916dba0d8c92d3d6 (patch)
tree707bca58e7bf89a8f1883a8726f0c8c08ec9da11 /kernel/printk.c
parent609cbf05e36abcc92b1e60749b8dd0dc420144fa (diff)
parente2673ac489a6fd2f8c4016b1a617f708efb21cc2 (diff)
Merge topic branch 'trace-debug' into integration-linux-ux500-3.3
Diffstat (limited to 'kernel/printk.c')
-rw-r--r--kernel/printk.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/kernel/printk.c b/kernel/printk.c
index 32690a0b7a1..7137480b21f 100644
--- a/kernel/printk.c
+++ b/kernel/printk.c
@@ -41,6 +41,7 @@
#include <linux/cpu.h>
#include <linux/notifier.h>
#include <linux/rculist.h>
+#include <trace/stm.h>
#include <asm/uaccess.h>
@@ -53,6 +54,10 @@ void asmlinkage __attribute__((weak)) early_printk(const char *fmt, ...)
#define __LOG_BUF_LEN (1 << CONFIG_LOG_BUF_SHIFT)
+#ifdef CONFIG_PRINTK_LL
+extern void printascii(char *);
+#endif
+
/* printk's without a loglevel use this.. */
#define DEFAULT_MESSAGE_LOGLEVEL CONFIG_DEFAULT_MESSAGE_LOGLEVEL
@@ -879,6 +884,10 @@ asmlinkage int vprintk(const char *fmt, va_list args)
printed_len += vscnprintf(printk_buf + printed_len,
sizeof(printk_buf) - printed_len, fmt, args);
+#ifdef CONFIG_PRINTK_LL
+ printascii(printk_buf);
+#endif
+
p = printk_buf;
/* Read log level and handle special printk prefix */
@@ -900,6 +909,9 @@ asmlinkage int vprintk(const char *fmt, va_list args)
}
}
+ /* Send printk buffer to MIPI STM trace hardware too if enable */
+ stm_dup_printk(printk_buf, printed_len);
+
/*
* Copy the output into log_buf. If the caller didn't provide
* the appropriate log prefix, we insert them here