qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: "Philippe Mathieu-Daudé" <philmd@linaro.org>
To: qemu-devel@nongnu.org
Cc: "Thomas Huth" <thuth@redhat.com>,
	"Mark Cave-Ayland" <mark.caveayland@nutanix.com>,
	"Philippe Mathieu-Daudé" <philmd@linaro.org>
Subject: [PULL 12/24] tests/functional: Add a test for the Arduino UNO machine
Date: Tue, 10 Jun 2025 14:56:21 +0200	[thread overview]
Message-ID: <20250610125633.24411-13-philmd@linaro.org> (raw)
In-Reply-To: <20250610125633.24411-1-philmd@linaro.org>

From: Thomas Huth <thuth@redhat.com>

Check whether we can run a kernel that prints something to the
serial console.

Signed-off-by: Thomas Huth <thuth@redhat.com>
Reviewed-by: Mark Cave-Ayland <mark.caveayland@nutanix.com>
Message-ID: <20250603184007.24521-1-thuth@redhat.com>
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
---
 MAINTAINERS                      |  3 ++-
 tests/functional/meson.build     |  1 +
 tests/functional/test_avr_uno.py | 32 ++++++++++++++++++++++++++++++++
 3 files changed, 35 insertions(+), 1 deletion(-)
 create mode 100755 tests/functional/test_avr_uno.py

diff --git a/MAINTAINERS b/MAINTAINERS
index 76399ad1e0e..a6f210dba5a 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -219,7 +219,7 @@ S: Maintained
 F: docs/system/target-avr.rst
 F: gdb-xml/avr-cpu.xml
 F: target/avr/
-F: tests/functional/test_avr_mega2560.py
+F: tests/functional/test_avr_*.py
 
 Hexagon TCG CPUs
 M: Brian Cain <brian.cain@oss.qualcomm.com>
@@ -1236,6 +1236,7 @@ Arduino
 M: Philippe Mathieu-Daudé <philmd@linaro.org>
 S: Maintained
 F: hw/avr/arduino.c
+F: tests/functional/test_avr_uno.py
 
 HP-PARISC Machines
 ------------------
