aboutsummaryrefslogtreecommitdiff
path: root/tests/boot-serial-test.c
diff options
context:
space:
mode:
authorThomas Huth <thuth@redhat.com>2017-11-30 09:53:04 +0100
committerLaurent Vivier <laurent@vivier.eu>2017-12-21 20:13:18 +0100
commit598a29f3606c4c7042a1ca3f1116663d0a60867c (patch)
tree1b6ade8faa2d5910734a9e7ee3d38b870a08a3db /tests/boot-serial-test.c
parent7deddf96e94f3e1eb3677db0ea7b53e61751b544 (diff)
tests/boot-serial-test: Add support for the mcf5208evb board
We can output a character quite easily here with some few lines of assembly that we provide as a mini-kernel for this board. Signed-off-by: Thomas Huth <thuth@redhat.com> Message-Id: <1512031988-32490-4-git-send-email-thuth@redhat.com> [lv: add boot-serial-test in check-qtest-m68k] Signed-off-by: Laurent Vivier <laurent@vivier.eu>
Diffstat (limited to 'tests/boot-serial-test.c')
-rw-r--r--tests/boot-serial-test.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/tests/boot-serial-test.c b/tests/boot-serial-test.c
index d99726919e..dd3828c49b 100644
--- a/tests/boot-serial-test.c
+++ b/tests/boot-serial-test.c
@@ -16,6 +16,14 @@
#include "qemu/osdep.h"
#include "libqtest.h"
+static const uint8_t kernel_mcf5208[] = {
+ 0x41, 0xf9, 0xfc, 0x06, 0x00, 0x00, /* lea 0xfc060000,%a0 */
+ 0x10, 0x3c, 0x00, 0x54, /* move.b #'T',%d0 */
+ 0x11, 0x7c, 0x00, 0x04, 0x00, 0x08, /* move.b #4,8(%a0) Enable TX */
+ 0x11, 0x40, 0x00, 0x0c, /* move.b %d0,12(%a0) Print 'T' */
+ 0x60, 0xfa /* bra.s loop */
+};
+
typedef struct testdef {
const char *arch; /* Target architecture */
const char *machine; /* Name of the machine */
@@ -41,6 +49,8 @@ static testdef_t tests[] = {
{ "x86_64", "q35", "-device sga", "SGABIOS" },
{ "s390x", "s390-ccw-virtio",
"-nodefaults -device sclpconsole,chardev=serial0", "virtio device" },
+ { "m68k", "mcf5208evb", "", "TT", sizeof(kernel_mcf5208), kernel_mcf5208 },
+
{ NULL }
};