<feed xmlns='http://www.w3.org/2005/Atom'>
<title>qemu/include/hw/ppc, branch master</title>
<subtitle>QEMU development tree</subtitle>
<id>https://git.zx2c4.com/qemu/atom/include/hw/ppc?h=master</id>
<link rel='self' href='https://git.zx2c4.com/qemu/atom/include/hw/ppc?h=master'/>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/qemu/'/>
<updated>2024-07-25T23:51:33Z</updated>
<entry>
<title>pnv/xive2: Dump more END state with 'info pic'</title>
<updated>2024-07-25T23:51:33Z</updated>
<author>
<name>Frederic Barrat</name>
<email>fbarrat@linux.ibm.com</email>
</author>
<published>2024-07-24T21:21:30Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/qemu/commit/?id=5fc9c71724559be273ee1b68c65ffe45e1386e3c'/>
<id>urn:sha1:5fc9c71724559be273ee1b68c65ffe45e1386e3c</id>
<content type='text'>
Additional END state 'info pic' information as added.  The 'ignore',
'crowd' and 'precluded escalation control' bits of an Event Notification
Descriptor are all used when delivering an interrupt targeting a VP-group
or crowd.

Signed-off-by: Frederic Barrat &lt;fbarrat@linux.ibm.com&gt;
Signed-off-by: Michael Kowal &lt;kowal@linux.vnet.ibm.com&gt;
Reviewed-by: Cédric Le Goater &lt;clg@redhat.com&gt;
Signed-off-by: Nicholas Piggin &lt;npiggin@gmail.com&gt;
</content>
</entry>
<entry>
<title>pnv/xive2: Move xive2_nvp_pic_print_info() to xive2.c</title>
<updated>2024-07-25T23:51:33Z</updated>
<author>
<name>Frederic Barrat</name>
<email>fbarrat@linux.ibm.com</email>
</author>
<published>2024-07-24T21:21:28Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/qemu/commit/?id=96c674bf08365ae0ffa2b960a12718bf2ca90079'/>
<id>urn:sha1:96c674bf08365ae0ffa2b960a12718bf2ca90079</id>
<content type='text'>
Moving xive2_nvp_pic_print_info() to align with the other "pic_print_info"
functions.

Signed-off-by: Frederic Barrat &lt;fbarrat@linux.ibm.com&gt;
Signed-off-by: Michael Kowal &lt;kowal@linux.vnet.ibm.com&gt;
Reviewed-by: Cédric Le Goater &lt;clg@redhat.com&gt;
Signed-off-by: Nicholas Piggin &lt;npiggin@gmail.com&gt;
</content>
</entry>
<entry>
<title>pnv/xive: Support cache flush and queue sync inject with notifications</title>
<updated>2024-07-25T23:51:20Z</updated>
<author>
<name>Nicholas Piggin</name>
<email>npiggin@gmail.com</email>
</author>
<published>2024-07-24T21:21:22Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/qemu/commit/?id=76125c0132f27f0b4ba1b71d19027aba1fe62fd9'/>
<id>urn:sha1:76125c0132f27f0b4ba1b71d19027aba1fe62fd9</id>
<content type='text'>
Adds support for writing a completion notification byte in memory
whenever a cache flush or queue sync inject operation is requested by
software.  QEMU does not cache any of the XIVE data that is in memory and
therefore it simply writes the completion notification byte at the time
that the operation is requested.

Co-authored-by: Glenn Miles &lt;milesg@linux.vnet.ibm.com&gt;

Signed-off-by: Glenn Miles &lt;milesg@linux.vnet.ibm.com&gt;
Signed-off-by: Michael Kowal &lt;kowal@linux.vnet.ibm.com&gt;
Reviewed-by: Cédric Le Goater &lt;clg@kaod.org&gt;
Signed-off-by: Nicholas Piggin &lt;npiggin@gmail.com&gt;
</content>
</entry>
<entry>
<title>hw/ppc: SPI controller wiring to P10 chip</title>
<updated>2024-07-25T23:21:06Z</updated>
<author>
<name>Chalapathi V</name>
<email>chalapathi.v@linux.ibm.com</email>
</author>
<published>2024-06-26T09:05:27Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/qemu/commit/?id=bb44dc48628e9168f16c460f778bbef7a91d7708'/>
<id>urn:sha1:bb44dc48628e9168f16c460f778bbef7a91d7708</id>
<content type='text'>
In this commit, create SPI controller on p10 chip and connect cs irq.

