ARM: shmobile: force enable of r8a7790 arch timer
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>
This commit is contained in:
parent
c9dff05030
commit
ab5fdfd5ea
2 changed files with 14 additions and 1 deletions
|
@ -4,5 +4,6 @@
|
||||||
void r8a7790_add_standard_devices(void);
|
void r8a7790_add_standard_devices(void);
|
||||||
void r8a7790_clock_init(void);
|
void r8a7790_clock_init(void);
|
||||||
void r8a7790_pinmux_init(void);
|
void r8a7790_pinmux_init(void);
|
||||||
|
void r8a7790_timer_init(void);
|
||||||
|
|
||||||
#endif /* __ASM_R8A7790_H__ */
|
#endif /* __ASM_R8A7790_H__ */
|
||||||
|
|
|
@ -118,6 +118,18 @@ void __init r8a7790_add_standard_devices(void)
|
||||||
r8a7790_register_irqc(0);
|
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
|
#ifdef CONFIG_USE_OF
|
||||||
void __init r8a7790_add_standard_devices_dt(void)
|
void __init r8a7790_add_standard_devices_dt(void)
|
||||||
{
|
{
|
||||||
|
@ -132,7 +144,7 @@ static const char *r8a7790_boards_compat_dt[] __initdata = {
|
||||||
DT_MACHINE_START(R8A7790_DT, "Generic R8A7790 (Flattened Device Tree)")
|
DT_MACHINE_START(R8A7790_DT, "Generic R8A7790 (Flattened Device Tree)")
|
||||||
.init_irq = irqchip_init,
|
.init_irq = irqchip_init,
|
||||||
.init_machine = r8a7790_add_standard_devices_dt,
|
.init_machine = r8a7790_add_standard_devices_dt,
|
||||||
.init_time = shmobile_timer_init,
|
.init_time = r8a7790_timer_init,
|
||||||
.dt_compat = r8a7790_boards_compat_dt,
|
.dt_compat = r8a7790_boards_compat_dt,
|
||||||
MACHINE_END
|
MACHINE_END
|
||||||
#endif /* CONFIG_USE_OF */
|
#endif /* CONFIG_USE_OF */
|
||||||
|
|
Loading…
Add table
Reference in a new issue