aboutsummaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
authorAlexey Kardashevskiy <aik@ozlabs.ru>2022-05-06 15:51:24 +1000
committerDaniel Henrique Barboza <danielhb413@gmail.com>2022-05-26 17:11:32 -0300
commit162eec18c0aed28eda472bacf207b7b222894169 (patch)
tree864e051a133a82167d78d5ce7811b6e1f57cdc68 /docs
parent5bb55f3e3b00679519a83ffe688eae0e68e305a7 (diff)
spapr/docs: Add a few words about x-vof
The alternative small firmware needs a few words of what it can and absolutely cannot do; this adds those words. Reviewed-by: Daniel Henrique Barboza <danielhb413@gmail.com> Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru> Message-Id: <20220506055124.3822112-1-aik@ozlabs.ru> [danielhb: added linebreaks before and after table] Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com>
Diffstat (limited to 'docs')
-rw-r--r--docs/system/ppc/pseries.rst29
1 files changed, 29 insertions, 0 deletions
diff --git a/docs/system/ppc/pseries.rst b/docs/system/ppc/pseries.rst
index d9b65ad4e8..3e1bbe6726 100644
--- a/docs/system/ppc/pseries.rst
+++ b/docs/system/ppc/pseries.rst
@@ -32,14 +32,43 @@ Missing devices
Firmware
========
+The pSeries platform in QEMU comes with 2 firmwares:
+
`SLOF <https://github.com/aik/SLOF>`_ (Slimline Open Firmware) is an
implementation of the `IEEE 1275-1994, Standard for Boot (Initialization
Configuration) Firmware: Core Requirements and Practices
<https://standards.ieee.org/standard/1275-1994.html>`_.
+SLOF performs bus scanning, PCI resource allocation, provides the client
+interface to boot from block devices and network.
+
QEMU includes a prebuilt image of SLOF which is updated when a more recent
version is required.
+VOF (Virtual Open Firmware) is a minimalistic firmware to work with
+``-machine pseries,x-vof=on``. When enabled, the firmware acts as a slim
+shim and QEMU implements parts of the IEEE 1275 Open Firmware interface.
+
+VOF does not have device drivers, does not do PCI resource allocation and
+relies on ``-kernel`` used with Linux kernels recent enough (v5.4+)
+to PCI resource assignment. It is ideal to use with petitboot.
+
+Booting via ``-kernel`` supports the following:
+
++-------------------+-------------------+------------------+
+| kernel | pseries,x-vof=off | pseries,x-vof=on |
++===================+===================+==================+
+| vmlinux BE | ✓ | ✓ |
++-------------------+-------------------+------------------+
+| vmlinux LE | ✓ | ✓ |
++-------------------+-------------------+------------------+
+| zImage.pseries BE | x | ✓¹ |
++-------------------+-------------------+------------------+
+| zImage.pseries LE | ✓ | ✓ |
++-------------------+-------------------+------------------+
+
+¹ must set kernel-addr=0
+
Build directions
================