While trying out the hello_world sample built for QEMU, I was expecting the sample app to exit and I'd return to a command prompt. Nope. You need to exit QEMU manually, so add that step to the sample instructions. Looking around, there are more uses of QEMU like this that could use this added step after running the sample app. Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
61 lines
1.6 KiB
ReStructuredText
61 lines
1.6 KiB
ReStructuredText
.. _qemu_riscv32:
|
|
|
|
RISCV32 Emulation (QEMU)
|
|
########################
|
|
|
|
Overview
|
|
********
|
|
|
|
The RISCV32 QEMU board configuration is used to emulate the RISCV32 architecture.
|
|
|
|
.. figure:: qemu_riscv32.png
|
|
:width: 600px
|
|
:align: center
|
|
:alt: Qemu
|
|
|
|
Qemu (Credit: qemu.org)
|
|
|
|
Programming and Debugging
|
|
*************************
|
|
|
|
Applications for the ``qemu_riscv32`` board configuration can be built and run in
|
|
the usual way for emulated boards (see :ref:`build_an_application` and
|
|
:ref:`application_run` for more details).
|
|
|
|
Flashing
|
|
========
|
|
|
|
While this board is emulated and you can't "flash" it, you can use this
|
|
configuration to run basic Zephyr applications and kernel tests in the QEMU
|
|
emulated environment. For example, with the :ref:`synchronization_sample`:
|
|
|
|
.. zephyr-app-commands::
|
|
:zephyr-app: samples/synchronization
|
|
:host-os: unix
|
|
:board: qemu_riscv32
|
|
:goals: run
|
|
|
|
This will build an image with the synchronization sample app, boot it using
|
|
QEMU, and display the following console output:
|
|
|
|
.. code-block:: console
|
|
|
|
***** BOOTING ZEPHYR OS v1.8.99 - BUILD: Jun 27 2017 13:09:26 *****
|
|
threadA: Hello World from riscv32!
|
|
threadB: Hello World from riscv32!
|
|
threadA: Hello World from riscv32!
|
|
threadB: Hello World from riscv32!
|
|
threadA: Hello World from riscv32!
|
|
threadB: Hello World from riscv32!
|
|
threadA: Hello World from riscv32!
|
|
threadB: Hello World from riscv32!
|
|
threadA: Hello World from riscv32!
|
|
threadB: Hello World from riscv32!
|
|
|
|
Exit QEMU by pressing :kbd:`CTRL+A` :kbd:`x`.
|
|
|
|
Debugging
|
|
=========
|
|
|
|
Refer to the detailed overview about :ref:`application_debugging`.
|