From: Greg Kurz <groug@kaod.org>
To: Laurent Vivier <lvivier@redhat.com>
Cc: peter.maydell@linaro.org, qemu-devel@nongnu.org,
qemu-ppc@nongnu.org, "Cédric Le Goater" <clg@kaod.org>,
"David Gibson" <david@gibson.dropbear.id.au>
Subject: Re: [PULL 19/35] ppc/pnv: Add models for POWER9 PHB4 PCIe Host bridge
Date: Wed, 5 Feb 2020 15:31:47 +0100 [thread overview]
Message-ID: <20200205153147.7d505504@bahia.lan> (raw)
In-Reply-To: <bbb36281-287b-70cf-80ab-9ac54eeca8de@redhat.com>
On Wed, 5 Feb 2020 14:26:41 +0100
Laurent Vivier <lvivier@redhat.com> wrote:
> On 03/02/2020 07:11, David Gibson wrote:
> > From: Benjamin Herrenschmidt <benh@kernel.crashing.org>
> >
> > These changes introduces models for the PCIe Host Bridge (PHB4) of the
> > POWER9 processor. It includes the PowerBus logic interface (PBCQ),
> > IOMMU support, a single PCIe Gen.4 Root Complex, and support for MSI
> > and LSI interrupt sources as found on a POWER9 system using the XIVE
> > interrupt controller.
> >
> > POWER9 processor comes with 3 PHB4 PEC (PCI Express Controller) and
> > each PEC can have several PHBs. By default,
> >
> > * PEC0 provides 1 PHB (PHB0)
> > * PEC1 provides 2 PHBs (PHB1 and PHB2)
> > * PEC2 provides 3 PHBs (PHB3, PHB4 and PHB5)
> >
> > Each PEC has a set "global" registers and some "per-stack" (per-PHB)
> > registers. Those are organized in two XSCOM ranges, the "Nest" range
> > and the "PCI" range, each range contains both some "PEC" registers and
> > some "per-stack" registers.
> >
> > No default device layout is provided and PCI devices can be added on
> > any of the available PCIe Root Port (pcie.0 .. 2 of a Power9 chip)
> > with address 0x0 as the firwware (skiboot) only accepts a single
> > device per root port. To run a simple system with a network and a
> > storage adapters, use a command line options such as :
> >
> > -device e1000e,netdev=net0,mac=C0:FF:EE:00:00:02,bus=pcie.0,addr=0x0
> > -netdev bridge,id=net0,helper=/usr/libexec/qemu-bridge-helper,br=virbr0,id=hostnet0
> >
> > -device megasas,id=scsi0,bus=pcie.1,addr=0x0
> > -drive file=$disk,if=none,id=drive-scsi0-0-0-0,format=qcow2,cache=none
> > -device scsi-hd,bus=scsi0.0,channel=0,scsi-id=0,lun=0,drive=drive-scsi0-0-0-0,id=scsi0-0-0-0,bootindex=2
> >
> > If more are needed, include a bridge.
> >
> > Multi chip is supported, each chip adding its set of PHB4 controllers
> > and its PCI busses. The model doesn't emulate the EEH error handling.
> >
> > This model is not ready for hotplug yet.
> >
> > Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
> > [ clg: - numerous cleanups
> > - commit log
> > - fix for broken LSI support
> > - PHB pic printinfo
> > - large QOM rework ]
> > Signed-off-by: Cédric Le Goater <clg@kaod.org>
> > Message-Id: <20200127144506.11132-2-clg@kaod.org>
> > [dwg: Use device_class_set_props()]
> > Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
> > ---
> > hw/pci-host/Makefile.objs | 1 +
> > hw/pci-host/pnv_phb4.c | 1438 +++++++++++++++++++++++++++
> > hw/pci-host/pnv_phb4_pec.c | 593 +++++++++++
> > hw/ppc/Kconfig | 2 +
> > hw/ppc/pnv.c | 107 ++
> > include/hw/pci-host/pnv_phb4.h | 230 +++++
> > include/hw/pci-host/pnv_phb4_regs.h | 553 ++++++++++
> > include/hw/pci/pcie_port.h | 1 +
> > include/hw/ppc/pnv.h | 7 +
> > include/hw/ppc/pnv_xscom.h | 11 +
> > 10 files changed, 2943 insertions(+)
> > create mode 100644 hw/pci-host/pnv_phb4.c
> > create mode 100644 hw/pci-host/pnv_phb4_pec.c
> > create mode 100644 include/hw/pci-host/pnv_phb4.h
> > create mode 100644 include/hw/pci-host/pnv_phb4_regs.h
> >
> ...
> > diff --git a/hw/ppc/Kconfig b/hw/ppc/Kconfig
> > index e27efe9a24..354828bf13 100644
> > --- a/hw/ppc/Kconfig
> > +++ b/hw/ppc/Kconfig
> > @@ -135,6 +135,8 @@ config XIVE_SPAPR
> > default y
> > depends on PSERIES
> > select XIVE
> > + select PCI
> > + select PCIE_PORT
>
> This patch is about PowerNV, why do we add dependencies for pseries
> configuration?
>
This looks like an error. These should rather be added to config POWERNV
I guess.
> Thanks,
> Laurent
>
next prev parent reply other threads:[~2020-02-05 14:33 UTC|newest]
Thread overview: 48+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-02-03 6:10 [PULL 00/35] ppc-for-5.0 queue 20200203 David Gibson
2020-02-03 6:10 ` [PULL 01/35] ppc/pnv: use QEMU unit definition MiB David Gibson
2020-02-03 6:10 ` [PULL 02/35] ppc/pnv: improve error logging when a PNOR update fails David Gibson
2020-02-03 6:10 ` [PULL 03/35] ppc:virtex_ml507: remove unused arguments David Gibson
2020-02-03 6:10 ` [PULL 04/35] hw/ppc/prep: Remove the deprecated "prep" machine and the OpenHackware BIOS David Gibson
2020-02-03 6:10 ` [PULL 05/35] target/ppc: Clarify the meaning of return values in kvm_handle_debug David Gibson
2020-02-03 6:10 ` [PULL 06/35] spapr: Fail CAS if option vector table cannot be parsed David Gibson
2020-03-20 17:38 ` Peter Maydell
2020-02-03 6:10 ` [PULL 07/35] target/ppc: Add privileged message send facilities David Gibson
2020-02-03 6:10 ` [PULL 08/35] target/ppc: add support for Hypervisor Facility Unavailable Exception David Gibson
2020-02-03 6:10 ` [PULL 09/35] spapr: Don't allow multiple active vCPUs at CAS David Gibson
2020-02-03 6:10 ` [PULL 10/35] ppc/pnv: Add support for HRMOR on Radix host David Gibson
2020-02-03 6:10 ` [PULL 11/35] ppc/pnv: remove useless "core-pir" property alias David Gibson
2020-02-03 6:11 ` [PULL 12/35] ppc/pnv: Add support for "hostboot" mode David Gibson
2020-02-03 6:11 ` [PULL 13/35] tpm: Move tpm_tis_show_buffer to tpm_util.c David Gibson
2020-02-03 6:11 ` [PULL 14/35] spapr: Implement get_dt_compatible() callback David Gibson
2020-02-03 6:11 ` [PULL 15/35] tpm_spapr: Support TPM for ppc64 using CRQ based interface David Gibson
2020-02-03 6:11 ` [PULL 16/35] tpm_spapr: Support suspend and resume David Gibson
2020-02-03 6:11 ` [PULL 17/35] hw/ppc/Kconfig: Enable TPM_SPAPR as part of PSERIES config David Gibson
2020-02-03 6:11 ` [PULL 18/35] docs/specs/tpm: reST-ify TPM documentation David Gibson
2020-02-03 6:11 ` [PULL 19/35] ppc/pnv: Add models for POWER9 PHB4 PCIe Host bridge David Gibson
2020-02-05 13:26 ` Laurent Vivier
2020-02-05 14:31 ` Greg Kurz [this message]
2020-02-05 15:27 ` Cédric Le Goater
2020-02-05 16:29 ` Laurent Vivier
2020-02-05 17:16 ` Cédric Le Goater
2022-03-31 17:51 ` Peter Maydell
2022-04-01 1:59 ` Benjamin Herrenschmidt
2022-04-01 8:54 ` Frederic Barrat
2020-02-03 6:11 ` [PULL 20/35] ppc/pnv: Add models for POWER8 PHB3 " David Gibson
2020-02-03 6:11 ` [PULL 21/35] ppc/pnv: change the PowerNV machine devices to be non user creatable David Gibson
2020-02-03 6:11 ` [PULL 22/35] spapr: Enable DD2.3 accelerated count cache flush in pseries-5.0 machine David Gibson
2020-02-03 6:11 ` [PULL 23/35] target/ppc/cpu.h: Put macro parameter in parentheses David Gibson
2020-02-03 6:11 ` [PULL 24/35] Wrapper function to wait on condition for the main loop mutex David Gibson
2020-02-03 6:11 ` [PULL 25/35] ppc: spapr: Introduce FWNMI capability David Gibson
2020-02-03 6:11 ` [PULL 26/35] target/ppc: Handle NMI guest exit David Gibson
2020-02-03 6:11 ` [PULL 27/35] target/ppc: Build rtas error log upon an MCE David Gibson
2020-02-03 6:11 ` [PULL 28/35] ppc: spapr: Handle "ibm, nmi-register" and "ibm, nmi-interlock" RTAS calls David Gibson
2020-02-03 6:11 ` [PULL 29/35] migration: Include migration support for machine check handling David Gibson
2020-02-03 6:11 ` [PULL 30/35] ppc: spapr: Activate the FWNMI functionality David Gibson
2020-02-03 6:11 ` [PULL 31/35] target/ppc: Use probe_access for LSW, STSW David Gibson
2020-02-03 6:11 ` [PULL 32/35] target/ppc: Use probe_access for LMW, STMW David Gibson
2020-02-03 6:11 ` [PULL 33/35] target/ppc: Remove redundant mask in DCBZ David Gibson
2020-02-03 6:11 ` [PULL 34/35] target/ppc: Use probe_write for DCBZ David Gibson
2020-02-12 18:48 ` Greg Kurz
2020-02-12 22:36 ` Richard Henderson
2020-02-03 6:11 ` [PULL 35/35] tests: Silence various warnings with pseries David Gibson
2020-02-03 10:41 ` [PULL 00/35] ppc-for-5.0 queue 20200203 Peter Maydell
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20200205153147.7d505504@bahia.lan \
--to=groug@kaod.org \
--cc=clg@kaod.org \
--cc=david@gibson.dropbear.id.au \
--cc=lvivier@redhat.com \
--cc=peter.maydell@linaro.org \
--cc=qemu-devel@nongnu.org \
--cc=qemu-ppc@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).