}
 
 static struct irqaction irq_via = {
-       no_action, 0, { { 0, } }, "cascade", NULL, NULL
+       .handler = no_action,
+       .mask = CPU_MASK_NONE,
+       .name = "cascade"
 };
 
 void __init arch_init_irq(void)
 
 }
 
 static struct irqaction ioc_action = {
-       jmr3927_ioc_interrupt, 0, CPU_MASK_NONE, "IOC", NULL, NULL,
+       .handler = jmr3927_ioc_interrupt,
+       .mask = CPU_MASK_NONE,
+       .name = "IOC",
 };
 
 static irqreturn_t jmr3927_pcierr_interrupt(int irq, void *dev_id)
        return IRQ_HANDLED;
 }
 static struct irqaction pcierr_action = {
-       jmr3927_pcierr_interrupt, 0, CPU_MASK_NONE, "PCI error", NULL, NULL,
+       .handler = jmr3927_pcierr_interrupt,
+       .mask = CPU_MASK_NONE,
+       .name = "PCI error",
 };
 
 static void __init jmr3927_irq_init(void);
 
  * IRQ2 is cascade interrupt to second interrupt controller
  */
 static struct irqaction irq2 = {
-       no_action, 0, CPU_MASK_NONE, "cascade", NULL, NULL
+       .handler = no_action,
+       .mask = CPU_MASK_NONE,
+       .name = "cascade",
 };
 
 static struct resource pic1_io_resource = {
 
 extern irqreturn_t crime_memerr_intr(int irq, void *dev_id);
 extern irqreturn_t crime_cpuerr_intr(int irq, void *dev_id);
 
-struct irqaction memerr_irq = { crime_memerr_intr, IRQF_DISABLED,
-                       CPU_MASK_NONE, "CRIME memory error", NULL, NULL };
-struct irqaction cpuerr_irq = { crime_cpuerr_intr, IRQF_DISABLED,
-                       CPU_MASK_NONE, "CRIME CPU error", NULL, NULL };
+struct irqaction memerr_irq = {
+       .handler = crime_memerr_intr,
+       .flags = IRQF_DISABLED,
+       .mask = CPU_MASK_NONE,
+       .name = "CRIME memory error",
+};
+struct irqaction cpuerr_irq = {
+       .handler = crime_cpuerr_intr,
+       .flags = IRQF_DISABLED,
+       .mask = CPU_MASK_NONE,
+       .name = "CRIME CPU error",
+};
 
 /*
  * For interrupts wired from a single device to the CPU.  Only the clock
 
        return (sw_irq);
 }
 
-//#define TOSHIBA_RBTX4927_PIC_ACTION(s) { no_action, 0, CPU_MASK_NONE, s, NULL, NULL }
-#define TOSHIBA_RBTX4927_PIC_ACTION(s) { no_action, IRQF_SHARED, CPU_MASK_NONE, s, NULL, NULL }
-static struct irqaction toshiba_rbtx4927_irq_ioc_action =
-TOSHIBA_RBTX4927_PIC_ACTION(TOSHIBA_RBTX4927_IOC_NAME);
+static struct irqaction toshiba_rbtx4927_irq_ioc_action = {
+       .handler        = no_action,
+       .flags          = IRQF_SHARED,
+       .mask           = CPU_MASK_NONE,
+       .name           = TOSHIBA_RBTX4927_IOC_NAME
+};
 
 
 /**********************************************************************************/