Skip to content

Commit

Permalink
ppc/pnv: Add model for Power8 PHB3 PCIe Host bridge
Browse files Browse the repository at this point in the history
This is a model of the PCIe host bridge found on Power8 chips,
including IOMMU support, PCIe root complex etc...

This implementation doesn't emulate the EEH error handling (and
may never do).

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
[clg: updated for qemu-2.11
      QOM'ified the models
      introduced pnv_chip_phb_realize() to create the PHB3 objects
      updated the XICSFabric handlers to loop on the PHB3 ICS
      fixed the XIVE update
      fixed IRQ number overlap in pnv_phb3_remap_irqs() ]
Signed-off-by: Cédric Le Goater <clg@kaod.org>
  • Loading branch information
ozbenh authored and legoater committed Oct 6, 2017
1 parent 1e4f0e4 commit 15d0fda
Show file tree
Hide file tree
Showing 13 changed files with 2,624 additions and 5 deletions.
2 changes: 1 addition & 1 deletion hw/intc/xics.c
Expand Up @@ -219,7 +219,7 @@ void icp_eoi(ICPState *icp, uint32_t xirr)
}
}

static void icp_irq(ICSState *ics, int server, int nr, uint8_t priority)
void icp_irq(ICSState *ics, int server, int nr, uint8_t priority)
{
ICPState *icp = xics_icp_get(ics->xics, server);

Expand Down
1 change: 1 addition & 0 deletions hw/pci-host/Makefile.objs
Expand Up @@ -17,3 +17,4 @@ common-obj-$(CONFIG_PCI_PIIX) += piix.o
common-obj-$(CONFIG_PCI_Q35) += q35.o
common-obj-$(CONFIG_PCI_GENERIC) += gpex.o
common-obj-$(CONFIG_PCI_XILINX) += xilinx-pcie.o
obj-$(CONFIG_POWERNV) += pnv_phb3.o pnv_phb3_pbcq.o pnv_phb3_rc.o pnv_phb3_msi.o

0 comments on commit 15d0fda

Please sign in to comment.