aboutsummaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorStephen Rothwell <sfr@canb.auug.org.au>2006-01-11 21:54:20 -0500
committerPaul Mackerras <paulus@samba.org>2006-01-12 04:09:30 -0500
commitee2cdecec4dce8f7eb0d37a1bbf820cb32b2b75b (patch)
treefa15ce75b9ae28bdea2352a8f80cb9df43f1322b /arch
parent511061049b2fab5ea684dfddcb8d2a38591391f3 (diff)
[PATCH] powerpc: iSeries fixes for build with no PCI
This reverts part of "ppc64 iSeries: allow build with no PCI" (145d01e4287b8cbf50f87c3283e33bf5c84e8468) which affected generic code and applies a fix in the arch specific code. Commit "partly merge iseries do_IRQ" (5fee9b3b39eb55c7e3619a3b36ceeabffeb8f144) introduced iSeries_get_irq which was only available if CONFIG_PCI is set. Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au> Signed-off-by: Paul Mackerras <paulus@samba.org>
Diffstat (limited to 'arch')
-rw-r--r--arch/powerpc/platforms/iseries/Makefile4
-rw-r--r--arch/powerpc/platforms/iseries/irq.c6
2 files changed, 8 insertions, 2 deletions
diff --git a/arch/powerpc/platforms/iseries/Makefile b/arch/powerpc/platforms/iseries/Makefile
index 127b465308be..ce8c0b943fa0 100644
--- a/arch/powerpc/platforms/iseries/Makefile
+++ b/arch/powerpc/platforms/iseries/Makefile
@@ -1,8 +1,8 @@
1EXTRA_CFLAGS += -mno-minimal-toc 1EXTRA_CFLAGS += -mno-minimal-toc
2 2
3obj-y += hvlog.o hvlpconfig.o lpardata.o setup.o mf.o lpevents.o \ 3obj-y += hvlog.o hvlpconfig.o lpardata.o setup.o mf.o lpevents.o \
4 hvcall.o proc.o htab.o iommu.o misc.o 4 hvcall.o proc.o htab.o iommu.o misc.o irq.o
5obj-$(CONFIG_PCI) += pci.o irq.o vpdinfo.o 5obj-$(CONFIG_PCI) += pci.o vpdinfo.o
6obj-$(CONFIG_IBMVIO) += vio.o 6obj-$(CONFIG_IBMVIO) += vio.o
7obj-$(CONFIG_SMP) += smp.o 7obj-$(CONFIG_SMP) += smp.o
8obj-$(CONFIG_VIOPATH) += viopath.o 8obj-$(CONFIG_VIOPATH) += viopath.o
diff --git a/arch/powerpc/platforms/iseries/irq.c b/arch/powerpc/platforms/iseries/irq.c
index 3d023856405a..83442ea77476 100644
--- a/arch/powerpc/platforms/iseries/irq.c
+++ b/arch/powerpc/platforms/iseries/irq.c
@@ -48,6 +48,8 @@
48extern void iSeries_smp_message_recv(struct pt_regs *); 48extern void iSeries_smp_message_recv(struct pt_regs *);
49#endif 49#endif
50 50
51#ifdef CONFIG_PCI
52
51enum pci_event_type { 53enum pci_event_type {
52 pe_bus_created = 0, /* PHB has been created */ 54 pe_bus_created = 0, /* PHB has been created */
53 pe_bus_error = 1, /* PHB has failed */ 55 pe_bus_error = 1, /* PHB has failed */
@@ -325,6 +327,8 @@ int __init iSeries_allocate_IRQ(HvBusNumber bus,
325 return virtirq; 327 return virtirq;
326} 328}
327 329
330#endif /* CONFIG_PCI */
331
328/* 332/*
329 * Get the next pending IRQ. 333 * Get the next pending IRQ.
330 */ 334 */
@@ -344,6 +348,7 @@ int iSeries_get_irq(struct pt_regs *regs)
344 if (hvlpevent_is_pending()) 348 if (hvlpevent_is_pending())
345 process_hvlpevents(regs); 349 process_hvlpevents(regs);
346 350
351#ifdef CONFIG_PCI
347 if (num_pending_irqs) { 352 if (num_pending_irqs) {
348 spin_lock(&pending_irqs_lock); 353 spin_lock(&pending_irqs_lock);
349 for (irq = 0; irq < NR_IRQS; irq++) { 354 for (irq = 0; irq < NR_IRQS; irq++) {
@@ -357,6 +362,7 @@ int iSeries_get_irq(struct pt_regs *regs)
357 if (irq >= NR_IRQS) 362 if (irq >= NR_IRQS)
358 irq = -2; 363 irq = -2;
359 } 364 }
365#endif
360 366
361 return irq; 367 return irq;
362} 368}