[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-ppc] [RFC PATCH qemu] spapr_pci: Create PCI-express root bus b
From: |
Benjamin Herrenschmidt |
Subject: |
Re: [Qemu-ppc] [RFC PATCH qemu] spapr_pci: Create PCI-express root bus by default |
Date: |
Thu, 15 Dec 2016 15:59:10 -0600 |
On Wed, 2016-12-14 at 20:26 +0200, Marcel Apfelbaum wrote:
> > > The Root complex includes the PCI bus, some configuration
> > > registers if
> > > needed, provides access to the configuration space, translates
> > > relevant CPU
> > > reads/writes to PCI(e) transactions...
> >
> > Do those configuration registers appear within PCI space, or
> > outside
> > it (e.g. raw MMIO or PIO registers)?
> >
>
> Root Complexes use MMIO to expose the PCI configuration space,
> they call it ECAM (enhanced configuration access mechanism) or
> MMConfig.
Not all of them do. There are plenty of PCIe RCs out there that
do config space using different mechanisms such as the good old
indirect address/data method, such as ours. IE. Even in real "bare
metal" powernv, where the root port is visible to Linux, we still
go through firmware for config space to get through to those
registers (among other things).
My PHB3 implementation (not upstream yet and a bit bitrotted by now)
exposed PCIe that way including extended config space and that was
working fine.
Cheers,
Ben.
- Re: [Qemu-ppc] [RFC PATCH qemu] spapr_pci: Create PCI-express root bus by default, (continued)
- Re: [Qemu-ppc] [RFC PATCH qemu] spapr_pci: Create PCI-express root bus by default, Andrea Bolognani, 2016/12/06
- Re: [Qemu-ppc] [RFC PATCH qemu] spapr_pci: Create PCI-express root bus by default, David Gibson, 2016/12/06
- Re: [Qemu-ppc] [RFC PATCH qemu] spapr_pci: Create PCI-express root bus by default, Andrea Bolognani, 2016/12/07
- Re: [Qemu-ppc] [RFC PATCH qemu] spapr_pci: Create PCI-express root bus by default, Marcel Apfelbaum, 2016/12/13
- Re: [Qemu-ppc] [RFC PATCH qemu] spapr_pci: Create PCI-express root bus by default, Greg Kurz, 2016/12/13
- Re: [Qemu-ppc] [RFC PATCH qemu] spapr_pci: Create PCI-express root bus by default, Benjamin Herrenschmidt, 2016/12/13
- Re: [Qemu-ppc] [RFC PATCH qemu] spapr_pci: Create PCI-express root bus by default, David Gibson, 2016/12/13
- Re: [Qemu-ppc] [RFC PATCH qemu] spapr_pci: Create PCI-express root bus by default, Marcel Apfelbaum, 2016/12/14
- Re: [Qemu-ppc] [RFC PATCH qemu] spapr_pci: Create PCI-express root bus by default, David Gibson, 2016/12/13
- Re: [Qemu-ppc] [RFC PATCH qemu] spapr_pci: Create PCI-express root bus by default, Marcel Apfelbaum, 2016/12/14
- Re: [Qemu-ppc] [RFC PATCH qemu] spapr_pci: Create PCI-express root bus by default,
Benjamin Herrenschmidt <=
- Re: [Qemu-ppc] [RFC PATCH qemu] spapr_pci: Create PCI-express root bus by default, Andrea Bolognani, 2016/12/19