summaryrefslogtreecommitdiffstats
path: root/bsps/sparc
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2023-03-23 16:53:30 +0100
committerSebastian Huber <sebastian.huber@embedded-brains.de>2024-03-20 16:34:09 +0100
commit1eed6f8bfca86b77174412292ff7807708f4ab3a (patch)
tree54b059527e936d7858de549b18d448a8b6990b57 /bsps/sparc
parentDo not define CONFIGURE_TICKS_PER_TIMESLICE to 0 (diff)
downloadrtems-1eed6f8bfca86b77174412292ff7807708f4ab3a.tar.bz2
bsps: Avoid unused argument in clock interrupt
Pass the parameter of the clock interrupt handler to Clock_driver_support_at_tick() and Clock_driver_timecounter_tick(). This makes it possible to use the interrupt handler argument in clock drivers. Use the interrupt handler provided by Clock_driver_support_install_isr() to avoid local delarations of Clock_isr(). Update #4862.
Diffstat (limited to 'bsps/sparc')
-rw-r--r--bsps/sparc/erc32/clock/ckinit.c8
-rw-r--r--bsps/sparc/leon2/clock/ckinit.c2
-rw-r--r--bsps/sparc/leon3/clock/ckinit.c2
3 files changed, 5 insertions, 7 deletions
diff --git a/bsps/sparc/erc32/clock/ckinit.c b/bsps/sparc/erc32/clock/ckinit.c
index e8cf7188eb..c0101c5839 100644
--- a/bsps/sparc/erc32/clock/ckinit.c
+++ b/bsps/sparc/erc32/clock/ckinit.c
@@ -51,12 +51,10 @@ uint32_t _CPU_Counter_frequency( void )
return ERC32_REAL_TIME_CLOCK_FREQUENCY;
}
-static void erc32_clock_at_tick( void )
+static void erc32_clock_at_tick( SPARC_Counter *counter )
{
- SPARC_Counter *counter;
rtems_interrupt_level level;
- counter = &_SPARC_Counter;
rtems_interrupt_local_disable(level);
ERC32_Clear_interrupt( ERC32_INTERRUPT_REAL_TIME_CLOCK );
@@ -110,7 +108,7 @@ RTEMS_SYSINIT_ITEM(
"Clock", \
RTEMS_INTERRUPT_SHARED, \
_new, \
- NULL \
+ &_SPARC_Counter \
)
#define Clock_driver_support_set_interrupt_affinity( _online_processors ) \
@@ -118,7 +116,7 @@ RTEMS_SYSINIT_ITEM(
(void) _online_processors; \
} while (0)
-#define Clock_driver_support_at_tick() erc32_clock_at_tick()
+#define Clock_driver_support_at_tick(arg) erc32_clock_at_tick(arg)
#define Clock_driver_support_initialize_hardware() erc32_clock_init()
diff --git a/bsps/sparc/leon2/clock/ckinit.c b/bsps/sparc/leon2/clock/ckinit.c
index 31f8bca7ba..3aad931218 100644
--- a/bsps/sparc/leon2/clock/ckinit.c
+++ b/bsps/sparc/leon2/clock/ckinit.c
@@ -121,7 +121,7 @@ uint32_t _CPU_Counter_frequency( void )
NULL \
)
-#define Clock_driver_support_at_tick() leon2_clock_at_tick()
+#define Clock_driver_support_at_tick(arg) leon2_clock_at_tick()
#define Clock_driver_support_initialize_hardware() leon2_clock_init()
diff --git a/bsps/sparc/leon3/clock/ckinit.c b/bsps/sparc/leon3/clock/ckinit.c
index d530f260a8..f0307bf908 100644
--- a/bsps/sparc/leon3/clock/ckinit.c
+++ b/bsps/sparc/leon3/clock/ckinit.c
@@ -202,7 +202,7 @@ static void leon3_clock_initialize(void)
#define Clock_driver_support_initialize_hardware() \
leon3_clock_initialize()
-#define Clock_driver_timecounter_tick() leon3_tc_do_tick()
+#define Clock_driver_timecounter_tick(arg) leon3_tc_do_tick()
#define BSP_FEATURE_IRQ_EXTENSION