On 02/08/2018 02:09 PM, Thomas Huth wrote:
From: Wei Huang <w...@redhat.com>
This patch adds a small binary kernel to test aarch64 virt machine's
UART.
Signed-off-by: Wei Huang <w...@redhat.com>
[thuth: Fixed contextual conflict with the hppa patch]
Signed-off-by: Thomas Huth <th...@redhat.com>
---
tests/Makefile.include | 1 +
tests/boot-serial-test.c | 9 +++++++++
2 files changed, 10 insertions(+)
+++ 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) */
+};
Code like this reminds me of the 1984 IOCCC winner
(https://www.ioccc.org/1984/mullender/mullender.c) - there's just
something strangely satisfying about an array of integers being compiled
into executable code ;)
Reviewed-by: Eric Blake <ebl...@redhat.com>
--
Eric Blake, Principal Software Engineer
Red Hat, Inc. +1-919-301-3266
Virtualization: qemu.org | libvirt.org