forked from Imagelibrary/rtems
2007-11-30 Till Straumann <strauman@slac.stanford.edu>
* new-exceptions/raw_exception.c, new-exceptions/raw_exception.h, old-exception/cpu.c: define bsp_exceptions_in_RAM variable. This is probably only used by the simulator (were else can you install something to ROM ??).
This commit is contained in:
@@ -1,3 +1,10 @@
|
|||||||
|
2007-11-30 Till Straumann <strauman@slac.stanford.edu>
|
||||||
|
|
||||||
|
* new-exceptions/raw_exception.c, new-exceptions/raw_exception.h,
|
||||||
|
old-exception/cpu.c: define bsp_exceptions_in_RAM variable.
|
||||||
|
This is probably only used by the simulator (were else
|
||||||
|
can you install something to ROM ??).
|
||||||
|
|
||||||
2007-11-30 Till Straumann <strauman@slac.stanford.edu>
|
2007-11-30 Till Straumann <strauman@slac.stanford.edu>
|
||||||
|
|
||||||
* mpc6xx/mmu/bat.c, mpc6xx/mmu/pte121.c: use new
|
* mpc6xx/mmu/bat.c, mpc6xx/mmu/pte121.c: use new
|
||||||
|
|||||||
@@ -39,6 +39,7 @@ static rtems_raw_except_global_settings* local_settings;
|
|||||||
|
|
||||||
void * codemove(void *, const void *, unsigned int, unsigned long);
|
void * codemove(void *, const void *, unsigned int, unsigned long);
|
||||||
|
|
||||||
|
boolean bsp_exceptions_in_RAM = TRUE;
|
||||||
|
|
||||||
static void* ppc_get_vector_addr(rtems_vector vector)
|
static void* ppc_get_vector_addr(rtems_vector vector)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -319,6 +319,20 @@ extern int ppc_vector_is_valid(rtems_vector vector);
|
|||||||
extern int ppc_init_exceptions (rtems_raw_except_global_settings* config);
|
extern int ppc_init_exceptions (rtems_raw_except_global_settings* config);
|
||||||
extern int ppc_get_exception_config (rtems_raw_except_global_settings** config);
|
extern int ppc_get_exception_config (rtems_raw_except_global_settings** config);
|
||||||
|
|
||||||
|
/* This variable is initialized to 'TRUE' by default;
|
||||||
|
* BSPs which have their vectors in ROM should set it
|
||||||
|
* to FALSE prior to initializing raw exceptions.
|
||||||
|
*
|
||||||
|
* I suspect the only candidate is the simulator.
|
||||||
|
* After all, the value of this variable is used to
|
||||||
|
* determine where to install the prologue code and
|
||||||
|
* installing to ROM on anyting that's real ROM
|
||||||
|
* will fail anyways.
|
||||||
|
*
|
||||||
|
* This should probably go away... (T.S. 2007/11/30)
|
||||||
|
*/
|
||||||
|
extern boolean bsp_exceptions_in_RAM;
|
||||||
|
|
||||||
# endif /* ASM */
|
# endif /* ASM */
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
@@ -56,6 +56,20 @@ static void ppc_spurious(int, CPU_Interrupt_frame *);
|
|||||||
int _CPU_spurious_count = 0;
|
int _CPU_spurious_count = 0;
|
||||||
int _CPU_last_spurious = 0;
|
int _CPU_last_spurious = 0;
|
||||||
|
|
||||||
|
/* This variable is initialized to 'TRUE' by default;
|
||||||
|
* BSPs which have their vectors in ROM should set it
|
||||||
|
* to FALSE prior to initializing raw exceptions.
|
||||||
|
*
|
||||||
|
* I suspect the only candidate is the simulator.
|
||||||
|
* After all, the value of this variable is used to
|
||||||
|
* determine where to install the prologue code and
|
||||||
|
* installing to ROM on anyting that's real ROM
|
||||||
|
* will fail anyways.
|
||||||
|
*
|
||||||
|
* This should probably go away... (T.S. 2007/11/30)
|
||||||
|
*/
|
||||||
|
boolean bsp_exceptions_in_RAM = TRUE;
|
||||||
|
|
||||||
void _CPU_Initialize(
|
void _CPU_Initialize(
|
||||||
rtems_cpu_table *cpu_table,
|
rtems_cpu_table *cpu_table,
|
||||||
void (*thread_dispatch) /* ignored on this CPU */
|
void (*thread_dispatch) /* ignored on this CPU */
|
||||||
@@ -308,7 +322,6 @@ void _CPU_ISR_install_vector(
|
|||||||
{
|
{
|
||||||
proc_ptr ignored;
|
proc_ptr ignored;
|
||||||
extern void (*bsp_spurious_handler)(uint32_t vector, CPU_Interrupt_frame *);
|
extern void (*bsp_spurious_handler)(uint32_t vector, CPU_Interrupt_frame *);
|
||||||
extern boolean bsp_exceptions_in_RAM;
|
|
||||||
|
|
||||||
*old_handler = _ISR_Vector_table[ vector ];
|
*old_handler = _ISR_Vector_table[ vector ];
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user