diff --git a/arch/sh/boards/adx/irq_maskreg.c b/arch/sh/boards/adx/irq_maskreg.c
index ca91bb0f1f5c0dc9305259c833e62612d2b9f061..c0973f8d57bae3c6060a9f4e67ddf9a11adfef21 100644
--- a/arch/sh/boards/adx/irq_maskreg.c
+++ b/arch/sh/boards/adx/irq_maskreg.c
@@ -37,13 +37,13 @@ static void end_maskreg_irq(unsigned int irq);
 
 /* hw_interrupt_type */
 static struct hw_interrupt_type maskreg_irq_type = {
-	" Mask Register",
-	startup_maskreg_irq,
-	shutdown_maskreg_irq,
-	enable_maskreg_irq,
-	disable_maskreg_irq,
-	mask_and_ack_maskreg,
-	end_maskreg_irq
+	.typename = " Mask Register",
+	.startup = startup_maskreg_irq,
+	.shutdown = shutdown_maskreg_irq,
+	.enable = enable_maskreg_irq,
+	.disable = disable_maskreg_irq,
+	.ack = mask_and_ack_maskreg,
+	.end = end_maskreg_irq
 };
 
 /* actual implementatin */
diff --git a/arch/sh/boards/bigsur/irq.c b/arch/sh/boards/bigsur/irq.c
index c188fc32dc9a8c4f1207d9e59cbc83a3b9178ff9..6ddbcc77244da4d81653baa2c6bb2a6bb838debd 100644
--- a/arch/sh/boards/bigsur/irq.c
+++ b/arch/sh/boards/bigsur/irq.c
@@ -228,23 +228,23 @@ static void shutdown_bigsur_irq(unsigned int irq)
 
 /* Define the IRQ structures for the L1 and L2 IRQ types */
 static struct hw_interrupt_type bigsur_l1irq_type = {
-        "BigSur-CPLD-Level1-IRQ",
-        startup_bigsur_irq,
-        shutdown_bigsur_irq,
-        enable_bigsur_l1irq,
-        disable_bigsur_l1irq,
-        mask_and_ack_bigsur,
-        end_bigsur_irq
+	.typename  = "BigSur-CPLD-Level1-IRQ",
+	.startup = startup_bigsur_irq,
+	.shutdown = shutdown_bigsur_irq,
+	.enable = enable_bigsur_l1irq,
+	.disable = disable_bigsur_l1irq,
+	.ack = mask_and_ack_bigsur,
+	.end = end_bigsur_irq
 };
 
 static struct hw_interrupt_type bigsur_l2irq_type = {
-        "BigSur-CPLD-Level2-IRQ",
-        startup_bigsur_irq,
-        shutdown_bigsur_irq,
-        enable_bigsur_l2irq,
-        disable_bigsur_l2irq,
-        mask_and_ack_bigsur,
-        end_bigsur_irq
+	.typename  = "BigSur-CPLD-Level2-IRQ",
+	.startup = startup_bigsur_irq,
+	.shutdown  =shutdown_bigsur_irq,
+	.enable = enable_bigsur_l2irq,
+	.disable = disable_bigsur_l2irq,
+	.ack = mask_and_ack_bigsur,
+	.end = end_bigsur_irq
 };
 
 
diff --git a/arch/sh/boards/cqreek/irq.c b/arch/sh/boards/cqreek/irq.c
index fa6cfe5a20a70512d43c5a6d7c0f4949710122d2..d1da0d844567f66156bff7632a4c73012e466fbe 100644
--- a/arch/sh/boards/cqreek/irq.c
+++ b/arch/sh/boards/cqreek/irq.c
@@ -83,13 +83,13 @@ static void shutdown_cqreek_irq(unsigned int irq)
 }
 
 static struct hw_interrupt_type cqreek_irq_type = {
-	"CqREEK-IRQ",
-	startup_cqreek_irq,
-	shutdown_cqreek_irq,
-	enable_cqreek_irq,
-	disable_cqreek_irq,
-	mask_and_ack_cqreek,
-	end_cqreek_irq
+	.typename = "CqREEK-IRQ",
+	.startup = startup_cqreek_irq,
+	.shutdown = shutdown_cqreek_irq,
+	.enable = enable_cqreek_irq,
+	.disable = disable_cqreek_irq,
+	.ack = mask_and_ack_cqreek,
+	.end = end_cqreek_irq
 };
 
 int cqreek_has_ide, cqreek_has_isa;
