From 9939ecc41208d44263d76df4da2a302bc197f7bb Mon Sep 17 00:00:00 2001 From: Joel Sherrill Date: Tue, 29 Jun 2010 00:31:47 +0000 Subject: 2010-06-28 Joel Sherrill PR 1573/cpukit * irq.c, rtems/score/cpu.h: Add a per cpu data structure which contains the information required by RTEMS for each CPU core. This encapsulates information such as thread executing, heir, idle and dispatch needed. --- cpukit/score/cpu/lm32/ChangeLog | 8 ++++++++ cpukit/score/cpu/lm32/irq.c | 11 +++-------- cpukit/score/cpu/lm32/rtems/score/cpu.h | 14 -------------- 3 files changed, 11 insertions(+), 22 deletions(-) (limited to 'cpukit/score/cpu/lm32') diff --git a/cpukit/score/cpu/lm32/ChangeLog b/cpukit/score/cpu/lm32/ChangeLog index 43beca0f6c..e3ae4fdead 100644 --- a/cpukit/score/cpu/lm32/ChangeLog +++ b/cpukit/score/cpu/lm32/ChangeLog @@ -1,3 +1,11 @@ +2010-06-28 Joel Sherrill + + PR 1573/cpukit + * irq.c, rtems/score/cpu.h: Add a per cpu data structure which contains + the information required by RTEMS for each CPU core. This + encapsulates information such as thread executing, heir, idle and + dispatch needed. + 2010-05-29 Ralf Corsépius * irq.c: Change _exception_stack_frame into void*. diff --git a/cpukit/score/cpu/lm32/irq.c b/cpukit/score/cpu/lm32/irq.c index d2c38b9fd5..0dd2605e30 100644 --- a/cpukit/score/cpu/lm32/irq.c +++ b/cpukit/score/cpu/lm32/irq.c @@ -19,8 +19,9 @@ #include #include -#include #include +#include +#include /* * This routine provides the RTEMS interrupt management. @@ -77,13 +78,7 @@ void __ISR_Handler(uint32_t vector, CPU_Interrupt_frame *ifr) if ( _ISR_Nest_level ) return; - if ( _Thread_Dispatch_disable_level ) { - _ISR_Signals_to_thread_executing = FALSE; - return; - } - - if ( _Context_Switch_necessary || _ISR_Signals_to_thread_executing ) { - _ISR_Signals_to_thread_executing = FALSE; + if ( _Context_Switch_necessary ) { /* save off our stack frame so the context switcher can get to it */ _exception_stack_frame = ifr; diff --git a/cpukit/score/cpu/lm32/rtems/score/cpu.h b/cpukit/score/cpu/lm32/rtems/score/cpu.h index 973fad29b8..7f8d4ba53f 100644 --- a/cpukit/score/cpu/lm32/rtems/score/cpu.h +++ b/cpukit/score/cpu/lm32/rtems/score/cpu.h @@ -560,20 +560,6 @@ SCORE_EXTERN Context_Control_fp _CPU_Null_fp_context; * XXX document implementation including references if appropriate */ -/** - * @ingroup CPUInterrupt - * This variable points to the lowest physical address of the interrupt - * stack. - */ -SCORE_EXTERN void *_CPU_Interrupt_stack_low; - -/** - * @ingroup CPUInterrupt - * This variable points to the lowest physical address of the interrupt - * stack. - */ -SCORE_EXTERN void *_CPU_Interrupt_stack_high; - /* * Nothing prevents the porter from declaring more CPU specific variables. * -- cgit v1.2.3