summaryrefslogtreecommitdiffstats
path: root/fs/pstore/platform.c
diff options
context:
space:
mode:
Diffstat (limited to 'fs/pstore/platform.c')
-rw-r--r--fs/pstore/platform.c34
1 files changed, 4 insertions, 30 deletions
diff --git a/fs/pstore/platform.c b/fs/pstore/platform.c
index 15c0174b1f..50a1bffdd0 100644
--- a/fs/pstore/platform.c
+++ b/fs/pstore/platform.c
@@ -27,7 +27,7 @@
#include <linux/mutex.h>
#include <console.h>
#include <malloc.h>
-#include <printk.h>
+#include <linux/printk.h>
#include <module.h>
#include "internal.h"
@@ -46,35 +46,6 @@ void pstore_set_kmsg_bytes(int bytes)
static int pstore_ready;
-static void pstore_console_write(const char *s, unsigned c)
-{
- const char *e = s + c;
-
- while (s < e) {
- struct pstore_record record = {
- .type = PSTORE_TYPE_CONSOLE,
- .psi = psinfo,
- };
-
- if (c > psinfo->bufsize)
- c = psinfo->bufsize;
-
- record.buf = (char *)s;
- record.size = c;
- psinfo->write_buf(PSTORE_TYPE_CONSOLE, 0, &record.id, 0,
- record.buf, 0, record.size, psinfo);
- s += c;
- c = e - s;
- }
-}
-
-static int pstore_console_puts(struct console_device *cdev, const char *s,
- size_t nbytes)
-{
- pstore_console_write(s, nbytes);
- return nbytes;
-}
-
void pstore_log(const char *str)
{
uint64_t id;
@@ -102,6 +73,9 @@ static void pstore_console_capture_log(void)
uint64_t id;
struct log_entry *log, *tmp;
+ if (IS_ENABLED(CONFIG_CONSOLE_NONE))
+ return;
+
list_for_each_entry_safe(log, tmp, &barebox_logbuf, list) {
psinfo->write_buf(PSTORE_TYPE_CONSOLE, 0, &id, 0,
log->msg, 0, strlen(log->msg), psinfo);