.. _qemu_cortex_m3:

ARM Cortex-M3 Emulation (QEMU)
##############################

Overview
********

The Zephyr kernel uses the qemu_cortex_m3 board configuration
to emulate the TI LM3S6965 platform running on QEMU. It provides support
for an ARM Cortex-M3 CPU and the following devices:

* Nested Vectored Interrupt Controller

* System Tick System Clock

* Stellaris UART

.. note::
   This board configuration makes no claims about its suitability for use
   with an actual ti_lm3s6965 hardware system, or any other hardware system.

Supported Boards
****************

The qemu_cortex_m3 board configuration has been tested on
QEMU 2.1 patched with Zephyr's
:file:`0001-armv7m-support-basepri-primask-interrupt-locking.patch`.

Supported Features
******************

The qemu_cortex_m3 board configuration supports the following
hardware features:

+--------------+------------+----------------------+
| Interface    | Controller | Driver/Component     |
+==============+============+======================+
| NVIC         | on-chip    | nested vectored      |
|              |            | interrupt controller |
+--------------+------------+----------------------+
| Stellaris    | on-chip    | serial port          |
| UART         |            |                      |
+--------------+------------+----------------------+
| SYSTICK      | on-chip    | system clock         |
+--------------+------------+----------------------+

The kernel currently does not support other hardware features on this platform.

Interrupt Controller
====================


Refer to the :ref:`frdm_k64f`.

.. note::
   Unlike the frdm_k64f board configuration, the qemu_cortex_m3
   board configuration sets option :option:`NUM_IRQ_PRIO_BITS` to '3'.

System Clock
============
The qemu_cortex_m3 board configuration uses a system
clock frequency of 12 MHz.

Serial Port
===========

The qemu_cortex_m3 board configuration uses a single
serial communication channel with the CPU's UART0.

Known Problems or Limitations
*****************************

The following platform features are unsupported:

* Memory protection through optional MPU.
  However, using a XIP kernel effectively provides
  TEXT/RODATA write protection in ROM.

* SRAM at addresses 0x1FFF0000-0x1FFFFFFF

* Writing to the hardware's flash memory

Bibliography
************

1. The Definitive Guide to the ARM Cortex-M3,
   Second Edition by Joseph Yiu (ISBN 978-0-12-382090-7)
2. ARMv7-M Architecture Technical Reference Manual
   (ARM DDI 0403D ID021310)
3. Procedure Call Standard for the ARM Architecture
   (ARM IHI 0042E, current through ABI release 2.09,
   2012/11/30)
4. Cortex-M3 Revision r2p1 Technical Reference Manual
   (ARM DDI 0337I ID072410)
5. Cortex-M3 Devices Generic User Guide
   (ARM DUI 0052A ID121610)
