From c5333725bc33703ea2cbe1f36afa9713c0451648 Mon Sep 17 00:00:00 2001 From: Joel Sherrill Date: Tue, 19 Dec 2000 16:43:34 +0000 Subject: 2000-12-19 Joel Sherrill * cpu.c: Do not read or write raw interrupt vector table if we are on a CPU that does not have a %vbr register and the BSP is configured as having the table in ROM. --- c/src/exec/score/cpu/m68k/ChangeLog | 6 ++++++ c/src/exec/score/cpu/m68k/cpu.c | 3 ++- 2 files changed, 8 insertions(+), 1 deletion(-) (limited to 'c/src/exec/score/cpu/m68k') diff --git a/c/src/exec/score/cpu/m68k/ChangeLog b/c/src/exec/score/cpu/m68k/ChangeLog index 003d565afa..533d182258 100644 --- a/c/src/exec/score/cpu/m68k/ChangeLog +++ b/c/src/exec/score/cpu/m68k/ChangeLog @@ -1,3 +1,9 @@ +2000-12-19 Joel Sherrill + + * cpu.c: Do not read or write raw interrupt vector table if + we are on a CPU that does not have a %vbr register and the + BSP is configured as having the table in ROM. + 2000-11-09 Ralf Corsepius * Makefile.am: Use ... instead of RTEMS_TOPdir in ACLOCAL_AMFLAGS. diff --git a/c/src/exec/score/cpu/m68k/cpu.c b/c/src/exec/score/cpu/m68k/cpu.c index c34564fb32..c7337c378e 100644 --- a/c/src/exec/score/cpu/m68k/cpu.c +++ b/c/src/exec/score/cpu/m68k/cpu.c @@ -95,8 +95,8 @@ void _CPU_ISR_install_raw_handler( */ m68k_get_vbr( interrupt_table ); - *old_handler = interrupt_table[ vector ]; #if ( M68K_HAS_VBR == 1 ) + *old_handler = interrupt_table[ vector ]; interrupt_table[ vector ] = new_handler; #else @@ -107,6 +107,7 @@ void _CPU_ISR_install_raw_handler( * load it appropriately to vector to the RTEMS jump table. */ + *old_handler = _CPU_ISR_jump_table[vector].isr_handler; _CPU_ISR_jump_table[vector].isr_handler = (unsigned32) new_handler; if ( (unsigned32) interrupt_table != 0xFFFFFFFF ) interrupt_table[ vector ] = (proc_ptr) &_CPU_ISR_jump_table[vector]; -- cgit v1.2.3