summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2018-11-09 08:01:53 +0100
committerSebastian Huber <sebastian.huber@embedded-brains.de>2018-11-12 13:25:42 +0100
commit685aa280eaa95c2790bc09c42b6dff2261a220d7 (patch)
treeed1ad1c683184f0b149451c7a129141ab172a76d
parentno_cpu: Remove use of proc_ptr (diff)
downloadrtems-685aa280eaa95c2790bc09c42b6dff2261a220d7.tar.bz2
arm: Remove use of proc_ptr
Update #3585.
-rw-r--r--cpukit/score/cpu/arm/armv7m-isr-vector-install.c6
-rw-r--r--cpukit/score/cpu/arm/cpu.c16
-rw-r--r--cpukit/score/cpu/arm/include/rtems/score/cpu.h8
3 files changed, 16 insertions, 14 deletions
diff --git a/cpukit/score/cpu/arm/armv7m-isr-vector-install.c b/cpukit/score/cpu/arm/armv7m-isr-vector-install.c
index cb3abc91a9..26a0c5a31d 100644
--- a/cpukit/score/cpu/arm/armv7m-isr-vector-install.c
+++ b/cpukit/score/cpu/arm/armv7m-isr-vector-install.c
@@ -28,9 +28,9 @@
#ifdef ARM_MULTILIB_ARCH_V7M
void _CPU_ISR_install_vector(
- uint32_t vector,
- proc_ptr new_handler,
- proc_ptr *old_handler
+ uint32_t vector,
+ CPU_ISR_handler new_handler,
+ CPU_ISR_handler *old_handler
)
{
uint32_t level;
diff --git a/cpukit/score/cpu/arm/cpu.c b/cpukit/score/cpu/arm/cpu.c
index 01a43b3cfd..63c31a598d 100644
--- a/cpukit/score/cpu/arm/cpu.c
+++ b/cpukit/score/cpu/arm/cpu.c
@@ -144,24 +144,24 @@ uint32_t _CPU_ISR_Get_level( void )
}
void _CPU_ISR_install_vector(
- uint32_t vector,
- proc_ptr new_handler,
- proc_ptr *old_handler
+ uint32_t vector,
+ CPU_ISR_handler new_handler,
+ CPU_ISR_handler *old_handler
)
{
/* Redirection table starts at the end of the vector table */
- volatile uint32_t *table = (volatile uint32_t *) (MAX_EXCEPTIONS * 4);
+ CPU_ISR_handler *table = (CPU_ISR_handler *) (MAX_EXCEPTIONS * 4);
- uint32_t current_handler = table [vector];
+ CPU_ISR_handler current_handler = table [vector];
/* The current handler is now the old one */
if (old_handler != NULL) {
- *old_handler = (proc_ptr) current_handler;
+ *old_handler = current_handler;
}
/* Write only if necessary to avoid writes to a maybe read-only memory */
- if (current_handler != (uint32_t) new_handler) {
- table [vector] = (uint32_t) new_handler;
+ if (current_handler != new_handler) {
+ table [vector] = new_handler;
}
}
diff --git a/cpukit/score/cpu/arm/include/rtems/score/cpu.h b/cpukit/score/cpu/arm/include/rtems/score/cpu.h
index a44abe167e..bb8270df10 100644
--- a/cpukit/score/cpu/arm/include/rtems/score/cpu.h
+++ b/cpukit/score/cpu/arm/include/rtems/score/cpu.h
@@ -464,10 +464,12 @@ void _CPU_Context_Initialize(
*/
void _CPU_Initialize( void );
+typedef void ( *CPU_ISR_handler )( void );
+
void _CPU_ISR_install_vector(
- uint32_t vector,
- proc_ptr new_handler,
- proc_ptr *old_handler
+ uint32_t vector,
+ CPU_ISR_handler new_handler,
+ CPU_ISR_handler *old_handler
);
/**