From 21c468b7b71fcf519cecb29d5ff1b0d9c26a1b5b Mon Sep 17 00:00:00 2001 From: Joel Sherrill Date: Fri, 29 Mar 2002 14:17:58 +0000 Subject: 2002-03-28 Ralf Corsepius * cpu.c: Replace NO_TABLE_MOVE-support by external function (code moved to libcpu/sparc/tbr/tbr.c). * cpu.h: Replace NO_TABLE_MOVE-support by external function (code moved to libcpu/sparc/tbr/tbr.h). * sparc.h: Add sparc_init_tbr (implemented in libcpu/sparc/tbr/tbr.c). --- cpukit/score/cpu/sparc/cpu.c | 34 ++-------------------------------- 1 file changed, 2 insertions(+), 32 deletions(-) (limited to 'cpukit/score/cpu/sparc/cpu.c') diff --git a/cpukit/score/cpu/sparc/cpu.c b/cpukit/score/cpu/sparc/cpu.c index 876676248c..cbbddc9426 100644 --- a/cpukit/score/cpu/sparc/cpu.c +++ b/cpukit/score/cpu/sparc/cpu.c @@ -55,38 +55,8 @@ void _CPU_Initialize( { void *pointer; -#ifndef NO_TABLE_MOVE - unsigned32 trap_table_start; - unsigned32 tbr_value; - CPU_Trap_table_entry *old_tbr; - CPU_Trap_table_entry *trap_table; - - /* - * Install the executive's trap table. All entries from the original - * trap table are copied into the executive's trap table. This is essential - * since this preserves critical trap handlers such as the window underflow - * and overflow handlers. It is the responsibility of the BSP to provide - * install these in the initial trap table. - */ - - - trap_table_start = (unsigned32) &_CPU_Trap_Table_area; - if (trap_table_start & (SPARC_TRAP_TABLE_ALIGNMENT-1)) - trap_table_start = (trap_table_start + SPARC_TRAP_TABLE_ALIGNMENT) & - ~(SPARC_TRAP_TABLE_ALIGNMENT-1); - - trap_table = (CPU_Trap_table_entry *) trap_table_start; - - sparc_get_tbr( tbr_value ); - - old_tbr = (CPU_Trap_table_entry *) (tbr_value & 0xfffff000); - - memcpy( trap_table, (void *) old_tbr, 256 * sizeof( CPU_Trap_table_entry ) ); - - sparc_set_tbr( trap_table_start ); - -#endif - + sparc_init_tbr(); + #if (SPARC_HAS_FPU == 1) /* -- cgit v1.2.3