Skip to content

Commit 36838e5

Browse files
michaelrolnikphilmd
authored andcommitted
tests/boot-serial: Test some Arduino boards (AVR based)
Print out 'T' through serial port. The Arduino Duemilanove is based on a AVR5 CPU, while the Arduino MEGA2560 on a AVR6 CPU. Signed-off-by: Michael Rolnik <[email protected]> Signed-off-by: Philippe Mathieu-Daudé <[email protected]> [rth: Squash Arduino adjustments from f4bug] Tested-by: Richard Henderson <[email protected]> Signed-off-by: Richard Henderson <[email protected]> Signed-off-by: Aleksandar Markovic <[email protected]> Acked-by: Thomas Huth <[email protected]> Tested-by: Philippe Mathieu-Daudé <[email protected]> Reviewed-by: Philippe Mathieu-Daudé <[email protected]> Signed-off-by: Thomas Huth <[email protected]> Message-Id: <[email protected]>
1 parent 50486d6 commit 36838e5

File tree

2 files changed

+13
-0
lines changed

2 files changed

+13
-0
lines changed

tests/qtest/Makefile.include

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,8 @@ check-qtest-i386-y += numa-test
6666

6767
check-qtest-x86_64-y += $(check-qtest-i386-y)
6868

69+
check-qtest-avr-y += boot-serial-test
70+
6971
check-qtest-alpha-y += boot-serial-test
7072
check-qtest-alpha-$(CONFIG_VGA) += display-vga-test
7173

tests/qtest/boot-serial-test.c

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,15 @@
1717
#include "libqtest.h"
1818
#include "libqos/libqos-spapr.h"
1919

20+
static const uint8_t bios_avr[] = {
21+
0x88, 0xe0, /* ldi r24, 0x08 */
22+
0x80, 0x93, 0xc1, 0x00, /* sts 0x00C1, r24 ; Enable tx */
23+
0x86, 0xe0, /* ldi r24, 0x06 */
24+
0x80, 0x93, 0xc2, 0x00, /* sts 0x00C2, r24 ; Set the data bits to 8 */
25+
0x84, 0xe5, /* ldi r24, 0x54 */
26+
0x80, 0x93, 0xc6, 0x00, /* sts 0x00C6, r24 ; Output 'T' */
27+
};
28+
2029
static const uint8_t kernel_mcf5208[] = {
2130
0x41, 0xf9, 0xfc, 0x06, 0x00, 0x00, /* lea 0xfc060000,%a0 */
2231
0x10, 0x3c, 0x00, 0x54, /* move.b #'T',%d0 */
@@ -104,6 +113,8 @@ typedef struct testdef {
104113

105114
static testdef_t tests[] = {
106115
{ "alpha", "clipper", "", "PCI:" },
116+
{ "avr", "arduino-duemilanove", "", "T", sizeof(bios_avr), NULL, bios_avr },
117+
{ "avr", "arduino-mega-2560-v3", "", "T", sizeof(bios_avr), NULL, bios_avr},
107118
{ "ppc", "ppce500", "", "U-Boot" },
108119
{ "ppc", "40p", "-vga none -boot d", "Trying cd:," },
109120
{ "ppc", "g3beige", "", "PowerPC,750" },

0 commit comments

Comments
 (0)