CtrlK
BlogDocsLog inGet started
Tessl Logo

testland/qemu-system-test-runner

Author and run QEMU system emulation as an embedded-test target - qemu-system-arm / qemu-system-aarch64 / qemu-system-riscv32 launching cross-compiled ELF binaries on virtual MCUs and SoCs. Covers machine selection (-M virt / mps2-an385 / mps2-an386 / mps2-an500 / mps2-an511 / mps3-an524 / lm3s6965evb / raspi3b / xilinx-zynq-a9), CPU selection (-cpu cortex-m0 / cortex-m3 / cortex-m4 / cortex-m33 / cortex-a15 / cortex-a57 / max), -kernel ELF load, -nographic + -serial stdio, ARM semihosting via -semihosting-config enable=on,target=native (so cross-compiled GoogleTest / Unity binaries print to host stdio and exit with the test return code), GDB stub via -S -gdb tcp::1234, QMP monitor via -qmp tcp:host:port for automated test orchestration, and CI wiring. Use when host-only test runs are insufficient and the team wants arch-correct (endianness / alignment / interrupt-vector) behaviour on a virtual MCU without committing to physical hardware-in-loop.

65

Quality

82%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

Passed

No findings from the security scan

Overview
Quality
Evals
Security
Files

flags.mdreferences/

QEMU invocation flags for embedded test runs

Per invocation.html:

FlagEffect
-M [type=]name[,prop=value,...]Select emulated machine; -machine help lists all
-cpu modelSelect CPU model; -cpu help lists models for the target
-smp [cpus=]n[,cores=...,...]SMP topology - for multi-core test targets
-m [size=]megs[,slots=n,maxmem=size]Guest RAM; M / G suffixes
-kernel fileKernel image loaded directly into guest memory - for embedded tests, this is the test ELF
-bios fileCustom BIOS / ROM image
-append "<string>"Kernel command-line arguments (Linux targets)
-nographicNo GUI; serial to console
-serial stdioRedirect serial port to host stdin / stdout
-monitor stdio / -monitor tcp:host:portQEMU human monitor
-qmp tcp:host:port[,server,nowait]QMP machine protocol over TCP - JSON-RPC

SKILL.md

tile.json