Xtensa Emulation (QEMU)

Overview

The QEMU board configuration is used to emulate the Xtensa architecture. This board configuration provides support for the Xtensa simulation environment.

Qemu

Qemu (Credit: qemu.org)

Programming and Debugging

Use this configuration to run basic Zephyr applications and kernel tests in the QEMU emulated environment, for example, with the Synchronization Sample:

# From the root of the zephyr repository
west build -b qemu_xtensa samples/synchronization
west build -t run

This will build an image with the synchronization sample app, boot it using QEMU, and display the following console output:

***** BOOTING ZEPHYR OS v1.8.99 - BUILD: Jun 27 2017 13:09:26 *****
threadA: Hello World from xtensa!
threadB: Hello World from xtensa!
threadA: Hello World from xtensa!
threadB: Hello World from xtensa!
threadA: Hello World from xtensa!
threadB: Hello World from xtensa!
threadA: Hello World from xtensa!
threadB: Hello World from xtensa!
threadA: Hello World from xtensa!
threadB: Hello World from xtensa!

Exit QEMU by pressing CTRL+A x.

Debugging

Refer to the detailed overview about Custom Board, Devicetree and SOC Definitions.