Skip to content

Commit

Permalink
ARM: shmobile: force enable of r8a7790 arch timer
Browse files Browse the repository at this point in the history
Implement a SoC-specific timer init function for
r8a7790 that makes sure the architected timer
is started regardless of boot loader setting.

Signed-off-by: Magnus Damm <damm@opensource.se>
Tested-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
  • Loading branch information
Magnus Damm authored and Simon Horman committed Apr 9, 2013
1 parent c9dff05 commit ab5fdfd
Show file tree
Hide file tree
Showing 2 changed files with 14 additions and 1 deletion.
1 change: 1 addition & 0 deletions arch/arm/mach-shmobile/include/mach/r8a7790.h
Original file line number Diff line number Diff line change
Expand Up @@ -4,5 +4,6 @@
void r8a7790_add_standard_devices(void);
void r8a7790_clock_init(void);
void r8a7790_pinmux_init(void);
void r8a7790_timer_init(void);

#endif /* __ASM_R8A7790_H__ */
14 changes: 13 additions & 1 deletion arch/arm/mach-shmobile/setup-r8a7790.c
Original file line number Diff line number Diff line change
Expand Up @@ -118,6 +118,18 @@ void __init r8a7790_add_standard_devices(void)
r8a7790_register_irqc(0);
}

void __init r8a7790_timer_init(void)
{
void __iomem *cntcr;

/* make sure arch timer is started by setting bit 0 of CNTCT */
cntcr = ioremap(0xe6080000, PAGE_SIZE);
iowrite32(1, cntcr);
iounmap(cntcr);

shmobile_timer_init();
}

#ifdef CONFIG_USE_OF
void __init r8a7790_add_standard_devices_dt(void)
{
Expand All @@ -132,7 +144,7 @@ static const char *r8a7790_boards_compat_dt[] __initdata = {
DT_MACHINE_START(R8A7790_DT, "Generic R8A7790 (Flattened Device Tree)")
.init_irq = irqchip_init,
.init_machine = r8a7790_add_standard_devices_dt,
.init_time = shmobile_timer_init,
.init_time = r8a7790_timer_init,
.dt_compat = r8a7790_boards_compat_dt,
MACHINE_END
#endif /* CONFIG_USE_OF */

0 comments on commit ab5fdfd

Please sign in to comment.