diff options
author | Joel Sherrill <joel.sherrill@OARcorp.com> | 1997-08-27 20:31:34 +0000 |
---|---|---|
committer | Joel Sherrill <joel.sherrill@OARcorp.com> | 1997-08-27 20:31:34 +0000 |
commit | 49c2f589482bbbf4e214051da39d48379c80a270 (patch) | |
tree | 2692ea0d37a5cc199b668610231d361da09bd55f /c/src/lib | |
parent | Added rule so TARGET_VARIANTS are dependent on the environment stuff. (diff) | |
download | rtems-49c2f589482bbbf4e214051da39d48379c80a270.tar.bz2 |
Modified to have correct address for vector table on multiple models.
Diffstat (limited to '')
-rw-r--r-- | c/src/lib/libbsp/m68k/mvme162/startup/bspclean.c | 5 | ||||
-rw-r--r-- | c/src/lib/libbsp/m68k/mvme162/startup/bspstart.c | 5 |
2 files changed, 10 insertions, 0 deletions
diff --git a/c/src/lib/libbsp/m68k/mvme162/startup/bspclean.c b/c/src/lib/libbsp/m68k/mvme162/startup/bspclean.c index 29c524838f..5ece315688 100644 --- a/c/src/lib/libbsp/m68k/mvme162/startup/bspclean.c +++ b/c/src/lib/libbsp/m68k/mvme162/startup/bspclean.c @@ -32,7 +32,12 @@ void bsp_return_to_monitor_trap() page_table_teardown(); lcsr->intr_ena = 0; /* disable interrupts */ +#if defined(mvme162lx) + m68k_set_vbr(0x00000000); /* restore 162Bug vectors */ +#else m68k_set_vbr(0xFFE00000); /* restore 162Bug vectors */ +#endif + asm volatile( "trap #15" ); /* trap to 162Bug */ asm volatile( ".short 0x63" ); /* return to 162Bug (.RETURN) */ /* restart program */ diff --git a/c/src/lib/libbsp/m68k/mvme162/startup/bspstart.c b/c/src/lib/libbsp/m68k/mvme162/startup/bspstart.c index 1d4b976eb4..278bf7acc1 100644 --- a/c/src/lib/libbsp/m68k/mvme162/startup/bspstart.c +++ b/c/src/lib/libbsp/m68k/mvme162/startup/bspstart.c @@ -164,9 +164,14 @@ int main( /* * 162Bug Vectors are at 0xFFE00000 + * 162Bug Vectors on LX are at 0x00000000 */ +#if defined(mvme162lx) + monitors_vector_table = (m68k_isr_entry *)0x00000000; +#else monitors_vector_table = (m68k_isr_entry *)0xFFE00000; +#endif m68k_set_vbr( monitors_vector_table ); |