linux/arch/powerpc/platforms
Gavin Shan 40e2a47e62 powerpc/powernv: Extend PCI bridge resources
The PCI slots are associated with root port or downstream ports
of the PCIe switch connected to root port. When adapter is hot
added to the PCI slot, it usually requests more IO or memory
resource from the directly connected parent bridge (port) and
update the bridge's windows accordingly. The resource windows
of upstream bridges can't be updated automatically. It possibly
leads to unbalanced resource across the bridges: The window of
downstream bridge is overruning that of upstream bridge. The
IO or MMIO path won't work.

This resolves the above issue by extending bridge windows of
root port and upstream port of the PCIe switch connected to
the root port to PHB's windows.

The windows of root port and bridge behind that are extended to
the PHB's windows to accomodate the PCI hotplug happening in
future. The PHB's 64KB 32-bits MSI region is included in bridge's
M32 windows (in hardware) though it's excluded in the corresponding
resource, as the bridge's M32 windows have 1MB as their minimal
alignment. We observed EEH error during system boot when the MSI
region is included in bridge's M32 window.

This excludes top 1MB (including 64KB 32-bits MSI region) region
from bridge's M32 windows when extending them.

Signed-off-by: Gavin Shan <gwshan@linux.vnet.ibm.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
2016-06-21 15:30:55 +10:00
..
8xx genirq: Remove irq argument from irq flow handlers 2015-09-16 15:47:51 +02:00
40x powerpc: make of_device_ids const 2014-09-25 23:14:46 +10:00
44x powerpc/44x/Akebono: Remove select of IBM_EMAC_RGMII_WOL 2014-12-29 15:45:44 +11:00
52xx powerpc: mpc52xx_gpt: use gpiochip data pointer 2016-03-30 10:50:47 +02:00
82xx mdio: Move allocation of interrupts into core 2016-01-07 14:31:26 -05:00
83xx powerpc: mpc8349emitx: use gpiochip data pointer 2016-03-30 10:51:54 +02:00
85xx powerpc/mpc85xx: Add CPU hotplug support for E6500 2016-03-04 23:58:38 -06:00
86xx powerpc/86xx: Consolidate common platform code 2016-03-11 19:14:12 -06:00
512x powerpc: Various typo fixes 2016-06-14 13:58:26 +10:00
amigaone lib/scatterlist: make ARCH_HAS_SG_CHAIN an actual Kconfig 2014-08-08 15:57:26 -07:00
cell powerpc: Various typo fixes 2016-06-14 13:58:26 +10:00
chrp genirq: Remove irq argument from irq flow handlers 2015-09-16 15:47:51 +02:00
embedded6xx powerpc32: remove ioremap_base 2016-03-11 17:18:02 -06:00
maple powerpc: Remove broken GregorianDay() 2015-12-16 12:54:04 +11:00
pasemi mdio: Move allocation of interrupts into core 2016-01-07 14:31:26 -05:00
powermac powerpc: Various typo fixes 2016-06-14 13:58:26 +10:00
powernv powerpc/powernv: Extend PCI bridge resources 2016-06-21 15:30:55 +10:00
ps3 powerpc/mm/hash: Add support for Power9 Hash 2016-05-01 18:32:40 +10:00
pseries powerpc/sparse: Include headers containing prototypes 2016-06-16 22:40:19 +10:00
fsl_uli1575.c of/irq: Refactor interrupt-map parsing 2013-10-24 11:43:04 +01:00
Kconfig QE: Move QE from arch/powerpc to drivers/soc 2015-12-22 17:12:56 -06:00
Kconfig.cputype powerpc/mm/radix: Add THP support for 4K linux page size 2016-05-11 21:53:58 +10:00
Makefile powerpc: Remove platforms/wsp and associated pieces 2014-06-11 16:35:38 +10:00