The QOM tree of pnv-spi and seeprom are.
/machine (powernv10-machine)
  /chip[0] (power10_v2.0-pnv-chip)
    /pib_spic[2] (pnv-spi)
      /pnv-spi-bus.2 (SSI)
      /xscom-spi[0] (memory-region)

/machine (powernv10-machine)
  /peripheral-anon (container)
    /device[0] (25csm04)
      /WP#[0] (irq)
      /ssi-gpio-cs[0] (irq)

(qemu) qom-get /machine/peripheral-anon /device[76] "parent_bus"
"/machine/chip[0]/pib_spic[2]/pnv-spi-bus.2"

Signed-off-by: Chalapathi V &lt;chalapathi.v@linux.ibm.com&gt;
Reviewed-by: Glenn Miles &lt;milesg@linux.ibm.com&gt;
Reviewed-by: Cédric Le Goater &lt;clg@kaod.org&gt;
Signed-off-by: Nicholas Piggin &lt;npiggin@gmail.com&gt;
</content>
</entry>
<entry>
<title>hw/ssi: Add SPI model</title>
<updated>2024-07-25T23:21:06Z</updated>
<author>
<name>Chalapathi V</name>
<email>chalapathi.v@linux.ibm.com</email>
</author>
<published>2024-06-26T09:05:24Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/qemu/commit/?id=29318db133d0b2523bda771f76aa50c08842527f'/>
<id>urn:sha1:29318db133d0b2523bda771f76aa50c08842527f</id>
<content type='text'>
SPI controller device model supports a connection to a single SPI responder.
This provide access to SPI seeproms, TPM, flash device and an ADC controller.

All SPI function control is mapped into the SPI register space to enable full
control by firmware. In this commit SPI configuration component is modelled
which contains all SPI configuration and status registers as well as the hold
registers for data to be sent or having been received.

An existing QEMU SSI framework is used and SSI_BUS is created.

Signed-off-by: Chalapathi V &lt;chalapathi.v@linux.ibm.com&gt;
Reviewed-by: Caleb Schlossin &lt;calebs@linux.vnet.ibm.com&gt;
Reviewed-by: Cédric Le Goater &lt;clg@redhat.com&gt;
Reviewed-by: Glenn Miles &lt;milesg@linux.ibm.com&gt;
[np: Fix FDT macro compile for qtest]
Signed-off-by: Nicholas Piggin &lt;npiggin@gmail.com&gt;
</content>
</entry>
<entry>
<title>ppc/pnv: Remove ppc target dependency from pnv_xscom.h</title>
<updated>2024-07-25T23:21:06Z</updated>
<author>
<name>Chalapathi V</name>
<email>chalapathi.v@linux.ibm.com</email>
</author>
<published>2024-06-26T09:05:23Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/qemu/commit/?id=117664a1e70e6adff1e4384702a9d8343597b5b9'/>
<id>urn:sha1:117664a1e70e6adff1e4384702a9d8343597b5b9</id>
<content type='text'>
In this commit target specific dependency from include/hw/ppc/pnv_xscom.h
has been removed so that pnv_xscom.h can be included outside hw/ppc.

