Skip to content

Commit

Permalink
ARM: S3C24XX: modify s3c2416 irq init to initialize all irqs
Browse files Browse the repository at this point in the history
Previously the irq init used s3c24xx_init_irq and an additional
arch_initcall to add the cpu specific irqs.

To be able to simplyfy the irq init later, create a new function
s3c416_init_irq, which then calls s3c24xx_init_irq but also adds
the cpu specific irqs.

Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
  • Loading branch information
Heiko Stuebner authored and Kukjin Kim committed Feb 3, 2013
1 parent ef602eb commit 4a282dd
Show file tree
Hide file tree
Showing 3 changed files with 6 additions and 19 deletions.
2 changes: 1 addition & 1 deletion arch/arm/mach-s3c24xx/mach-smdk2416.c
Original file line number Diff line number Diff line change
Expand Up @@ -250,7 +250,7 @@ MACHINE_START(SMDK2416, "SMDK2416")
/* Maintainer: Yauhen Kharuzhy <jekhor@gmail.com> */
.atag_offset = 0x100,

.init_irq = s3c24xx_init_irq,
.init_irq = s3c2416_init_irq,
.map_io = smdk2416_map_io,
.init_machine = smdk2416_machine_init,
.timer = &s3c24xx_timer,
Expand Down
22 changes: 4 additions & 18 deletions arch/arm/plat-s3c24xx/irq.c
Original file line number Diff line number Diff line change
Expand Up @@ -874,10 +874,11 @@ static void s3c2416_irq_add_second(void)
}
}

static int s3c2416_irq_add(struct device *dev,
struct subsys_interface *sif)
void __init s3c2416_init_irq(void)
{
printk(KERN_INFO "S3C2416: IRQ Support\n");
pr_info("S3C2416: IRQ Support\n");

s3c24xx_init_irq();

s3c2416_add_sub(IRQ_LCD, s3c2416_irq_demux_lcd, &s3c2416_irq_lcd,
IRQ_S3C2443_LCD2, IRQ_S3C2443_LCD4);
Expand All @@ -894,21 +895,6 @@ static int s3c2416_irq_add(struct device *dev,
IRQ_S3C2443_WDT, IRQ_S3C2443_AC97);

s3c2416_irq_add_second();

return 0;
}

static struct subsys_interface s3c2416_irq_interface = {
.name = "s3c2416_irq",
.subsys = &s3c2416_subsys,
.add_dev = s3c2416_irq_add,
};

static int __init s3c2416_irq_init(void)
{
return subsys_interface_register(&s3c2416_irq_interface);
}

arch_initcall(s3c2416_irq_init);

#endif
1 change: 1 addition & 0 deletions arch/arm/plat-samsung/include/plat/s3c2416.h
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@ extern int s3c2416_baseclk_add(void);

extern void s3c2416_restart(char mode, const char *cmd);

extern void s3c2416_init_irq(void);
extern struct syscore_ops s3c2416_irq_syscore_ops;

#else
Expand Down

0 comments on commit 4a282dd

Please sign in to comment.