hw/ssi: Add SPI model
authorChalapathi V <chalapathi.v@linux.ibm.com>
Wed, 26 Jun 2024 09:05:24 +0000 (04:05 -0500)
committerNicholas Piggin <npiggin@gmail.com>
Thu, 25 Jul 2024 23:21:06 +0000 (09:21 +1000)
commit29318db133d0b2523bda771f76aa50c08842527f
treead5bf163e488867107d16fa19f2a793143ae3f27
parent117664a1e70e6adff1e4384702a9d8343597b5b9
hw/ssi: Add SPI model

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 <chalapathi.v@linux.ibm.com>
Reviewed-by: Caleb Schlossin <calebs@linux.vnet.ibm.com>
Reviewed-by: Cédric Le Goater <clg@redhat.com>
Reviewed-by: Glenn Miles <milesg@linux.ibm.com>
[np: Fix FDT macro compile for qtest]
Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
hw/ppc/Kconfig
hw/ssi/Kconfig
hw/ssi/meson.build
hw/ssi/pnv_spi.c [new file with mode: 0644]
hw/ssi/trace-events
include/hw/ppc/pnv_xscom.h
include/hw/ssi/pnv_spi.h [new file with mode: 0644]
include/hw/ssi/pnv_spi_regs.h [new file with mode: 0644]