Signed-off-by: Chalapathi V &lt;chalapathi.v@linux.ibm.com&gt;
Reviewed-by: Cédric Le Goater &lt;clg@redhat.com&gt;
Reviewed-by: Caleb Schlossin &lt;calebs@linux.vnet.ibm.com&gt;
Signed-off-by: Nicholas Piggin &lt;npiggin@gmail.com&gt;
</content>
</entry>
<entry>
<title>ppc/pnv: Add an LPAR per core machine option</title>
<updated>2024-07-25T23:21:06Z</updated>
<author>
<name>Nicholas Piggin</name>
<email>npiggin@gmail.com</email>
</author>
<published>2024-05-24T05:02:46Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/qemu/commit/?id=3b5ea01e98a5e26c1adb13d966f334cb58680cf8'/>
<id>urn:sha1:3b5ea01e98a5e26c1adb13d966f334cb58680cf8</id>
<content type='text'>
Recent POWER CPUs can operate in "LPAR per core" or "LPAR per thread"
modes. In per-core mode, some SPRs and IPI doorbells are shared between
threads in a core. In per-thread mode, supervisor and user state is
not shared between threads.

OpenPOWER systems after POWER8 use LPAR per thread mode, and it is
required for KVM. Enterprise systems use LPAR per core mode, as they
partition the machine by core.

Implement a lpar-per-core machine option for powernv machines. This
is fixed true for POWER8 machines, and defaults off for P9 and P10.

With this change, powernv8 SMT now works sufficiently to run Linux,
with a single socket. Multi-threaded KVM guests still have problems,
as does multi-socket Linux boot.

Reviewed-by: Cédric Le Goater &lt;clg@redhat.com&gt;
Signed-off-by: Nicholas Piggin &lt;npiggin@gmail.com&gt;
</content>
</entry>
<entry>
<title>ppc/pnv: Implement POWER10 PC xscom registers for direct controls</title>
<updated>2024-07-25T23:21:06Z</updated>
<author>
<name>Nicholas Piggin</name>
<email>npiggin@gmail.com</email>
</author>
<published>2024-05-16T13:44:12Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/qemu/commit/?id=c8891955086b2fa795efb7fa0e409e32f25e5447'/>
<id>urn:sha1:c8891955086b2fa795efb7fa0e409e32f25e5447</id>
<content type='text'>
The PC unit in the processor core contains xscom registers that provide
low level status and control of the CPU.

This implements "direct controls", sufficient for skiboot firmware,
which uses it to send NMI IPIs between CPUs.

POWER10 is sufficiently different from POWER9 (particularly with respect
to QME and special wakeup) that it is not trivial to implement POWER9
support by reusing the code.

Signed-off-by: Nicholas Piggin &lt;npiggin@gmail.com&gt;
</content>
</entry>
<entry>
<title>ppc/pnv: Add a CPU nmi and resume function</title>
<updated>2024-07-25T23:21:06Z</updated>
<author>
<name>Nicholas Piggin</name>
<email>npiggin@gmail.com</email>
</author>
<published>2024-07-12T03:16:44Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/qemu/commit/?id=ca4f47752a14221a26cd2bf4710bb21ad2811a22'/>
<id>urn:sha1:ca4f47752a14221a26cd2bf4710bb21ad2811a22</id>
<content type='text'>
Power CPUs have an execution control facility that can pause, resume,
and cause NMIs, among other things. Add a function that will nmi a CPU
and resume it if it was paused, in preparation for implementing the
control facility.

Reviewed-by: Cédric Le Goater &lt;clg@redhat.com&gt;
Signed-off-by: Nicholas Piggin &lt;npiggin@gmail.com&gt;
</content>
</entry>
<entry>
<title>ppc/pnv: Add POWER10 ChipTOD quirk for big-core</title>
<updated>2024-07-25T23:21:06Z</updated>
<author>
<name>Nicholas Piggin</name>
<email>npiggin@gmail.com</email>
</author>
<published>2024-06-18T03:09:54Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/qemu/commit/?id=78be3218940c0902d165f42ad0cdcd38e66c5df2'/>
<id>urn:sha1:78be3218940c0902d165f42ad0cdcd38e66c5df2</id>
<content type='text'>
POWER10 has a quirk in its ChipTOD addressing that requires the even
small-core to be selected even when programming the odd small-core.
This allows skiboot chiptod init to run in big-core mode.

Reviewed-by: Cédric Le Goater &lt;clg@redhat.com&gt;
Signed-off-by: Nicholas Piggin &lt;npiggin@gmail.com&gt;
</content>
</entry>
</feed>
