[MIPS] Fix pb1200/irqmap.c and apply some missed patches
pb1200/irqmap.c had been broken a while due to non-named initializer and had missed some recent IRQ related changes. Apply these commits to this file. [MIPS] IRQ cleanups commit1603b5aca4
[MIPS] use generic_handle_irq, handle_level_irq, handle_percpu_irq commit1417836e81
[MIPS] Compile __do_IRQ() when really needed commite77c232cfc
Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
This commit is contained in:
committed by
Ralf Baechle
parent
06396094b2
commit
19487f1e8a
@@ -137,33 +137,20 @@ static void pb1200_shutdown_irq( unsigned int irq_nr )
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
static inline void pb1200_mask_and_ack_irq(unsigned int irq_nr)
|
|
||||||
{
|
|
||||||
pb1200_disable_irq( irq_nr );
|
|
||||||
}
|
|
||||||
|
|
||||||
static void pb1200_end_irq(unsigned int irq_nr)
|
|
||||||
{
|
|
||||||
if (!(irq_desc[irq_nr].status & (IRQ_DISABLED|IRQ_INPROGRESS))) {
|
|
||||||
pb1200_enable_irq(irq_nr);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
static struct irq_chip external_irq_type =
|
static struct irq_chip external_irq_type =
|
||||||
{
|
{
|
||||||
#ifdef CONFIG_MIPS_PB1200
|
#ifdef CONFIG_MIPS_PB1200
|
||||||
"Pb1200 Ext",
|
.name = "Pb1200 Ext",
|
||||||
#endif
|
#endif
|
||||||
#ifdef CONFIG_MIPS_DB1200
|
#ifdef CONFIG_MIPS_DB1200
|
||||||
"Db1200 Ext",
|
.name = "Db1200 Ext",
|
||||||
#endif
|
#endif
|
||||||
pb1200_startup_irq,
|
.startup = pb1200_startup_irq,
|
||||||
pb1200_shutdown_irq,
|
.shutdown = pb1200_shutdown_irq,
|
||||||
pb1200_enable_irq,
|
.ack = pb1200_disable_irq,
|
||||||
pb1200_disable_irq,
|
.mask = pb1200_disable_irq,
|
||||||
pb1200_mask_and_ack_irq,
|
.mask_ack = pb1200_disable_irq,
|
||||||
pb1200_end_irq,
|
.unmask = pb1200_enable_irq,
|
||||||
NULL
|
|
||||||
};
|
};
|
||||||
|
|
||||||
void _board_init_irq(void)
|
void _board_init_irq(void)
|
||||||
@@ -172,7 +159,8 @@ void _board_init_irq(void)
|
|||||||
|
|
||||||
for (irq_nr = PB1200_INT_BEGIN; irq_nr <= PB1200_INT_END; irq_nr++)
|
for (irq_nr = PB1200_INT_BEGIN; irq_nr <= PB1200_INT_END; irq_nr++)
|
||||||
{
|
{
|
||||||
irq_desc[irq_nr].chip = &external_irq_type;
|
set_irq_chip_and_handler(irq_nr, &external_irq_type,
|
||||||
|
handle_level_irq);
|
||||||
pb1200_disable_irq(irq_nr);
|
pb1200_disable_irq(irq_nr);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user