The timer initialization is done implicitly when CONFIG_TIMER is enabled. There is no need to re-configure the timer again. Even worse, another call to the timer init function may lead to a re-init of the counter register and therefore non consecutive timer values.
This patch makes sure, that timer_init() is not called in case that CONFIG_TIMER is configured. Signed-off-by: Stefan Roese <s...@denx.de> --- common/board_f.c | 2 +- common/board_r.c | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/common/board_f.c b/common/board_f.c index b1f67bfa72aa..fbc5d3e9d205 100644 --- a/common/board_f.c +++ b/common/board_f.c @@ -851,7 +851,7 @@ static const init_fnc_t init_sequence_f[] = { /* get CPU and bus clocks according to the environment variable */ get_clocks, /* get CPU and bus clocks (etc.) */ #endif -#if !defined(CONFIG_M68K) +#if !defined(CONFIG_M68K) && !IS_ENABLED(CONFIG_TIMER) timer_init, /* initialize timer */ #endif #if defined(CONFIG_BOARD_POSTCLK_INIT) diff --git a/common/board_r.c b/common/board_r.c index 56575e552df8..149cfdc3d351 100644 --- a/common/board_r.c +++ b/common/board_r.c @@ -745,7 +745,8 @@ static init_fnc_t init_sequence_r[] = { kgdb_init, #endif interrupt_init, -#if defined(CONFIG_MICROBLAZE) || defined(CONFIG_M68K) +#if (defined(CONFIG_MICROBLAZE) || defined(CONFIG_M68K)) && \ + !IS_ENABLED(CONFIG_TIMER) timer_init, /* initialize timer */ #endif #if defined(CONFIG_LED_STATUS) -- 2.37.3