mirror of
https://github.com/torvalds/linux.git
synced 2024-12-11 05:33:09 +00:00
ARM: S3C24XX: modify s3c2412 irq init to initialize all irqs
Combines the two independent init steps for the irqs into one. Signed-off-by: Heiko Stuebner <heiko@sntech.de> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
This commit is contained in:
parent
d3d5a2c9e6
commit
0da09930d5
@ -36,6 +36,7 @@ extern void s3c2412_init_uarts(struct s3c2410_uartcfg *cfg, int no);
|
||||
extern void s3c2412_init_clocks(int xtal);
|
||||
extern int s3c2412_baseclk_add(void);
|
||||
extern void s3c2412_restart(char mode, const char *cmd);
|
||||
extern void s3c2412_init_irq(void);
|
||||
#else
|
||||
#define s3c2412_init_clocks NULL
|
||||
#define s3c2412_init_uarts NULL
|
||||
|
@ -743,10 +743,12 @@ static struct irq_chip s3c2412_irq_cfsdi = {
|
||||
.irq_unmask = s3c2412_irq_cfsdi_unmask,
|
||||
};
|
||||
|
||||
static int s3c2412_irq_add(struct device *dev, struct subsys_interface *sif)
|
||||
void s3c2412_init_irq(void)
|
||||
{
|
||||
unsigned int irqno;
|
||||
|
||||
s3c24xx_init_irq();
|
||||
|
||||
for (irqno = IRQ_EINT0; irqno <= IRQ_EINT3; irqno++) {
|
||||
irq_set_chip_and_handler(irqno, &s3c2412_irq_eint0t4,
|
||||
handle_edge_irq);
|
||||
@ -762,22 +764,7 @@ static int s3c2412_irq_add(struct device *dev, struct subsys_interface *sif)
|
||||
handle_level_irq);
|
||||
set_irq_flags(irqno, IRQF_VALID);
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static struct subsys_interface s3c2412_irq_interface = {
|
||||
.name = "s3c2412_irq",
|
||||
.subsys = &s3c2412_subsys,
|
||||
.add_dev = s3c2412_irq_add,
|
||||
};
|
||||
|
||||
static int s3c2412_irq_init(void)
|
||||
{
|
||||
return subsys_interface_register(&s3c2412_irq_interface);
|
||||
}
|
||||
|
||||
arch_initcall(s3c2412_irq_init);
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_CPU_S3C2416
|
||||
|
@ -660,7 +660,7 @@ MACHINE_START(JIVE, "JIVE")
|
||||
/* Maintainer: Ben Dooks <ben-linux@fluff.org> */
|
||||
.atag_offset = 0x100,
|
||||
|
||||
.init_irq = s3c24xx_init_irq,
|
||||
.init_irq = s3c2412_init_irq,
|
||||
.map_io = jive_map_io,
|
||||
.init_machine = jive_machine_init,
|
||||
.init_time = samsung_timer_init,
|
||||
|
@ -130,7 +130,7 @@ MACHINE_START(S3C2413, "S3C2413")
|
||||
.atag_offset = 0x100,
|
||||
|
||||
.fixup = smdk2413_fixup,
|
||||
.init_irq = s3c24xx_init_irq,
|
||||
.init_irq = s3c2412_init_irq,
|
||||
.map_io = smdk2413_map_io,
|
||||
.init_machine = smdk2413_machine_init,
|
||||
.init_time = samsung_timer_init,
|
||||
@ -142,7 +142,7 @@ MACHINE_START(SMDK2412, "SMDK2412")
|
||||
.atag_offset = 0x100,
|
||||
|
||||
.fixup = smdk2413_fixup,
|
||||
.init_irq = s3c24xx_init_irq,
|
||||
.init_irq = s3c2412_init_irq,
|
||||
.map_io = smdk2413_map_io,
|
||||
.init_machine = smdk2413_machine_init,
|
||||
.init_time = samsung_timer_init,
|
||||
@ -154,7 +154,7 @@ MACHINE_START(SMDK2413, "SMDK2413")
|
||||
.atag_offset = 0x100,
|
||||
|
||||
.fixup = smdk2413_fixup,
|
||||
.init_irq = s3c24xx_init_irq,
|
||||
.init_irq = s3c2412_init_irq,
|
||||
.map_io = smdk2413_map_io,
|
||||
.init_machine = smdk2413_machine_init,
|
||||
.init_time = samsung_timer_init,
|
||||
|
@ -158,7 +158,7 @@ MACHINE_START(VSTMS, "VSTMS")
|
||||
.atag_offset = 0x100,
|
||||
|
||||
.fixup = vstms_fixup,
|
||||
.init_irq = s3c24xx_init_irq,
|
||||
.init_irq = s3c2412_init_irq,
|
||||
.init_machine = vstms_init,
|
||||
.map_io = vstms_map_io,
|
||||
.init_time = samsung_timer_init,
|
||||
|
Loading…
Reference in New Issue
Block a user