summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2021-08-10 09:34:32 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2022-09-09 09:12:40 +0200
commit4e546792bccce05db3833ed4fe8cc80675d95a1c (patch)
tree1cd5c97053a57076a72d0246b3eb3b35aee395a7
parente51a121ece53b9f908ff0021624cd9c04418c7d7 (diff)
bsp/leon3: Enable up-counter conditionally
-rw-r--r--bsps/sparc/leon3/clock/ckinit.c5
-rw-r--r--bsps/sparc/leon3/start/cpucounter.c5
2 files changed, 6 insertions, 4 deletions
diff --git a/bsps/sparc/leon3/clock/ckinit.c b/bsps/sparc/leon3/clock/ckinit.c
index e82f3c768b..4f7fa7ab78 100644
--- a/bsps/sparc/leon3/clock/ckinit.c
+++ b/bsps/sparc/leon3/clock/ckinit.c
@@ -268,12 +268,13 @@ static void leon3_clock_initialize(void)
tc->tc_counter_mask = 0xffffffff;
tc->tc_quality = RTEMS_TIMECOUNTER_QUALITY_CLOCK_DRIVER;
- leon3_up_counter_enable();
-
#if defined(LEON3_HAS_ASR_22_23_UP_COUNTER)
+ leon3_up_counter_enable();
leon3_clock_use_up_counter(tc);
#else /* LEON3_HAS_ASR_22_23_UP_COUNTER */
#if defined(LEON3_PROBE_ASR_22_23_UP_COUNTER)
+ leon3_up_counter_enable();
+
if (leon3_up_counter_is_available()) {
/* Use the LEON4 up-counter if available */
leon3_clock_use_up_counter(tc);
diff --git a/bsps/sparc/leon3/start/cpucounter.c b/bsps/sparc/leon3/start/cpucounter.c
index 4809158634..e20684aa56 100644
--- a/bsps/sparc/leon3/start/cpucounter.c
+++ b/bsps/sparc/leon3/start/cpucounter.c
@@ -87,12 +87,13 @@ static void leon3_counter_initialize(void)
counter = &_SPARC_Counter_mutable;
- leon3_up_counter_enable();
-
#if defined(LEON3_HAS_ASR_22_23_UP_COUNTER)
+ leon3_up_counter_enable();
leon3_counter_use_up_counter(counter);
#else /* LEON3_HAS_ASR_22_23_UP_COUNTER */
#if defined(LEON3_PROBE_ASR_22_23_UP_COUNTER)
+ leon3_up_counter_enable();
+
if (leon3_up_counter_is_available()) {
/* Use the LEON4 up-counter if available */
leon3_counter_use_up_counter(counter);