diff --git a/tests/functional/meson.build b/tests/functional/meson.build
index 557d59ddf4d..e406451cd3c 100644
--- a/tests/functional/meson.build
+++ b/tests/functional/meson.build
@@ -150,6 +150,7 @@ tests_arm_linuxuser_thorough = [
 
 tests_avr_system_thorough = [
   'avr_mega2560',
+  'avr_uno',
 ]
 
 tests_hppa_system_quick = [
diff --git a/tests/functional/test_avr_uno.py b/tests/functional/test_avr_uno.py
new file mode 100755
index 00000000000..adb3b73da4f
--- /dev/null
+++ b/tests/functional/test_avr_uno.py
@@ -0,0 +1,32 @@
+#!/usr/bin/env python3
+#
+# QEMU AVR Arduino UNO functional test
+#
+# SPDX-License-Identifier: GPL-2.0-or-later
+
+from qemu_test import QemuSystemTest, Asset, wait_for_console_pattern
+
+
+class UnoMachine(QemuSystemTest):
+
+    ASSET_UNO = Asset(
+        ('https://github.com/RahulRNandan/LED_Blink_AVR/raw/'
+         'c6d602cbb974a193/build/main.elf'),
+        '3009a4e2cf5c5b65142f538abdf66d4dc6bc6beab7e552fff9ae314583761b72')
+
+    def test_uno(self):
+        """
+        The binary constantly prints out 'LED Blink'
+        """
+        self.set_machine('arduino-uno')
+        rom_path = self.ASSET_UNO.fetch()
+
+        self.vm.add_args('-bios', rom_path)
+        self.vm.set_console()
+        self.vm.launch()
+
+        wait_for_console_pattern(self, 'LED Blink')
+
+
+if __name__ == '__main__':
+    QemuSystemTest.main()
-- 
2.49.0



  parent reply	other threads:[~2025-06-10 13:07 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-06-10 12:56 [PULL 00/24] Misc HW patches for 2025-06-10 Philippe Mathieu-Daudé
2025-06-10 12:56 ` [PULL 01/24] hw/char/sh_serial: Delete fifo_timeout_timer in DeviceUnrealize Philippe Mathieu-Daudé
2025-06-10 12:56 ` [PULL 02/24] hw/char/sh_serial: Convert to TypeInfo Philippe Mathieu-Daudé
2025-06-10 12:56 ` [PULL 03/24] hw/pci-host/raven: Remove is-legacy-prep property Philippe Mathieu-Daudé
2025-06-10 12:56 ` [PULL 04/24] hw/pci-host/raven: Revert "raven: Move BIOS loading from board code to PCI host" Philippe Mathieu-Daudé
2025-06-10 12:56 ` [PULL 05/24] hw/core/resetcontainer: Consolidate OBJECT_DECLARE_SIMPLE_TYPE Philippe Mathieu-Daudé
2025-06-10 12:56 ` [PULL 06/24] hw/hyperv/balloon: Consolidate OBJECT_DEFINE_SIMPLE_TYPE_WITH_INTERFACES Philippe Mathieu-Daudé
2025-06-10 12:56 ` [PULL 07/24] hw/ppc/e500: Move clock and TB frequency to machine class Philippe Mathieu-Daudé
2025-06-10 12:56 ` [PULL 08/24] hw/net/fsl_etsec: Set default MAC address Philippe Mathieu-Daudé
2025-06-10 12:56 ` [PULL 09/24] hw/ppc/e500: Use SysBusDevice API to access TYPE_CCSR's internal resources Philippe Mathieu-Daudé
2025-06-10 12:56 ` [PULL 10/24] pc-bios: ensure installed ROMs don't have execute permissions Philippe Mathieu-Daudé
2025-06-10 12:56 ` [PULL 11/24] MAINTAINERS: Update Akihiko Odaki's affiliation Philippe Mathieu-Daudé
2025-06-10 12:56 ` Philippe Mathieu-Daudé [this message]
2025-06-10 12:56 ` [PULL 13/24] accel/hvf: Fix TYPE_HVF_ACCEL instance size Philippe Mathieu-Daudé
2025-06-10 12:56 ` [PULL 14/24] hw/core/cpu: Move CacheType to general cpu.h Philippe Mathieu-Daudé
2025-06-10 12:56 ` [PULL 15/24] hw/gpio/pca9552: Avoid using g_newa() Philippe Mathieu-Daudé
2025-06-10 12:56 ` [PULL 16/24] backends/tpm: Avoid using g_alloca() Philippe Mathieu-Daudé
2025-06-10 12:56 ` [PULL 17/24] tests/unit/test-char: " Philippe Mathieu-Daudé
2025-06-10 12:56 ` [PULL 18/24] hw/virtio/virtio-mem: Fix definition of VirtIOMEMClass Philippe Mathieu-Daudé
2025-06-10 12:56 ` [PULL 19/24] hw/virtio/virtio-pmem: Fix definition of VirtIOPMEMClass Philippe Mathieu-Daudé
2025-06-10 12:56 ` [PULL 20/24] hw/gpio/aspeed: Fix definition of AspeedGPIOClass Philippe Mathieu-Daudé
2025-06-10 12:56 ` [PULL 21/24] hw/riscv/riscv-iommu: Remove definition of RISCVIOMMU[Pci|Sys]Class Philippe Mathieu-Daudé
2025-06-10 12:56 ` [PULL 22/24] hw/misc/stm32_rcc: Fix stm32_rcc_write() arguments order Philippe Mathieu-Daudé
2025-07-01 10:31   ` Philippe Mathieu-Daudé
2025-06-10 12:56 ` [PULL 23/24] hw/net/i82596: Update datasheet URL Philippe Mathieu-Daudé
2025-06-10 12:56 ` [PULL 24/24] hw/net/i82596: Factor configure function out Philippe Mathieu-Daudé
2025-06-11 18:22 ` [PULL 00/24] Misc HW patches for 2025-06-10 Stefan Hajnoczi

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20250610125633.24411-13-philmd@linaro.org \
    --to=philmd@linaro.org \
    --cc=mark.caveayland@nutanix.com \
    --cc=qemu-devel@nongnu.org \
    --cc=thuth@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).