diff options
Diffstat (limited to 'c/src/lib/libbsp/sparc/leon')
-rw-r--r-- | c/src/lib/libbsp/sparc/leon/ChangeLog | 8 | ||||
-rw-r--r-- | c/src/lib/libbsp/sparc/leon/include/bsp.h | 13 |
2 files changed, 15 insertions, 6 deletions
diff --git a/c/src/lib/libbsp/sparc/leon/ChangeLog b/c/src/lib/libbsp/sparc/leon/ChangeLog index 119e0ce329..162bd14c75 100644 --- a/c/src/lib/libbsp/sparc/leon/ChangeLog +++ b/c/src/lib/libbsp/sparc/leon/ChangeLog @@ -1,3 +1,11 @@ +2001-11-08 Jiri Gaisler <jiri@gaisler.com> + + This fix is in response to test results reported by Jerry Needell + <jerry.needell@unh.edu> for the SPARC/ERC32 and tracked as PR80. + * include/bsp.h: TM27 was not running properly because the ERC32 + and LEON cannot nest interrupts at the same level. The BSP test support + had to be modified to support using two different interrupt sources. + 2001-10-12 Joel Sherrill <joel@OARcorp.com> * clock/ckinit.c, console/console.c, include/bsp.h, include/leon.h, diff --git a/c/src/lib/libbsp/sparc/leon/include/bsp.h b/c/src/lib/libbsp/sparc/leon/include/bsp.h index 0dd991751b..1d9b58f1cd 100644 --- a/c/src/lib/libbsp/sparc/leon/include/bsp.h +++ b/c/src/lib/libbsp/sparc/leon/include/bsp.h @@ -4,6 +4,7 @@ * * COPYRIGHT (c) 1989-1998. * On-Line Applications Research Corporation (OAR). + * Copyright assigned to U.S. Government, 1994. * * The license and distribution terms for this file may be * found in the file LICENSE in this distribution or at @@ -26,8 +27,6 @@ extern "C" { #endif -#include <bspopts.h> - #include <rtems.h> #include <iosupp.h> #include <leon.h> @@ -94,15 +93,17 @@ extern "C" { #define TEST_INTERRUPT_SOURCE LEON_INTERRUPT_EXTERNAL_1 #define TEST_VECTOR LEON_TRAP_TYPE( TEST_INTERRUPT_SOURCE ) - +#define TEST_INTERRUPT_SOURCE2 LEON_INTERRUPT_EXTERNAL_1+1 +#define TEST_VECTOR2 LEON_TRAP_TYPE( TEST_INTERRUPT_SOURCE2 ) #define MUST_WAIT_FOR_INTERRUPT 1 #define Install_tm27_vector( handler ) \ - set_vector( (handler), TEST_VECTOR, 1 ); + set_vector( (handler), TEST_VECTOR, 1 ); \ + set_vector( (handler), TEST_VECTOR2, 1 ); #define Cause_tm27_intr() \ do { \ - LEON_Force_interrupt( TEST_INTERRUPT_SOURCE ); \ + LEON_Force_interrupt( TEST_INTERRUPT_SOURCE+(Interrupt_nest>>1)); \ nop(); \ nop(); \ nop(); \ @@ -122,7 +123,7 @@ extern "C" { extern void Clock_delay(rtems_unsigned32 microseconds); -#define rtems_bsp_delay( microseconds ) Clock_delay(microseconds) +#define delay( microseconds ) Clock_delay(microseconds) /* Constants */ |