mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2025-01-26 13:49:37 +07:00
4013369f37
The switch from using irq_map to irq_alloc_desc*() for managing irq number allocations introduced new bugs in some of the powerpc interrupt code. Several functions rely on the value of NR_IRQS to determine the maximum irq number that could get allocated. However, with sparse_irq and using irq_alloc_desc*() the maximum possible irq number is now specified with 'nr_irqs' which may be a number larger than NR_IRQS. This has caused breakage on powermac when CONFIG_NR_IRQS is set to 32. This patch removes most of the direct references to NR_IRQS in the powerpc code and replaces them with either a nr_irqs reference or by using the common for_each_irq_desc() macro. The powerpc-specific for_each_irq() macro is removed at the same time. Also, the Cell axon_msi driver is refactored to remove the global build assumption on the size of NR_IRQS and instead add a limit to the maximum irq number when calling irq_domain_add_nomap(). Signed-off-by: Grant Likely <grant.likely@secretlab.ca> Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org> |
||
---|---|---|
.. | ||
spufs | ||
axon_msi.c | ||
beat_htab.c | ||
beat_hvCall.S | ||
beat_interrupt.c | ||
beat_interrupt.h | ||
beat_iommu.c | ||
beat_spu_priv1.c | ||
beat_syscall.h | ||
beat_udbg.c | ||
beat_wrapper.h | ||
beat.c | ||
beat.h | ||
cbe_cpufreq_pervasive.c | ||
cbe_cpufreq_pmi.c | ||
cbe_cpufreq.c | ||
cbe_cpufreq.h | ||
cbe_powerbutton.c | ||
cbe_regs.c | ||
cbe_thermal.c | ||
celleb_pci.c | ||
celleb_pci.h | ||
celleb_scc_epci.c | ||
celleb_scc_pciex.c | ||
celleb_scc_sio.c | ||
celleb_scc_uhc.c | ||
celleb_scc.h | ||
celleb_setup.c | ||
cpufreq_spudemand.c | ||
interrupt.c | ||
interrupt.h | ||
iommu.c | ||
Kconfig | ||
Makefile | ||
pervasive.c | ||
pervasive.h | ||
pmu.c | ||
qpace_setup.c | ||
ras.c | ||
ras.h | ||
setup.c | ||
smp.c | ||
spider-pci.c | ||
spider-pic.c | ||
spu_base.c | ||
spu_callbacks.c | ||
spu_fault.c | ||
spu_manage.c | ||
spu_notify.c | ||
spu_priv1_mmio.c | ||
spu_priv1_mmio.h | ||
spu_syscalls.c |