IRQ: move a few more bits into common code
authorJan Beulich <jbeulich@suse.com>
Mon, 7 Nov 2011 15:28:26 +0000 (16:28 +0100)
committerJan Beulich <jbeulich@suse.com>
Mon, 7 Nov 2011 15:28:26 +0000 (16:28 +0100)
... as they're not really arch-specific.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
Acked-by: Keir Fraser <keir@xen.org>
xen/arch/ia64/xen/irq.c
xen/arch/x86/irq.c
xen/common/irq.c

index 73f0969622ae4ba1cd4a1aba2b0752bf24af487f..d514fc48483b6875bae037c04c49a5a41d5198b4 100644 (file)
@@ -105,15 +105,6 @@ void __do_IRQ_guest(int irq);
  * Special irq handlers.
  */
 
-void no_action(int cpl, void *dev_id, struct pt_regs *regs) { }
-
-/*
- * Generic no controller code
- */
-
-static void enable_none(unsigned int irq) { }
-static unsigned int startup_none(unsigned int irq) { return 0; }
-static void disable_none(unsigned int irq) { }
 static void ack_none(unsigned int irq)
 {
 /*
@@ -124,18 +115,14 @@ static void ack_none(unsigned int irq)
        printk(KERN_ERR "Unexpected irq vector 0x%x on CPU %u!\n", irq, smp_processor_id());
 }
 
-/* startup is the same as "enable", shutdown is same as "disable" */
-#define shutdown_none  disable_none
-#define end_none       enable_none
-
 hw_irq_controller no_irq_type = {
-       "none",
-       startup_none,
-       shutdown_none,
-       enable_none,
-       disable_none,
-       ack_none,
-       end_none
+       .typename = "none",
+       .startup = irq_startup_none,
+       .shutdown = irq_shutdown_none,
+       .enable = irq_enable_none,
+       .disable = irq_disable_none,
+       .ack = ack_none,
+       .end = irq_actor_none
 };
 
 /*
index ca80e9c0deb35c83b9c0ade1140e2377a0a85bc1..71670ddd6e01ea5ce53772ce8dee7421afb46c93 100644 (file)
@@ -358,10 +358,6 @@ int __init init_irq_data(void)
 
 static void __do_IRQ_guest(int vector);
 
-void no_action(int cpl, void *dev_id, struct cpu_user_regs *regs) { }
-
-void irq_actor_none(struct irq_desc *desc) { }
-unsigned int irq_startup_none(struct irq_desc *desc) { return 0; }
 static void ack_none(struct irq_desc *desc)
 {
     ack_bad_irq(desc->irq);
index 83761505f023e84e4fe7e24d02f1295d03d301c8..6d37dd4a1c36192981c548f8788217041fa26353 100644 (file)
@@ -26,3 +26,16 @@ int init_one_irq_desc(struct irq_desc *desc)
 
     return err;
 }
+
+void no_action(int cpl, void *dev_id, struct cpu_user_regs *regs)
+{
+}
+
+void irq_actor_none(struct irq_desc *desc)
+{
+}
+
+unsigned int irq_startup_none(struct irq_desc *desc)
+{
+    return 0;
+}