diff --git a/arch/sh/boards/harp/irq.c b/arch/sh/boards/harp/irq.c
index acd58489970f4c04ed585fc4b612ebddc9e1cc48..52d0ba39031b7215a1a9c62dc3af49461c6f817f 100644
--- a/arch/sh/boards/harp/irq.c
+++ b/arch/sh/boards/harp/irq.c
@@ -39,13 +39,13 @@ static unsigned int startup_harp_irq(unsigned int irq)
 }
 
 static struct hw_interrupt_type harp_irq_type = {
-	"Harp-IRQ",
-	startup_harp_irq,
-	shutdown_harp_irq,
-	enable_harp_irq,
-	disable_harp_irq,
-	mask_and_ack_harp,
-	end_harp_irq
+	.typename = "Harp-IRQ",
+	.startup = startup_harp_irq,
+	.shutdown = shutdown_harp_irq,
+	.enable = enable_harp_irq,
+	.disable = disable_harp_irq,
+	.ack = mask_and_ack_harp,
+	.end = end_harp_irq
 };
 
 static void disable_harp_irq(unsigned int irq)
diff --git a/arch/sh/boards/overdrive/irq.c b/arch/sh/boards/overdrive/irq.c
index 23adc6be71e728e6fc8a6bba7efdfaf1abe9061f..715e8feb3a68783cc8d1b4375beb632db0f21a7d 100644
--- a/arch/sh/boards/overdrive/irq.c
+++ b/arch/sh/boards/overdrive/irq.c
@@ -86,13 +86,13 @@ static unsigned int startup_od_irq(unsigned int irq)
 }
 
 static struct hw_interrupt_type od_irq_type = {
-	"Overdrive-IRQ",
-	startup_od_irq,
-	shutdown_od_irq,
-	enable_od_irq,
-	disable_od_irq,
-	mask_and_ack_od,
-	end_od_irq
+	.typename = "Overdrive-IRQ",
+	.startup = startup_od_irq,
+	.shutdown = shutdown_od_irq,
+	.enable = enable_od_irq,
+	.disable = disable_od_irq,
+	.ack = mask_and_ack_od,
+	.end = end_od_irq
 };
 
 static void disable_od_irq(unsigned int irq)
diff --git a/arch/sh/boards/renesas/hs7751rvoip/irq.c b/arch/sh/boards/renesas/hs7751rvoip/irq.c
index a7921f67a35fcc42bc352e9b89ca8f7e93e6a326..ed4c5b50ea45edc29cb77c57f0731dfeda251f47 100644
--- a/arch/sh/boards/renesas/hs7751rvoip/irq.c
+++ b/arch/sh/boards/renesas/hs7751rvoip/irq.c
@@ -74,13 +74,13 @@ static void end_hs7751rvoip_irq(unsigned int irq)
 }
 
 static struct hw_interrupt_type hs7751rvoip_irq_type = {
-	"HS7751RVoIP IRQ",
-	startup_hs7751rvoip_irq,
-	shutdown_hs7751rvoip_irq,
-	enable_hs7751rvoip_irq,
-	disable_hs7751rvoip_irq,
-	ack_hs7751rvoip_irq,
-	end_hs7751rvoip_irq,
+	.typename =  "HS7751RVoIP IRQ",
+	.startup = startup_hs7751rvoip_irq,
+	.shutdown = shutdown_hs7751rvoip_irq,
+	.enable = enable_hs7751rvoip_irq,
+	.disable = disable_hs7751rvoip_irq,
+	.ack = ack_hs7751rvoip_irq,
+	.end = end_hs7751rvoip_irq,
 };
 
 static void make_hs7751rvoip_irq(unsigned int irq)
