linux_dsm_epyc7002/arch/powerpc/sysdev
Timur Tabi 14b9247019 powerpc/mpic: Add support for discontiguous cores
There is one place in the MPIC driver that assumes that the cores are numbered
from 0 to n-1.  However, this is not true if the CPUs are not numbered
sequentially.  This can happen on a eight-core SOC where cores two and three
are removed in the device tree.  So instead of blindly looping, we iterate
over the discovered CPUs and use the SMP ID as the index.

This means that we no longer ask the MPIC how many CPUs there are, so
we also delete mpic->num_cpus.

We also catch if the number of CPUs in the SOC exceeds the number that the
MPIC supports.  This should never happen, of course, but it's good to be
sure.

Signed-off-by: Timur Tabi <timur@freescale.com>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
2011-09-20 09:19:42 +10:00
..
bestcomm Fix common misspellings 2011-03-31 11:26:23 -03:00
qe_lib treewide: Convert uses of struct resource to resource_size(ptr) 2011-06-10 14:55:36 +02:00
xics Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2011-07-25 13:56:39 -07:00
6xx-suspend.S [POWERPC] Add 6xx-style HID0_SLEEP support. 2008-05-16 23:22:28 +10:00
axonram.c treewide: Convert uses of struct resource to resource_size(ptr) 2011-06-10 14:55:36 +02:00
cpm1.c treewide: Convert uses of struct resource to resource_size(ptr) 2011-06-10 14:55:36 +02:00
cpm2_pic.c powerpc/irq: Stop exporting irq_map 2011-05-04 15:02:15 +10:00
cpm2_pic.h powerpc/cpm2: Checkpatch cleanup 2010-03-04 10:43:58 -06:00
cpm2.c powerpc/fsl-cpm: Configure clock correctly for SCC 2010-04-19 23:13:03 -05:00
cpm_common.c treewide: Convert uses of struct resource to resource_size(ptr) 2011-06-10 14:55:36 +02:00
dart_iommu.c treewide: Convert uses of struct resource to resource_size(ptr) 2011-06-10 14:55:36 +02:00
dart.h [POWERPC] Use 4kB iommu pages even on 64kB-page systems 2006-11-01 14:52:48 +11:00
dcr-low.S powerpc/4xx: Extended DCR support v2 2008-12-21 14:21:15 +11:00
dcr.c powerpc: Const-qualify Device Node Argument to DCR Resource Extent API 2008-12-21 14:21:16 +11:00
ehv_pic.c powerpc: introduce the ePAPR embedded hypervisor vmpic driver 2011-06-27 08:30:26 -05:00
fsl_85xx_cache_ctlr.h powerpc/85xx: add cache-sram support 2010-10-14 00:54:38 -05:00
fsl_85xx_cache_sram.c powerpc: Remove ioremap_flags 2011-05-19 14:30:43 +10:00
fsl_85xx_l2ctlr.c Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc 2011-03-18 06:31:43 -07:00
fsl_gtm.c of/address: Clean up function declarations 2010-08-01 01:42:42 -06:00
fsl_lbc.c powerpc/85xx: fix race bug of calling request_irq after enable elbc interrupts 2011-06-03 00:09:09 -05:00
fsl_msi.c treewide: Convert uses of struct resource to resource_size(ptr) 2011-06-10 14:55:36 +02:00
fsl_msi.h powerpc/fsl_msi: add removal path and probe failing path 2010-05-24 21:26:35 -05:00
fsl_pci.c Merge branch 'next/cross-platform' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/linux-arm-soc 2011-07-26 17:12:10 -07:00
fsl_pci.h powerpc/fsl_pci: Add support for FSL PCIe controllers v2.x 2011-03-15 09:29:56 -05:00
fsl_pmc.c dt/powerpc: Eliminate users of of_platform_{,un}register_driver 2011-02-28 01:36:39 -07:00
fsl_rio.c arch/powerpc/sysdev/fsl_rio.c: correct IECSR register clear value 2011-08-25 18:51:06 -07:00
fsl_soc.c atomic: use <linux/atomic.h> 2011-07-26 16:49:47 -07:00
fsl_soc.h powerpc: add Freescale hypervisor partition control functions 2011-06-27 08:30:53 -05:00
grackle.c powerpc: rename ppc_pci_*_flags to pci_*_flags 2011-07-12 09:28:04 -05:00
i8259.c powerpc: Remove i8259 irq_host_ops->unmap 2011-05-19 15:31:41 +10:00
indirect_pci.c Fix common misspellings 2011-03-31 11:26:23 -03:00
ipic.c treewide: Convert uses of struct resource to resource_size(ptr) 2011-06-10 14:55:36 +02:00
ipic.h [POWERPC] ipic: ack only for edge interrupts 2007-12-12 01:53:07 -06:00
Kconfig powerpc/4xx: Adding PCIe MSI support 2011-05-26 15:00:37 +10:00
Makefile powerpc: introduce the ePAPR embedded hypervisor vmpic driver 2011-06-27 08:30:26 -05:00
micropatch.c powerpc/cpm1: Mark micropatch code/data static and __init 2010-07-11 11:04:06 -05:00
mmio_nvram.c treewide: Convert uses of struct resource to resource_size(ptr) 2011-06-10 14:55:36 +02:00
mpc5xxx_clocks.c powerpc/5xxx: Add common mpc5xxx_get_bus_frequency() function 2009-06-17 00:30:22 -06:00
mpc8xx_pic.c treewide: Convert uses of struct resource to resource_size(ptr) 2011-06-10 14:55:36 +02:00
mpc8xx_pic.h [POWERPC] 8xx: mpc885ads pcmcia support 2007-07-10 00:33:51 -05:00
mpc8xxx_gpio.c powerpc/irq: Stop exporting irq_map 2011-05-04 15:02:15 +10:00
mpic_msi.c powerpc: Fix MSI support on U4 bridge PCIe slot 2009-12-18 14:55:43 +11:00
mpic_pasemi_msi.c powerpc: Convert to new irq_* function names 2011-03-29 14:48:12 +02:00
mpic_u3msi.c powerpc: Convert to new irq_* function names 2011-03-29 14:48:12 +02:00
mpic.c powerpc/mpic: Add support for discontiguous cores 2011-09-20 09:19:42 +10:00
mpic.h powerpc: mpic irq_data conversion. 2011-03-10 11:03:56 +11:00
msi_bitmap.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
mv64x60_dev.c powerpc/mv64x60: Suspected typo in assignment 2011-03-02 16:50:05 +11:00
mv64x60_pci.c powerpc/pci: Remove owner field from attribute initialization in PCI bridge init 2010-08-05 13:53:35 -07:00
mv64x60_pic.c powerpc/irq: Stop exporting irq_map 2011-05-04 15:02:15 +10:00
mv64x60_udbg.c treewide: Convert uses of struct resource to resource_size(ptr) 2011-06-10 14:55:36 +02:00
mv64x60.h [POWERPC] Add Marvell mv64x60 udbg putc/getc functions 2007-09-22 14:49:21 +10:00
of_rtc.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
pmi.c dt/powerpc: Eliminate users of of_platform_{,un}register_driver 2011-02-28 01:36:39 -07:00
ppc4xx_cpm.c powerpc/4xx: Add suspend and idle support 2010-11-29 10:05:06 -05:00
ppc4xx_gpio.c of/gpio: add default of_xlate function if device has a node pointer 2010-07-05 16:14:30 -06:00
ppc4xx_msi.c powerpc/4xx: Adding PCIe MSI support 2011-05-26 15:00:37 +10:00
ppc4xx_pci.c Merge remote-tracking branch 'jwb/next' into next 2011-08-30 15:14:46 +10:00
ppc4xx_pci.h powerpc/4xx: enable and fix pcie gen1/gen2 on the 460sx 2011-08-11 13:51:18 -04:00
ppc4xx_soc.c powerpc/4xx: Add optional "reset_type" property to control reboot via dts 2010-05-05 12:51:54 -04:00
rtc_cmos_setup.c powerpc: rtc_cmos_setup: assign interrupts only if there is i8259 PIC 2008-07-28 08:47:38 -05:00
scom.c powerpc: Add SCOM infrastructure 2011-04-20 17:01:19 +10:00
simple_gpio.c of/gpio: add default of_xlate function if device has a node pointer 2010-07-05 16:14:30 -06:00
simple_gpio.h powerpc: Implement GPIO driver for simple memory-mapped banks 2008-12-30 11:13:45 -06:00
tsi108_dev.c atomic: use <linux/atomic.h> 2011-07-26 16:49:47 -07:00
tsi108_pci.c powerpc: Convert to new irq_* function names 2011-03-29 14:48:12 +02:00
uic.c powerpc/irq: Stop exporting irq_map 2011-05-04 15:02:15 +10:00
xilinx_intc.c powerpc/irq: Stop exporting irq_map 2011-05-04 15:02:15 +10:00
xilinx_pci.c powerpc/virtex: Add support for Xilinx PCI host bridge 2009-06-06 10:14:22 -06:00