aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMaxime Ripard <maxime.ripard@free-electrons.com>2014-09-02 12:05:04 -0400
committerNicolas Ferre <nicolas.ferre@atmel.com>2014-09-03 04:55:45 -0400
commitd2992e51e799099e319aeaaa8648917954f59a3b (patch)
tree9c9f0ede82d89e06a756f3ad93dac20456e70a39
parent64568d1dbd673aca3de8d2a17b9db507c5b85df7 (diff)
ARM: at91: soc: Add init_time callback
Introduce an init_time callback to the at91_init_soc structure to be able to tweak the init_time machine callback on a per-soc basis, instead of having to rely on a global one. Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com> Acked-by: Boris BREZILLON <boris.brezillon@free-electrons.com> Acked-by: Alexandre Belloni <alexandre.belloni@free-electrons.com> Acked-by: Daniel Lezcano <daniel.lezcano@linaro.org> Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com> Conflicts: arch/arm/mach-at91/setup.c
-rw-r--r--arch/arm/mach-at91/generic.h1
-rw-r--r--arch/arm/mach-at91/setup.c5
-rw-r--r--arch/arm/mach-at91/soc.h1
3 files changed, 7 insertions, 0 deletions
diff --git a/arch/arm/mach-at91/generic.h b/arch/arm/mach-at91/generic.h
index 31cba6d9aa61..fb99dabab8f7 100644
--- a/arch/arm/mach-at91/generic.h
+++ b/arch/arm/mach-at91/generic.h
@@ -44,6 +44,7 @@ extern void __init at91_sysirq_mask_rtt(u32 rtt_base);
44extern void __init at91_register_devices(void); 44extern void __init at91_register_devices(void);
45 45
46 /* Timer */ 46 /* Timer */
47extern void __init at91_init_time(void);
47extern void at91rm9200_ioremap_st(u32 addr); 48extern void at91rm9200_ioremap_st(u32 addr);
48extern void at91rm9200_timer_init(void); 49extern void at91rm9200_timer_init(void);
49extern void at91sam926x_ioremap_pit(u32 addr); 50extern void at91sam926x_ioremap_pit(u32 addr);
diff --git a/arch/arm/mach-at91/setup.c b/arch/arm/mach-at91/setup.c
index d2cade21ebd7..51c22a2fcea4 100644
--- a/arch/arm/mach-at91/setup.c
+++ b/arch/arm/mach-at91/setup.c
@@ -416,3 +416,8 @@ void __init at91_register_devices(void)
416{ 416{
417 at91_boot_soc.register_devices(); 417 at91_boot_soc.register_devices();
418} 418}
419
420void __init at91_init_time(void)
421{
422 at91_boot_soc.init_time();
423}
diff --git a/arch/arm/mach-at91/soc.h b/arch/arm/mach-at91/soc.h
index ab983f2cc7dd..2886b83dd0df 100644
--- a/arch/arm/mach-at91/soc.h
+++ b/arch/arm/mach-at91/soc.h
@@ -13,6 +13,7 @@ struct at91_init_soc {
13 void (*register_clocks)(void); 13 void (*register_clocks)(void);
14 void (*register_devices)(void); 14 void (*register_devices)(void);
15 void (*init)(void); 15 void (*init)(void);
16 void (*init_time)(void);
16}; 17};
17 18
18extern struct at91_init_soc at91_boot_soc; 19extern struct at91_init_soc at91_boot_soc;