diff --git a/arch/sh/boards/renesas/rts7751r2d/irq.c b/arch/sh/boards/renesas/rts7751r2d/irq.c
index 95717f4f1e2d024f6c4ec890c584c10df64996ab..d36c9374aed1dffc9daf9980a5a8439f3da2dd00 100644
--- a/arch/sh/boards/renesas/rts7751r2d/irq.c
+++ b/arch/sh/boards/renesas/rts7751r2d/irq.c
@@ -88,13 +88,13 @@ static void end_rts7751r2d_irq(unsigned int irq)
 }
 
 static struct hw_interrupt_type rts7751r2d_irq_type = {
-	"RTS7751R2D IRQ",
-	startup_rts7751r2d_irq,
-	shutdown_rts7751r2d_irq,
-	enable_rts7751r2d_irq,
-	disable_rts7751r2d_irq,
-	ack_rts7751r2d_irq,
-	end_rts7751r2d_irq,
+	.typename = "RTS7751R2D IRQ",
+	.startup = startup_rts7751r2d_irq,
+	.shutdown = shutdown_rts7751r2d_irq,
+	.enable = enable_rts7751r2d_irq,
+	.disable = disable_rts7751r2d_irq,
+	.ack = ack_rts7751r2d_irq,
+	.end = end_rts7751r2d_irq,
 };
 
 static void make_rts7751r2d_irq(unsigned int irq)
diff --git a/arch/sh/boards/renesas/systemh/irq.c b/arch/sh/boards/renesas/systemh/irq.c
index 5675a4134eee8e13cc749a4765eb3cf38bfc773a..7a2eb10edb563c4b108b35204528b536aa1d6e45 100644
--- a/arch/sh/boards/renesas/systemh/irq.c
+++ b/arch/sh/boards/renesas/systemh/irq.c
@@ -35,13 +35,13 @@ static void end_systemh_irq(unsigned int irq);
 
 /* hw_interrupt_type */
 static struct hw_interrupt_type systemh_irq_type = {
-	" SystemH Register",
-	startup_systemh_irq,
-	shutdown_systemh_irq,
-	enable_systemh_irq,
-	disable_systemh_irq,
-	mask_and_ack_systemh,
-	end_systemh_irq
+	.typename = " SystemH Register",
+	.startup = startup_systemh_irq,
+	.shutdown = shutdown_systemh_irq,
+	.enable = enable_systemh_irq,
+	.disable = disable_systemh_irq,
+	.ack = mask_and_ack_systemh,
+	.end = end_systemh_irq
 };
 
 static unsigned int startup_systemh_irq(unsigned int irq)
diff --git a/arch/sh/boards/superh/microdev/irq.c b/arch/sh/boards/superh/microdev/irq.c
index 1298883eca4bef862b0884fcdd7ae009f63ade23..1395c1e65da4546948548918473108d42ff0b4f6 100644
--- a/arch/sh/boards/superh/microdev/irq.c
+++ b/arch/sh/boards/superh/microdev/irq.c
@@ -83,13 +83,13 @@ static unsigned int startup_microdev_irq(unsigned int irq)
 }
 
 static struct hw_interrupt_type microdev_irq_type = {
-	"MicroDev-IRQ",
-	startup_microdev_irq,
-	shutdown_microdev_irq,
-	enable_microdev_irq,
-	disable_microdev_irq,
-	mask_and_ack_microdev,
-	end_microdev_irq
+	.typename = "MicroDev-IRQ",
+	.startup = startup_microdev_irq,
+	.shutdown = shutdown_microdev_irq,
+	.enable = enable_microdev_irq,
+	.disable = disable_microdev_irq,
+	.ack = mask_and_ack_microdev,
+	.end = end_microdev_irq
 };
 
 static void disable_microdev_irq(unsigned int irq)
diff --git a/arch/sh/cchips/voyagergx/irq.c b/arch/sh/cchips/voyagergx/irq.c
index 3079234cb65b30d319d72ddf349e6cb85ffcf418..1b6ac523b4584e7cf5518f992cb340d293859484 100644
--- a/arch/sh/cchips/voyagergx/irq.c
+++ b/arch/sh/cchips/voyagergx/irq.c
@@ -87,13 +87,13 @@ static void shutdown_voyagergx_irq(unsigned int irq)
 }
 
 static struct hw_interrupt_type voyagergx_irq_type = {
-	"VOYAGERGX-IRQ",
-	startup_voyagergx_irq,
-	shutdown_voyagergx_irq,
-	enable_voyagergx_irq,
-	disable_voyagergx_irq,
-	mask_and_ack_voyagergx,
-	end_voyagergx_irq,
+	.typename = "VOYAGERGX-IRQ",
+	.startup = startup_voyagergx_irq,
+	.shutdown = shutdown_voyagergx_irq,
+	.enable = enable_voyagergx_irq,
+	.disable = disable_voyagergx_irq,
+	.ack = mask_and_ack_voyagergx,
+	.end = end_voyagergx_irq,
 };
 
 static irqreturn_t voyagergx_interrupt(int irq, void *dev_id, struct pt_regs *regs)
