forked from Imagelibrary/rtems
@@ -41,9 +41,6 @@
|
||||
#include <rtems/score/iosh7032.h>
|
||||
#include <rtems/score/sh_io.h>
|
||||
|
||||
/* from cpu_isps.c */
|
||||
extern proc_ptr _Hardware_isr_Table[];
|
||||
|
||||
unsigned long *_old_stack_ptr;
|
||||
|
||||
register unsigned long *stack_ptr __asm__ ("r15");
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
* http://www.rtems.org/license/LICENSE.
|
||||
*/
|
||||
|
||||
#include <rtems/system.h>
|
||||
#include <rtems/score/cpu.h>
|
||||
#include <rtems/score/ispsh7032.h>
|
||||
|
||||
/*
|
||||
@@ -33,7 +33,7 @@
|
||||
*
|
||||
* It has the same structure like the actual vector table (vectab)
|
||||
*/
|
||||
proc_ptr _Hardware_isr_Table[256]={
|
||||
CPU_ISR_raw_handler _Hardware_isr_Table[256]={
|
||||
_dummy_isp, _dummy_isp, _dummy_isp, _dummy_isp,
|
||||
_dummy_isp, _dummy_isp, _dummy_isp, _dummy_isp,
|
||||
_dummy_isp, _dummy_isp, _dummy_isp,
|
||||
|
||||
@@ -39,9 +39,6 @@
|
||||
#include <rtems/score/iosh7045.h>
|
||||
#include <rtems/score/sh_io.h>
|
||||
|
||||
/* from cpu_isps.c */
|
||||
extern proc_ptr _Hardware_isr_Table[];
|
||||
|
||||
unsigned long *_old_stack_ptr;
|
||||
|
||||
register unsigned long *stack_ptr __asm__ ("r15");
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
* by the authors or by TGA Technologies.
|
||||
*/
|
||||
|
||||
#include <rtems/system.h>
|
||||
#include <rtems/score/cpu.h>
|
||||
|
||||
/*
|
||||
* This is a exception vector table
|
||||
@@ -49,7 +49,7 @@
|
||||
/* SH-2 ISR Table */
|
||||
#include <rtems/score/ispsh7045.h>
|
||||
|
||||
proc_ptr _Hardware_isr_Table[256]={
|
||||
CPU_ISR_raw_handler _Hardware_isr_Table[256]={
|
||||
_dummy_isp, _dummy_isp, _dummy_isp, _dummy_isp, /* PWRon Reset, Maual Reset,...*/
|
||||
_dummy_isp, _dummy_isp, _dummy_isp, _dummy_isp,
|
||||
_dummy_isp, _dummy_isp, _dummy_isp,
|
||||
|
||||
@@ -39,9 +39,6 @@
|
||||
#include <rtems/score/sh4_regs.h>
|
||||
#include <rtems/score/sh_io.h>
|
||||
|
||||
/* from cpu_isps.c */
|
||||
extern proc_ptr _Hardware_isr_Table[];
|
||||
|
||||
unsigned long *_old_stack_ptr;
|
||||
|
||||
register unsigned long *stack_ptr __asm__ ("r15");
|
||||
|
||||
@@ -48,7 +48,7 @@ sh_isr_entry set_vector( /* returns old vector */
|
||||
if ( type )
|
||||
rtems_interrupt_catch( handler, vector, (rtems_isr_entry *) &previous_isr );
|
||||
else {
|
||||
_CPU_ISR_install_raw_handler( vector, handler, (proc_ptr*) &previous_isr );
|
||||
_CPU_ISR_install_raw_handler( vector, handler, &previous_isr );
|
||||
}
|
||||
|
||||
return previous_isr;
|
||||
|
||||
@@ -27,7 +27,7 @@
|
||||
* Modified to reflect dummy isp entries for GDB SH simulator by Joel.
|
||||
*/
|
||||
|
||||
#include <rtems/system.h>
|
||||
#include <rtems/score/cpu.h>
|
||||
|
||||
/*
|
||||
* This is a exception vector table
|
||||
@@ -37,7 +37,7 @@
|
||||
|
||||
void _dummy_isp(uint32_t);
|
||||
|
||||
proc_ptr _Hardware_isr_Table[256]={
|
||||
CPU_ISR_raw_handler _Hardware_isr_Table[256]={
|
||||
_dummy_isp, _dummy_isp, _dummy_isp, _dummy_isp, /* PWRon Reset, Maual Reset,...*/
|
||||
_dummy_isp, _dummy_isp, _dummy_isp, _dummy_isp,
|
||||
_dummy_isp, _dummy_isp, _dummy_isp, _dummy_isp,
|
||||
|
||||
@@ -37,11 +37,7 @@
|
||||
#include <rtems/score/sh.h>
|
||||
|
||||
/* referenced in start.S */
|
||||
extern proc_ptr vectab[] ;
|
||||
|
||||
proc_ptr vectab[256] ;
|
||||
|
||||
extern proc_ptr _Hardware_isr_Table[];
|
||||
CPU_ISR_raw_handler vectab[256] ;
|
||||
|
||||
#if SH_HAS_FPU
|
||||
Context_Control_fp _CPU_Null_fp_context;
|
||||
@@ -98,21 +94,18 @@ uint32_t _CPU_ISR_Get_level( void )
|
||||
return ( _mask);
|
||||
}
|
||||
|
||||
/*
|
||||
* _CPU_ISR_install_raw_handler
|
||||
*/
|
||||
|
||||
void _CPU_ISR_install_raw_handler(
|
||||
uint32_t vector,
|
||||
proc_ptr new_handler,
|
||||
proc_ptr *old_handler
|
||||
CPU_ISR_raw_handler new_handler,
|
||||
CPU_ISR_raw_handler *old_handler
|
||||
)
|
||||
|
||||
{
|
||||
/*
|
||||
* This is where we install the interrupt handler into the "raw" interrupt
|
||||
* table used by the CPU to dispatch interrupt handlers.
|
||||
*/
|
||||
volatile proc_ptr *vbr ;
|
||||
volatile CPU_ISR_raw_handler *vbr ;
|
||||
|
||||
#if SH_PARANOID_ISR
|
||||
uint32_t level ;
|
||||
@@ -131,30 +124,14 @@ void _CPU_ISR_install_raw_handler(
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* _CPU_ISR_install_vector
|
||||
*
|
||||
* This kernel routine installs the RTEMS handler for the
|
||||
* specified vector.
|
||||
*
|
||||
* Input parameters:
|
||||
* vector - interrupt vector number
|
||||
* old_handler - former ISR for this vector number
|
||||
* new_handler - replacement ISR for this vector number
|
||||
*
|
||||
* Output parameters: NONE
|
||||
*
|
||||
*/
|
||||
|
||||
void _CPU_ISR_install_vector(
|
||||
uint32_t vector,
|
||||
proc_ptr new_handler,
|
||||
proc_ptr *old_handler
|
||||
CPU_ISR_handler new_handler,
|
||||
CPU_ISR_handler *old_handler
|
||||
)
|
||||
{
|
||||
#if defined(__sh1__) || defined(__sh2__)
|
||||
proc_ptr ignored ;
|
||||
CPU_ISR_raw_handler ignored ;
|
||||
#endif
|
||||
*old_handler = _ISR_Vector_table[ vector ];
|
||||
|
||||
|
||||
@@ -546,29 +546,22 @@ void _CPU_Context_Initialize(
|
||||
*/
|
||||
void _CPU_Initialize(void);
|
||||
|
||||
/*
|
||||
* _CPU_ISR_install_raw_handler
|
||||
*
|
||||
* This routine installs a "raw" interrupt handler directly into the
|
||||
* processor's vector table.
|
||||
*/
|
||||
typedef void ( *CPU_ISR_raw_handler )( void );
|
||||
|
||||
extern CPU_ISR_raw_handler _Hardware_isr_Table[];
|
||||
|
||||
void _CPU_ISR_install_raw_handler(
|
||||
uint32_t vector,
|
||||
proc_ptr new_handler,
|
||||
proc_ptr *old_handler
|
||||
CPU_ISR_raw_handler new_handler,
|
||||
CPU_ISR_raw_handler *old_handler
|
||||
);
|
||||
|
||||
/*
|
||||
* _CPU_ISR_install_vector
|
||||
*
|
||||
* This routine installs an interrupt vector.
|
||||
*/
|
||||
typedef void ( *CPU_ISR_handler )( uint32_t );
|
||||
|
||||
void _CPU_ISR_install_vector(
|
||||
uint32_t vector,
|
||||
proc_ptr new_handler,
|
||||
proc_ptr *old_handler
|
||||
CPU_ISR_handler new_handler,
|
||||
CPU_ISR_handler *old_handler
|
||||
);
|
||||
|
||||
void *_CPU_Thread_Idle_body( uintptr_t ignored );
|
||||
|
||||
Reference in New Issue
Block a user