From 304c17c8dca6fcb2c67cb55948a0d79419b7946b Mon Sep 17 00:00:00 2001 From: Jeff Kubascik Date: Wed, 4 Dec 2019 09:53:29 -0500 Subject: bsp/xen: Add information on Xen/ARM BSP Add a README for the new xen bsp. --- user/bsps/arm/xen.rst | 79 ++++++++++++++++++++++++++++++++++++++++++++++++++ user/bsps/bsps-arm.rst | 1 + 2 files changed, 80 insertions(+) create mode 100644 user/bsps/arm/xen.rst (limited to 'user/bsps') diff --git a/user/bsps/arm/xen.rst b/user/bsps/arm/xen.rst new file mode 100644 index 0000000..c7085ce --- /dev/null +++ b/user/bsps/arm/xen.rst @@ -0,0 +1,79 @@ +.. SPDX-License-Identifier: CC-BY-SA-4.0 + +.. Copyright (C) 2019 DornerWorks +.. Copyright (C) 2019 Jeff Kubascik + +xen (Xen on ARM) +================ + +This BSP enables RTEMS to run as a guest virtual machine in AArch32 mode on the +Xen hypervisor for ARMv8 platforms. + +Drivers: + +* Clock: ARMv7-AR Generic Timer + +* Console: Virtual PL011 device + +* Interrupt: GICv2 + +BSP variants: + +* xen_virtual: completely virtualized guest with no dependence on underlying + hardware + +The xen_virtual BSP variant relies on standard Xen features, so it should be +able to run on any ARMv8 platform. + +Xen allows for the passthrough of hardware peripherals to guest virtual +machines. BSPs could be added in the future targeting specific hardware +platforms and include the appropriate drivers. + +This BSP was tested with Xen running on the Xilinx Zynq UltraScale+ MPSoC using +the Virtuosity distribution maintained by DornerWorks. + +Execution +--------- + +This procedure describes how to run the ticker sample application that should +already be built with the BSP. + +The ``ticker.exe`` file can be found in the BSP build tree at: + +.. code-block:: none + + arm-rtems5/c/xen_virtual/testsuites/samples/ticker.exe + +The ``ticker.exe`` elf file must be translated to a binary format. + +.. code-block:: none + + arm-rtems5-objcopy -O binary ticker.exe ticker.bin + +Then place the ``ticker.bin`` file on the dom0 filesystem. + +From the dom0 console, create a configuration file ``ticker.cfg`` with the +following contents. + +.. code-block:: none + + name = "ticker"1G + kernel = "ticker.bin" + memory = 8 + vcpus = 1 + gic_version = "v2" + vuart = "sbsa_uart" + +Create the virtual machine and attach to the virtual vpl011 console. + +.. code-block:: none + + xl create ticker.cfg && xl console -t vuart ticker + +To return back to the dom0 console, press both ``Ctrl`` and ``]`` on your +keyboard. + +Additional Information +---------------------- + +* `Virtuosity distribution `_ diff --git a/user/bsps/bsps-arm.rst b/user/bsps/bsps-arm.rst index 04f9e86..5401f67 100644 --- a/user/bsps/bsps-arm.rst +++ b/user/bsps/bsps-arm.rst @@ -25,5 +25,6 @@ arm (ARM) .. include:: arm/smdk2410.rst .. include:: arm/stm32f4.rst .. include:: arm/tms570.rst +.. include:: arm/xen.rst .. include:: arm/xilinx-zynq.rst .. include:: arm/xilinx-zynqmp.rst -- cgit v1.2.3