diff --git a/arch/sh/kernel/cpu/irq_imask.c b/arch/sh/kernel/cpu/irq_imask.c
index f76901e732fb801a268fe05cacfa5efd796f231a..a963d00a971e6533f4a7eaacf6c0dc3122c86fc6 100644
--- a/arch/sh/kernel/cpu/irq_imask.c
+++ b/arch/sh/kernel/cpu/irq_imask.c
@@ -46,13 +46,13 @@ static unsigned int startup_imask_irq(unsigned int irq)
 }
 
 static struct hw_interrupt_type imask_irq_type = {
-	"SR.IMASK",
-	startup_imask_irq,
-	shutdown_imask_irq,
-	enable_imask_irq,
-	disable_imask_irq,
-	mask_and_ack_imask,
-	end_imask_irq
+	.typename = "SR.IMASK",
+	.startup = startup_imask_irq,
+	.shutdown = shutdown_imask_irq,
+	.enable = enable_imask_irq,
+	.disable = disable_imask_irq,
+	.ack = mask_and_ack_imask,
+	.end = end_imask_irq
 };
 
 void static inline set_interrupt_registers(int ip)
diff --git a/arch/sh/kernel/cpu/irq_ipr.c b/arch/sh/kernel/cpu/irq_ipr.c
index 7ea3d2d030e5581e847b5d2f9484e5bd41e9a739..71f92096132b3228e373981a267a0900b919d3e5 100644
--- a/arch/sh/kernel/cpu/irq_ipr.c
+++ b/arch/sh/kernel/cpu/irq_ipr.c
@@ -48,13 +48,13 @@ static unsigned int startup_ipr_irq(unsigned int irq)
 }
 
 static struct hw_interrupt_type ipr_irq_type = {
-	"IPR-IRQ",
-	startup_ipr_irq,
-	shutdown_ipr_irq,
-	enable_ipr_irq,
-	disable_ipr_irq,
-	mask_and_ack_ipr,
-	end_ipr_irq
+	.typename = "IPR-IRQ",
+	.startup = startup_ipr_irq,
+	.shutdown = shutdown_ipr_irq,
+	.enable = enable_ipr_irq,
+	.disable = disable_ipr_irq,
+	.ack = mask_and_ack_ipr,
+	.end = end_ipr_irq
 };
 
 static void disable_ipr_irq(unsigned int irq)
@@ -142,13 +142,13 @@ static unsigned int startup_pint_irq(unsigned int irq)
 }
 
 static struct hw_interrupt_type pint_irq_type = {
-	"PINT-IRQ",
-	startup_pint_irq,
-	shutdown_pint_irq,
-	enable_pint_irq,
-	disable_pint_irq,
-	mask_and_ack_pint,
-	end_pint_irq
+	.typename = "PINT-IRQ",
+	.startup = startup_pint_irq,
+	.shutdown = shutdown_pint_irq,
+	.enable = enable_pint_irq,
+	.disable = disable_pint_irq,
+	.ack = mask_and_ack_pint,
+	.end = end_pint_irq
 };
 
 static void disable_pint_irq(unsigned int irq)
diff --git a/arch/sh/kernel/cpu/sh4/irq_intc2.c b/arch/sh/kernel/cpu/sh4/irq_intc2.c
index 099ebbf897457a5b606c9f3acae891d0d717a6b8..f6b16ba01932f89929812c088a7d8808f2c5aa87 100644
--- a/arch/sh/kernel/cpu/sh4/irq_intc2.c
+++ b/arch/sh/kernel/cpu/sh4/irq_intc2.c
@@ -48,13 +48,13 @@ static unsigned int startup_intc2_irq(unsigned int irq)
 }
 
 static struct hw_interrupt_type intc2_irq_type = {
-	"INTC2-IRQ",
-	startup_intc2_irq,
-	shutdown_intc2_irq,
-	enable_intc2_irq,
-	disable_intc2_irq,
-	mask_and_ack_intc2,
-	end_intc2_irq
+	.typename = "INTC2-IRQ",
+	.startup = startup_intc2_irq,
+	.shutdown = shutdown_intc2_irq,
+	.enable = enable_intc2_irq,
+	.disable = disable_intc2_irq,
+	.ack = mask_and_ack_intc2,
+	.end = end_intc2_irq
 };
 
 static void disable_intc2_irq(unsigned int irq)