From nobody Sat May 4 17:09:33 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=linux.ibm.com Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1641406227777458.90046275410305; Wed, 5 Jan 2022 10:10:27 -0800 (PST) Received: from localhost ([::1]:53414 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1n5Ajy-0002lx-G5 for importer@patchew.org; Wed, 05 Jan 2022 13:10:26 -0500 Received: from eggs.gnu.org ([209.51.188.92]:37828) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1n5AiN-0001uP-8C; Wed, 05 Jan 2022 13:08:47 -0500 Received: from mx0a-001b2d01.pphosted.com ([148.163.156.1]:59970) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1n5AiJ-0002vo-FZ; Wed, 05 Jan 2022 13:08:46 -0500 Received: from pps.filterd (m0098409.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.16.1.2/8.16.1.2) with SMTP id 205GaaVG021960; Wed, 5 Jan 2022 18:08:27 GMT Received: from pps.reinject (localhost [127.0.0.1]) by mx0a-001b2d01.pphosted.com with ESMTP id 3dck05rjsc-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 05 Jan 2022 18:08:27 +0000 Received: from m0098409.ppops.net (m0098409.ppops.net [127.0.0.1]) by pps.reinject (8.16.0.43/8.16.0.43) with SMTP id 205HmqT7011561; Wed, 5 Jan 2022 18:08:26 GMT Received: from ppma03wdc.us.ibm.com (ba.79.3fa9.ip4.static.sl-reverse.com [169.63.121.186]) by mx0a-001b2d01.pphosted.com with ESMTP id 3dck05rjrr-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 05 Jan 2022 18:08:26 +0000 Received: from pps.filterd (ppma03wdc.us.ibm.com [127.0.0.1]) by ppma03wdc.us.ibm.com (8.16.1.2/8.16.1.2) with SMTP id 205I4DID021238; Wed, 5 Jan 2022 18:08:25 GMT Received: from b03cxnp07028.gho.boulder.ibm.com (b03cxnp07028.gho.boulder.ibm.com [9.17.130.15]) by ppma03wdc.us.ibm.com with ESMTP id 3dcv2raa14-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 05 Jan 2022 18:08:25 +0000 Received: from b03ledav005.gho.boulder.ibm.com (b03ledav005.gho.boulder.ibm.com [9.17.130.236]) by b03cxnp07028.gho.boulder.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 205I8Ofa28836112 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 5 Jan 2022 18:08:24 GMT Received: from b03ledav005.gho.boulder.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 05DCFBE05F; Wed, 5 Jan 2022 18:08:24 +0000 (GMT) Received: from b03ledav005.gho.boulder.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 0188FBE04F; Wed, 5 Jan 2022 18:08:21 +0000 (GMT) Received: from lagarcia.br.ibm.com.com (unknown [9.65.79.38]) by b03ledav005.gho.boulder.ibm.com (Postfix) with ESMTP; Wed, 5 Jan 2022 18:08:21 +0000 (GMT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=from : to : cc : subject : date : message-id : content-type : content-transfer-encoding : mime-version; s=pp1; bh=XEeZGgz9TQsCN+2R1Aubnfjg6Ird96E+s79h0HHlw1k=; b=SoAdJVK/R9HjyHiNvE7YNA++qWz2hVl8P7hItswtLO1NKb7PVvaipdzDiUxBZLGOC3Ps 1te6i/y40IQw41xBhu1QS6DDGT6+Zr5/3Tduas36ztKeszOqbuGplVmQHUJK/R4JENcr Zxevvy2welj06+QiC5yf5JLtQKlIF0i0ecWq08K0gshakoqbgjZzkfQiwFj9cDhga2tF UV4WloaXDbqYVueKCgCBL9HMAfwuVc9zqI9O3/W1Tu2G5v8IRoDG8cQPxy0Zg02RDL02 PRrTIiqeVTotnQxPzEha7rcve11qQAAGEdnDY3kxznjG8q9/dUnbukftpBCuaFK618NU XQ== From: lagarcia@linux.ibm.com To: qemu-ppc@nongnu.org Subject: [PATCH] docs: Clarifications and formatting changes in ppc docs. Date: Wed, 5 Jan 2022 15:08:06 -0300 Message-Id: <3b228af4785241c7fb4a2c70f0c495d2a9adea83.1641405872.git.lagarcia@br.ibm.com> X-Mailer: git-send-email 2.33.1 Content-Type: text/plain; charset="utf-8" X-TM-AS-GCONF: 00 X-Proofpoint-ORIG-GUID: QOCHXn9NHt3urXnqZqYZDwll7NcLiceL X-Proofpoint-GUID: NV6O_vnRlo1EWY0T7Q97Iy6162LvEl4o Content-Transfer-Encoding: quoted-printable X-Proofpoint-UnRewURL: 0 URL was un-rewritten MIME-Version: 1.0 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.205,Aquarius:18.0.790,Hydra:6.0.425,FMLib:17.11.62.513 definitions=2022-01-05_05,2022-01-04_01,2021-12-02_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 lowpriorityscore=0 spamscore=0 mlxscore=0 phishscore=0 adultscore=0 clxscore=1011 malwarescore=0 bulkscore=0 mlxlogscore=999 impostorscore=0 suspectscore=0 priorityscore=1501 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2110150000 definitions=main-2201050118 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=148.163.156.1; envelope-from=lagarcia@linux.ibm.com; helo=mx0a-001b2d01.pphosted.com X-Spam_score_int: -19 X-Spam_score: -2.0 X-Spam_bar: -- X-Spam_report: (-2.0 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_MSPIKE_H5=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: danielhb413@gmail.com, groug@kaod.org, qemu-devel@nongnu.org, clg@kaod.org, Leonardo Garcia , david@gibson.dropbear.id.au Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZM-MESSAGEID: 1641406231096100001 From: Leonardo Garcia Signed-off-by: Leonardo Garcia Reviewed-by: C=C3=A9dric Le Goater --- docs/specs/ppc-spapr-hcalls.rst | 22 ++++++++--------- docs/system/ppc/pseries.rst | 43 +++++++++++++++++---------------- 2 files changed, 33 insertions(+), 32 deletions(-) diff --git a/docs/specs/ppc-spapr-hcalls.rst b/docs/specs/ppc-spapr-hcalls.= rst index 28daf9734a..b4a18a01e6 100644 --- a/docs/specs/ppc-spapr-hcalls.rst +++ b/docs/specs/ppc-spapr-hcalls.rst @@ -1,13 +1,12 @@ +=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D sPAPR hypervisor calls ----------------------- +=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D =20 When used with the ``pseries`` machine type, ``qemu-system-ppc64`` impleme= nts -a set of hypervisor calls (a.k.a. hcalls) defined in the `Linux on Power -Architecture Reference document (LoPAR) -`_. -This document is a subset of the Power Architecture Platform Reference (PA= PR+) -specification (IBM internal only), which is what PowerVM, the IBM propriet= ary -hypervisor, adheres to. +a set of hypervisor calls (a.k.a. hcalls) defined in the Linux on Power +Architecture Reference ([LoPAR]_) document. This document is a subset of t= he +Power Architecture Platform Reference (PAPR+) specification (IBM internal = only), +which is what PowerVM, the IBM proprietary hypervisor, adheres to. =20 The subset in LoPAR is selected based on the requirements of Linux as a gu= est. =20 @@ -18,8 +17,8 @@ running in the guest and QEMU. All those hypercalls start at hcall number 0xf000 which correspond to an implementation specific range in PAPR. =20 -H_RTAS (0xf000) -^^^^^^^^^^^^^^^ +``H_RTAS (0xf000)`` +=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D =20 RTAS stands for Run-Time Abstraction Sercies and is a set of runtime servi= ces generally provided by the firmware inside the guest to the operating syste= m. It @@ -44,8 +43,8 @@ Returns: =20 ``H_PARAMETER``: Unknown token. =20 -H_LOGICAL_MEMOP (0xf001) -^^^^^^^^^^^^^^^^^^^^^^^^ +``H_LOGICAL_MEMOP (0xf001)`` +=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D =20 When the guest runs in "real mode" (in powerpc terminology this means with= MMU disabled, i.e. guest effective address equals to guest physical address), = it @@ -98,3 +97,4 @@ Returns: ``H_SUCCESS``: Success. =20 ``H_PARAMETER``: Invalid argument. + diff --git a/docs/system/ppc/pseries.rst b/docs/system/ppc/pseries.rst index 72e315eff6..ead33e6764 100644 --- a/docs/system/ppc/pseries.rst +++ b/docs/system/ppc/pseries.rst @@ -1,19 +1,18 @@ +=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D pSeries family boards (``pseries``) =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D =20 -The Power machine para-virtualized environment described by the `Linux on = Power -Architecture Reference document (LoPAR) -`_ -is called pSeries. This environment is also known as sPAPR, System p guest= s, or -simply Power Linux guests (although it is capable of running other operati= ng -systems, such as AIX). +The Power machine para-virtualized environment described by the Linux on P= ower +Architecture Reference ([LoPAR]_) document is called pSeries. This environ= ment +is also known as sPAPR, System p guests, or simply Power Linux guests (alt= hough +it is capable of running other operating systems, such as AIX). =20 Even though pSeries is designed to behave as a guest environment, it is al= so capable of acting as a hypervisor OS, providing, on that role, nested virtualization capabilities. =20 Supported devices ------------------ +=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D =20 * Multi processor support for many Power processors generations: POWER7, POWER7+, POWER8, POWER8NVL, POWER9, and Power10. Support for POWER5+ ex= ists, @@ -26,12 +25,12 @@ Supported devices * PCIe device pass through. =20 Missing devices ---------------- +=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D =20 * SPICE support. =20 Firmware --------- +=3D=3D=3D=3D=3D=3D=3D=3D =20 `SLOF `_ (Slimline Open Firmware) is an implementation of the `IEEE 1275-1994, Standard for Boot (Initialization @@ -42,14 +41,14 @@ QEMU includes a prebuilt image of SLOF which is updated= when a more recent version is required. =20 Build directions ----------------- +=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D =20 .. code-block:: bash =20 ./configure --target-list=3Dppc64-softmmu && make =20 Running instructions --------------------- +=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D =20 Someone can select the pSeries machine type by running QEMU with the follo= wing options: @@ -59,7 +58,7 @@ options: qemu-system-ppc64 -M pseries =20 sPAPR devices -------------- +=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D =20 The sPAPR specification defines a set of para-virtualized devices, which a= re also supported by the pSeries machine in QEMU and can be instantiated with= the @@ -102,11 +101,9 @@ device, or specify one with an ID NVRAM device with ``-global spapr-nvram.drive=3Dpfid``. =20 sPAPR specification -^^^^^^^^^^^^^^^^^^^ +------------------- =20 -The main source of documentation on the sPAPR standard is the `Linux on Po= wer -Architecture Reference document (LoPAR) -`_. +The main source of documentation on the sPAPR standard is the [LoPAR]_ doc= ument. However, documentation specific to QEMU's implementation of the specificat= ion can also be found in QEMU documentation: =20 @@ -124,7 +121,7 @@ Other documentation available in QEMU docs directory: (``/docs/specs/ppc-spapr-uv-hcalls.txt``). =20 Switching between the KVM-PR and KVM-HV kernel module ------------------------------------------------------ +=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D =20 Currently, there are two implementations of KVM on Power, ``kvm_hv.ko`` and ``kvm_pr.ko``. @@ -139,7 +136,7 @@ possible to switch between the two modes with the ``kvm= -type`` parameter: instead. =20 KVM-PR -^^^^^^ +------ =20 KVM-PR uses the so-called **PR**\ oblem state of the PPC CPUs to run the g= uests, i.e. the virtual machine is run in user mode and all privileged instructio= ns @@ -166,7 +163,7 @@ In order to run KVM-PR guests with POWER9 processors, s= omeone will need to start QEMU with ``kernel_irqchip=3Doff`` command line option. =20 KVM-HV -^^^^^^ +------ =20 KVM-HV uses the hypervisor mode of more recent Power processors, that allow access to the bare metal hardware directly. Although POWER7 had this capab= ility, @@ -188,7 +185,7 @@ CPUs generations, e.g. you can run a POWER7 guest on a = POWER8 host by using ``-cpu POWER8,compat=3Dpower7`` as parameter to QEMU. =20 Modules support ---------------- +=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D =20 As noticed in the sections above, each module can run in a different environment. The following table shows with which environment each module = can @@ -231,8 +228,12 @@ nested. Combinations not shown in the table are not av= ailable. .. [3] Introduced on Power10 machines. =20 Maintainer contact information ------------------------------- +=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D =20 C=C3=A9dric Le Goater =20 Daniel Henrique Barboza + +.. [LoPAR] `Linux on Power Architecture Reference document (LoPAR) revision + 2.9 `_. + --=20 2.33.1