summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/sparc/leon/include
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@OARcorp.com>2001-11-08 13:39:52 +0000
committerJoel Sherrill <joel.sherrill@OARcorp.com>2001-11-08 13:39:52 +0000
commit5354ab0574eb5d4b24007252741a2e169d4a1266 (patch)
treecf9e0aebd97b796e766fcad9fa33e5206e05feda /c/src/lib/libbsp/sparc/leon/include
parent2001-11-07 Jennifer Averett <jennifer@OARcorp.com> (diff)
downloadrtems-5354ab0574eb5d4b24007252741a2e169d4a1266.tar.bz2
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.
Diffstat (limited to 'c/src/lib/libbsp/sparc/leon/include')
-rw-r--r--c/src/lib/libbsp/sparc/leon/include/bsp.h13
1 files changed, 7 insertions, 6 deletions
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 */