diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2021-07-16 11:32:37 +0200 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2023-07-14 12:21:33 +0200 |
commit | de278269ac41480d34559abf62d5aa262f1925d2 (patch) | |
tree | ffa134e5ad56bf463738f51da62584a8c466773f /bsps/sparc/leon3/start | |
parent | bsp/leon3: Add LEON3_IRQAMP_PROBE_TIMESTAMP (diff) | |
download | rtems-de278269ac41480d34559abf62d5aa262f1925d2.tar.bz2 |
bsp/leon3: Add LEON3_HAS_ASR_22_23_UP_COUNTER
Diffstat (limited to 'bsps/sparc/leon3/start')
-rw-r--r-- | bsps/sparc/leon3/start/cpucounter.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/bsps/sparc/leon3/start/cpucounter.c b/bsps/sparc/leon3/start/cpucounter.c index 18fc8099f2..d09dbe651b 100644 --- a/bsps/sparc/leon3/start/cpucounter.c +++ b/bsps/sparc/leon3/start/cpucounter.c @@ -68,6 +68,7 @@ static void leon3_counter_use_irqamp_timestamp( } #endif +#if !defined(LEON3_HAS_ASR_22_23_UP_COUNTER) static void leon3_counter_use_gptimer(SPARC_Counter *counter, gptimer *gpt) { gptimer_timer *timer; @@ -88,19 +89,25 @@ static void leon3_counter_use_gptimer(SPARC_Counter *counter, gptimer *gpt) (grlib_load_32(&gpt->sreload) + 1); #endif } +#endif static void leon3_counter_initialize(void) { #if defined(LEON3_IRQAMP_PROBE_TIMESTAMP) irqamp_timestamp *irqmp_ts; #endif +#if !defined(LEON3_HAS_ASR_22_23_UP_COUNTER) gptimer *gpt; +#endif SPARC_Counter *counter; counter = &_SPARC_Counter_mutable; leon3_up_counter_enable(); +#if defined(LEON3_HAS_ASR_22_23_UP_COUNTER) + leon3_counter_use_up_counter(counter); +#else /* LEON3_HAS_ASR_22_23_UP_COUNTER */ if (leon3_up_counter_is_available()) { /* Use the LEON4 up-counter if available */ leon3_counter_use_up_counter(counter); @@ -123,6 +130,7 @@ static void leon3_counter_initialize(void) /* Fall back to the first GPTIMER if available */ leon3_counter_use_gptimer(counter, gpt); } +#endif /* LEON3_HAS_ASR_22_23_UP_COUNTER */ } RTEMS_SYSINIT_ITEM( |