| From f842e15b14fca61686a1d6488f9edaedecb302ee Mon Sep 17 00:00:00 2001 |
| From: Ley Foon Tan <lftan@altera.com> |
| Date: Wed, 24 Jun 2015 17:52:44 +0800 |
| Subject: [PATCH 2/9] nios2: check number of timer instances |
| |
| Display error message if number of timers is less than 2. |
| |
| Signed-off-by: Ley Foon Tan <lftan@altera.com> |
| --- |
| arch/nios2/kernel/time.c | 15 +++++++++++++-- |
| 1 file changed, 13 insertions(+), 2 deletions(-) |
| |
| diff --git a/arch/nios2/kernel/time.c b/arch/nios2/kernel/time.c |
| index be186a75f622..9e3cc8a40ee9 100644 |
| --- a/arch/nios2/kernel/time.c |
| +++ b/arch/nios2/kernel/time.c |
| @@ -19,7 +19,9 @@ |
| #include <linux/io.h> |
| #include <linux/slab.h> |
| |
| -#define ALTERA_TIMER_STATUS_REG 0 |
| +#define ALTR_TIMER_COMPATIBLE "altr,timer-1.0" |
| + |
| +#define ALTERA_TIMER_STATUS_REG 0 |
| #define ALTERA_TIMER_CONTROL_REG 4 |
| #define ALTERA_TIMER_PERIODL_REG 8 |
| #define ALTERA_TIMER_PERIODH_REG 12 |
| @@ -304,7 +306,16 @@ void read_persistent_clock(struct timespec *ts) |
| |
| void __init time_init(void) |
| { |
| + struct device_node *np; |
| + int count = 0; |
| + |
| + for_each_compatible_node(np, NULL, ALTR_TIMER_COMPATIBLE) |
| + count++; |
| + |
| + if (count < 2) |
| + panic("%d timer is found, it needs 2 timers in system\n", count); |
| + |
| clocksource_of_init(); |
| } |
| |
| -CLOCKSOURCE_OF_DECLARE(nios2_timer, "altr,timer-1.0", nios2_time_init); |
| +CLOCKSOURCE_OF_DECLARE(nios2_timer, ALTR_TIMER_COMPATIBLE, nios2_time_init); |
| -- |
| 2.6.2 |
| |