Skip to contentSkip to conversation

irq handling code consolidation (v850 part)

PATCH In review Andrey Panin 2 participants 2 messages Mar 13, 2003 – Mar 14, 2003

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 irq handling code consolidation (v850 part)

Hi,

irq handling code consolidation continues.

v850 specific patch attached. Untested.

Best regards.

Signature · 2 lines
Andrey Panin		| Embedded systems software developer
[email protected]	| PGP key: wwwkeys.pgp.net
arch/v850/Kconfig +3 -0
diff --minimal -urN -X /usr/share/dontdiff linux-2.5.64.vanilla/arch/v850/Kconfig linux-2.5.64/arch/v850/Kconfig
@@ -16,6 +16,9 @@
 config UID16
 	bool
 	default n
+config GENERIC_IRQ
+	bool
+	default y
 config RWSEM_GENERIC_SPINLOCK
 	bool
 	default y
arch/v850/kernel/irq.c +3 -538

563 lines not on this page · raw message

include/asm-v850/hw_irq.h +19 -0
diff --minimal -urN -X /usr/share/dontdiff linux-2.5.64.vanilla/include/asm-v850/hw_irq.h linux-2.5.64/include/asm-v850/hw_irq.h
@@ -5,4 +5,23 @@
 {
 }
 
+#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)
+
+/* Used in setup_irq() */
+#define ARCH_NONSHARED_IRQ_MASK \
+	~(IRQ_DISABLED | IRQ_AUTODETECT | IRQ_WAITING | IRQ_INPROGRESS)
+
+#define HAVE_ARCH_IRQ_PROC
+
+#define register_irq_proc(irq) do { } while (0)
+
 #endif /* __V850_HW_IRQ_H__ */
#1 lore raw
Quoted 2 lines · Andrey Panin

irq handling code consolidation continues.
v850 specific patch attached. Untested.

Works great on the v850.

Here's a small v850 tweak that you might add to your patch (fixes one printf warning, removes an unused variable):

arch/v850/kernel/irq.c renamed from arch/v850/kernel/irq.c.~1~ +3 -3
diff -up linux-2.5.64-moo/arch/v850/kernel/irq.c.\~1\~ linux-2.5.64-moo/arch/v850/kernel/irq.c
@@ -27,8 +27,6 @@
 
 extern atomic_t irq_err_count;
 
-volatile unsigned long spurious_count;
-
 /*
  * Generic, controller-independent functions:
  */
@@ -73,7 +71,9 @@ int show_interrupts(struct seq_file *p, 
 			seq_printf(p, ", %s", action->name);
 		seq_putc(p, '\n');
 	}
-	seq_printf(p, "ERR: %10lu\n", atomic_read(&irq_err_count));
+
+	seq_printf(p, "ERR: %10u\n", atomic_read(&irq_err_count));
+
 	return 0;
 }
 

Thanks,

-Miles

Signature · 1 line
Fast, small, soon; pick any 2.