From ec2e988fce1b262b802ef7285981629a8417cd8c Mon Sep 17 00:00:00 2001 From: Wei Huang Date: Thu, 1 Feb 2018 12:28:09 -0500 Subject: tests/boot-serial-test: Add support for the aarch64 virt machine This patch adds a small binary kernel to test aarch64 virt machine's UART. Signed-off-by: Wei Huang Reviewed-by: Eric Blake [thuth: Fixed contextual conflicts with the hppa and sdhci patches] Signed-off-by: Thomas Huth --- tests/Makefile.include | 1 + tests/boot-serial-test.c | 9 +++++++++ 2 files changed, 10 insertions(+) (limited to 'tests') diff --git a/tests/Makefile.include b/tests/Makefile.include index 8b304ead80..566d30a7b7 100644 --- a/tests/Makefile.include +++ b/tests/Makefile.include @@ -374,6 +374,7 @@ check-qtest-arm-y += tests/sdhci-test$(EXESUF) check-qtest-aarch64-y = tests/numa-test$(EXESUF) check-qtest-aarch64-y += tests/sdhci-test$(EXESUF) +check-qtest-aarch64-y += tests/boot-serial-test$(EXESUF) check-qtest-microblazeel-y = $(check-qtest-microblaze-y) diff --git a/tests/boot-serial-test.c b/tests/boot-serial-test.c index 72873eea92..511bf314a3 100644 --- a/tests/boot-serial-test.c +++ b/tests/boot-serial-test.c @@ -55,6 +55,13 @@ static const uint8_t bios_raspi2[] = { 0x00, 0x10, 0x20, 0x3f, /* 0x3f201000 = UART0 base addr */ }; +static const uint8_t kernel_aarch64[] = { + 0x81, 0x0a, 0x80, 0x52, /* mov w1, #0x54 */ + 0x02, 0x20, 0xa1, 0xd2, /* mov x2, #0x9000000 */ + 0x41, 0x00, 0x00, 0x39, /* strb w1, [x2] */ + 0xfd, 0xff, 0xff, 0x17, /* b -12 (loop) */ +}; + typedef struct testdef { const char *arch; /* Target architecture */ const char *machine; /* Name of the machine */ @@ -95,6 +102,8 @@ static testdef_t tests[] = { { "moxie", "moxiesim", "", "TT", sizeof(bios_moxiesim), 0, bios_moxiesim }, { "arm", "raspi2", "", "TT", sizeof(bios_raspi2), 0, bios_raspi2 }, { "hppa", "hppa", "", "SeaBIOS wants SYSTEM HALT" }, + { "aarch64", "virt", "-cpu cortex-a57", "TT", sizeof(kernel_aarch64), + kernel_aarch64 }, { NULL } }; -- cgit v1.2.3