summaryrefslogtreecommitdiffstats
path: root/bsps/arm/tms570/clock/clock.c
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/arm/tms570/clock/clock.c
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 '')
-rw-r--r--bsps/arm/tms570/clock/clock.c20
1 files changed, 9 insertions, 11 deletions
diff --git a/bsps/arm/tms570/clock/clock.c b/bsps/arm/tms570/clock/clock.c
index 5e5965a680..2e71440857 100644
--- a/bsps/arm/tms570/clock/clock.c
+++ b/bsps/arm/tms570/clock/clock.c
@@ -144,9 +144,9 @@ static void tms570_clock_driver_support_initialize_hardware( void )
*
* @retval Void
*/
-static void tms570_clock_driver_support_at_tick( void )
+static void tms570_clock_driver_support_at_tick(volatile tms570_rti_t *rti)
{
- TMS570_RTI.INTFLAG = TMS570_RTI_INTFLAG_INT0;
+ rti->INTFLAG = TMS570_RTI_INTFLAG_INT0;
}
/**
@@ -158,7 +158,7 @@ static void tms570_clock_driver_support_at_tick( void )
* @retval Void
*/
static void tms570_clock_driver_support_install_isr(
- rtems_isr_entry Clock_isr
+ rtems_interrupt_handler handler
)
{
rtems_status_code sc = RTEMS_SUCCESSFUL;
@@ -167,8 +167,8 @@ static void tms570_clock_driver_support_install_isr(
TMS570_IRQ_TIMER_0,
"Clock",
RTEMS_INTERRUPT_UNIQUE,
- (rtems_interrupt_handler) Clock_isr,
- NULL
+ handler,
+ RTEMS_DEVOLATILE(tms570_rti_t *, &TMS570_RTI)
);
if ( sc != RTEMS_SUCCESSFUL ) {
rtems_fatal_error_occurred(0xdeadbeef);
@@ -177,14 +177,12 @@ static void tms570_clock_driver_support_install_isr(
#define Clock_driver_support_initialize_hardware \
tms570_clock_driver_support_initialize_hardware
-#define Clock_driver_support_at_tick \
- tms570_clock_driver_support_at_tick
+#define Clock_driver_support_at_tick(arg) \
+ tms570_clock_driver_support_at_tick(arg)
#define Clock_driver_support_initialize_hardware \
tms570_clock_driver_support_initialize_hardware
-#define Clock_driver_support_install_isr(Clock_isr) \
- tms570_clock_driver_support_install_isr( Clock_isr )
-
-void Clock_isr(void *arg); /* to supress warning */
+#define Clock_driver_support_install_isr(handler) \
+ tms570_clock_driver_support_install_isr(handler)
#include "../../../shared/dev/clock/clockimpl.h"