diff options
| author | Richard Henderson <richard.henderson@linaro.org> | 2022-05-26 22:16:25 -0700 |
|---|---|---|
| committer | Richard Henderson <richard.henderson@linaro.org> | 2022-05-26 22:16:25 -0700 |
| commit | 272be013d3d3a3218ea7800c579d0e144da679ca (patch) | |
| tree | b804db8495ef186471d3ace69b3563157b9a6510 /docs | |
| parent | 2417cbd5916d043e0c56408221fbe9935d0bc8da (diff) | |
| parent | 96c343cc774b52b010e464a219d13f8e55e1003f (diff) | |
| download | focaccia-qemu-272be013d3d3a3218ea7800c579d0e144da679ca.tar.gz focaccia-qemu-272be013d3d3a3218ea7800c579d0e144da679ca.zip | |
Merge tag 'pull-ppc-20220526' of https://gitlab.com/danielhb/qemu into staging
ppc patch queue for 2022-05-26: Most of the changes are enhancements/fixes made in TCG ppc emulation code. Several bugs fixes were made across the board as well. Changes include: - tcg and target/ppc: VSX MMA implementation, fixes in helper declarations to use call flags, memory ordering, tlbie and others - pseries: fixed stdout-path setting with -machine graphics=off - pseries: allow use of elf parser for kernel address - other assorted fixes and improvements # -----BEGIN PGP SIGNATURE----- # # iHUEABYKAB0WIQQX6/+ZI9AYAK8oOBk82cqW3gMxZAUCYo/yvgAKCRA82cqW3gMx # ZMeRAQCWmqz4OyiJ9mjENYT8eIgIQWo9RzhFe4nNAaOqrNei/gD7Bx1Ut4qsLY9Z # 30wMgf/t89dXLW66zaZO+mCvEMHPsgw= # =U8gx # -----END PGP SIGNATURE----- # gpg: Signature made Thu 26 May 2022 02:35:58 PM PDT # gpg: using EDDSA key 17EBFF9923D01800AF2838193CD9CA96DE033164 # gpg: Good signature from "Daniel Henrique Barboza <danielhb413@gmail.com>" [unknown] # gpg: WARNING: This key is not certified with a trusted signature! # gpg: There is no indication that the signature belongs to the owner. # Primary key fingerprint: 17EB FF99 23D0 1800 AF28 3819 3CD9 CA96 DE03 3164 * tag 'pull-ppc-20220526' of https://gitlab.com/danielhb/qemu: (34 commits) linux-user: Add PowerPC ISA 3.1 and MMA to hwcap target/ppc: Implemented [pm]xvbf16ger2* target/ppc: Implemented pmxvf*ger* target/ppc: Implemented xvf16ger* target/ppc: Implemented xvf*ger* target/ppc: Implemented pmxvi*ger* instructions target/ppc: Implemented xvi*ger* instructions target/ppc: Implement xxm[tf]acc and xxsetaccz target/ppc: Implement lwsync with weaker memory ordering tcg/ppc: Optimize memory ordering generation with lwsync tcg/ppc: ST_ST memory ordering is not provided with eieio target/ppc: Fix eieio memory ordering semantics target/ppc: declare vmsumsh[ms] helper with call flags target/ppc: declare vmsumuh[ms] helper with call flags target/ppc: declare vmsum[um]bm helpers with call flags target/ppc: introduce do_va_helper target/ppc: declare xxextractuw and xxinsertw helpers with call flags target/ppc: declare xvxsigsp helper with call flags target/ppc: declare xscvspdpn helper with call flags target/ppc: Use TCG_CALL_NO_RWG_SE in fsel helper ... Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Diffstat (limited to 'docs')
| -rw-r--r-- | docs/system/ppc/pseries.rst | 29 |
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 ================ |