Index: kernel/arch/mips32/src/mach/malta/malta.c
===================================================================
--- kernel/arch/mips32/src/mach/malta/malta.c	(revision a522999aad61600265fe2b376c2199fe82b465f9)
+++ kernel/arch/mips32/src/mach/malta/malta.c	(revision d5b9e8d0db718c208ae5e80f1ed56e9201df1a55)
@@ -35,4 +35,7 @@
 
 #include <arch/mach/malta/malta.h>
+#include <console/console.h>
+#include <console/chardev.h>
+#include <arch/mm/page.h>
 
 static void malta_init(void);
@@ -70,6 +73,30 @@
 }
 
+#define YAMON_SUBR_BASE         PA2KA(0x1fc00500)
+#define YAMON_SUBR_PRINT_COUNT  (YAMON_SUBR_BASE + 0x4)
+
+typedef void (**yamon_print_count_ptr_t)(uint32_t, const char *, uint32_t);
+
+yamon_print_count_ptr_t yamon_print_count =
+    (yamon_print_count_ptr_t) YAMON_SUBR_PRINT_COUNT;
+
+static void yamon_putchar(outdev_t *dev, const wchar_t wch)
+{
+
+        const char ch = (char) wch;
+
+        (*yamon_print_count)(0, &ch, 1);
+}
+
+static outdev_t yamon_outdev;
+static outdev_operations_t yamon_outdev_ops = {
+	.write = yamon_putchar,
+	.redraw = NULL
+};
+
 void malta_output_init(void)
 {
+	outdev_initialize("yamon", &yamon_outdev, &yamon_outdev_ops);
+	stdout_wire(&yamon_outdev);
 }
 
