Skip to contentSkip to conversation

irq consolidation, new attempt (ppc part)

PATCH New Andrey Panin 1 participant 1 message Jun 30, 2003

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 irq consolidation, new attempt (ppc part)

Hi all,

ppc specific part of irq handling code consolidation patchset. Patch against 2.5.73. Compiles, but untested.

Please take a look.

Best regards.

Signature · 2 lines
Andrey Panin		| Linux and UNIX system administrator
[email protected]		| PGP key: wwwkeys.pgp.net
arch/ppc/Kconfig +4 -0
diff --minimal -urN -X /usr/share/dontdiff linux-2.5.73.vanilla/arch/ppc/Kconfig linux-2.5.73/arch/ppc/Kconfig
@@ -6,6 +6,10 @@
 	bool
 	default y
 
+config GENERIC_IRQ
+	bool
+	default y
+
 config UID16
 	bool
 
arch/ppc/kernel/irq.c +7 -479

552 lines not on this page · raw message

include/asm-ppc/hw_irq.h +31 -0
diff --minimal -urN -X /usr/share/dontdiff linux-2.5.73.vanilla/include/asm-ppc/hw_irq.h linux-2.5.73/include/asm-ppc/hw_irq.h
@@ -71,6 +71,37 @@
 struct hw_interrupt_type;
 static inline void hw_resend_irq(struct hw_interrupt_type *h, unsigned int i) {}
 
+#define arch_ack_bad_irq(irq) do { } while (0)
+
+/* Return a pointer to the irq descriptor for IRQ.  */
+#define irq_desc(irq) (irq_desc + (irq))
+
+/* Check irq number */
+#define irq_valid(irq) ((irq) < NR_IRQS)
+
+/* Arch specific hook for setup_irq() */
+#define arch_setup_irq(irq, desc, irqaction) do { } while (0)
+
+#define for_each_irq(i) for (i = 0; i < NR_IRQS; i++) \
+	if (!irq_valid(i)) \
+		continue; \
+	else
+
+/* Used in setup_irq() */
+#define ARCH_NONSHARED_IRQ_MASK ~(IRQ_DISABLED | IRQ_AUTODETECT | IRQ_WAITING)
+
+#define HAVE_ARCH_IRQ_PROBE
+
+#define ARCH_AFFINITY_WIDTH	8
+
+#ifdef CONFIG_IRQ_ALL_CPUS
+#define ARCH_DEFAULT_CPU_AFFINITY 
+#define ARCH_DEFAULT_IRQ_AFFINITY	~0UL
+#else
+#define ARCH_DEFAULT_IRQ_AFFINITY	0x00000001
+#endif
+
+#define arch_can_create_irq_proc() (1)
 
 #endif /* _PPC_HW_IRQ_H */
 #endif /* __KERNEL__ */