2010-06-28 Joel Sherrill <joel.sherrill@oarcorp.com>

PR 1573/cpukit
	* sh7032/score/cpu_asm.c, sh7045/score/cpu_asm.c,
	sh7750/score/cpu_asm.c, shgdb/score/cpu_asm.c: 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.
This commit is contained in:
Joel Sherrill
2010-06-29 00:39:41 +00:00
parent 5048a0a0b8
commit 61b1c413b7
5 changed files with 13 additions and 12 deletions

View File

@@ -1,3 +1,12 @@
2010-06-28 Joel Sherrill <joel.sherrill@oarcorp.com>
PR 1573/cpukit
* sh7032/score/cpu_asm.c, sh7045/score/cpu_asm.c,
sh7750/score/cpu_asm.c, shgdb/score/cpu_asm.c: 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-21 Joel Sherrill <joel.sherrill@oarcorp.com> 2010-05-21 Joel Sherrill <joel.sherrill@oarcorp.com>
* sh7032/score/cpu_asm.c, sh7045/score/cpu_asm.c, * sh7032/score/cpu_asm.c, sh7045/score/cpu_asm.c,

View File

@@ -173,12 +173,10 @@ void __ISR_Handler( uint32_t vector)
return; return;
if ( _Thread_Dispatch_disable_level ) { if ( _Thread_Dispatch_disable_level ) {
_ISR_Signals_to_thread_executing = FALSE;
return; return;
} }
if ( _Context_Switch_necessary || _ISR_Signals_to_thread_executing ) { if ( _Context_Switch_necessary ) {
_ISR_Signals_to_thread_executing = FALSE;
_Thread_Dispatch(); _Thread_Dispatch();
} }
} }

View File

@@ -175,12 +175,10 @@ void __ISR_Handler( uint32_t vector)
return; return;
if ( _Thread_Dispatch_disable_level ) { if ( _Thread_Dispatch_disable_level ) {
_ISR_Signals_to_thread_executing = FALSE;
return; return;
} }
if ( _Context_Switch_necessary || _ISR_Signals_to_thread_executing ) { if ( _Context_Switch_necessary ) {
_ISR_Signals_to_thread_executing = FALSE;
_Thread_Dispatch(); _Thread_Dispatch();
} }
} }

View File

@@ -98,12 +98,10 @@ void __ISR_Handler( uint32_t vector)
return; return;
if ( _Thread_Dispatch_disable_level ) { if ( _Thread_Dispatch_disable_level ) {
_ISR_Signals_to_thread_executing = FALSE;
return; return;
} }
if ( _Context_Switch_necessary || _ISR_Signals_to_thread_executing ) { if ( _Context_Switch_necessary ) {
_ISR_Signals_to_thread_executing = FALSE;
_Thread_Dispatch(); _Thread_Dispatch();
} }
} }

View File

@@ -72,12 +72,10 @@ void __ISR_Handler( uint32_t vector)
return; return;
if ( _Thread_Dispatch_disable_level ) { if ( _Thread_Dispatch_disable_level ) {
_ISR_Signals_to_thread_executing = FALSE;
return; return;
} }
if ( _Context_Switch_necessary || _ISR_Signals_to_thread_executing ) { if ( _Context_Switch_necessary ) {
_ISR_Signals_to_thread_executing = FALSE;
_Thread_Dispatch(); _Thread_Dispatch();
} }
} }