ramoops: add support the ramoops driver
authorMinkyu Kang <mk7.kang@samsung.com>
Fri, 29 Oct 2010 08:13:51 +0000 (17:13 +0900)
committerMinkyu Kang <mk7.kang@samsung.com>
Fri, 29 Oct 2010 08:13:51 +0000 (17:13 +0900)
Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
drivers/misc/ramoops.c [new file with mode: 0644]
include/ramoops.h [new file with mode: 0644]

diff --git a/drivers/misc/ramoops.c b/drivers/misc/ramoops.c
new file mode 100644 (file)
index 0000000..dda3860
--- /dev/null
@@ -0,0 +1,28 @@
+/*
+ * (C) Copyright 2010 Samsung Electronics
+ * Minkyu Kang <mk7.kang@samsung.com>
+ */
+#include <common.h>
+#include <ramoops.h>
+
+int ramoops_show_msg(unsigned int base)
+{
+       unsigned int *msg_header = (unsigned int *)base;
+       char msg[RAMOOPS_SIZE];
+       int i;
+
+       if (*msg_header != RAMOOPS_HEADER)
+               return -1;
+
+       memcpy(msg, (void *)base, RAMOOPS_SIZE);
+
+       printf("\n\n");
+       for (i = 0; i < RAMOOPS_SIZE; i++) {
+               printf("%c", msg[i]);
+       }
+       printf("\n\n");
+
+       memset((void *)base, 0x0, RAMOOPS_SIZE);
+
+       return 0;
+}
diff --git a/include/ramoops.h b/include/ramoops.h
new file mode 100644 (file)
index 0000000..77aa2ea
--- /dev/null
@@ -0,0 +1,9 @@
+/*
+ * (C) Copyright 2010 Samsung Electronics
+ * Minkyu Kang <mk7.kang@samsung.com>
+ */
+
+#define RAMOOPS_SIZE   0x1000
+#define RAMOOPS_HEADER 0x3d3d3d3d
+
+int ramoops_show_msg(unsigned int base);