diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2014-12-05 11:07:02 +0100 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2014-12-05 11:07:02 +0100 |
commit | 4a3db517e4c850a064a85642abce240b7a470af1 (patch) | |
tree | 755b90cf756b172722ef47736e76e48bb654ef6b /c/src/lib/libbsp | |
parent | Update bug report URL (diff) | |
download | rtems-4a3db517e4c850a064a85642abce240b7a470af1.tar.bz2 |
bsps/sparc: Fix trap table initialization
Fixes bug introduced with dff1803cfbec3775fff1b9c34cc707c05494dc3b.
Diffstat (limited to 'c/src/lib/libbsp')
-rw-r--r-- | c/src/lib/libbsp/sparc/erc32/startup/spurious.c | 10 | ||||
-rw-r--r-- | c/src/lib/libbsp/sparc/leon2/startup/spurious.c | 10 | ||||
-rw-r--r-- | c/src/lib/libbsp/sparc/leon3/startup/spurious.c | 2 |
3 files changed, 13 insertions, 9 deletions
diff --git a/c/src/lib/libbsp/sparc/erc32/startup/spurious.c b/c/src/lib/libbsp/sparc/erc32/startup/spurious.c index 05f6efa74f..3d2128a82f 100644 --- a/c/src/lib/libbsp/sparc/erc32/startup/spurious.c +++ b/c/src/lib/libbsp/sparc/erc32/startup/spurious.c @@ -155,14 +155,16 @@ void bsp_spurious_initialize() /* * Skip window overflow, underflow, and flush as well as software - * trap 0 which we will use as a shutdown. Also avoid trap 0x70 - 0x7f - * which cannot happen and where some of the space is used to pass - * paramaters to the program. + * trap 0,9,10 which we will use as a shutdown, IRQ disable, IRQ enable. + * Also avoid trap 0x70 - 0x7f which cannot happen and where some of the + * space is used to pass parameters to the program. */ if (( trap == 5 || trap == 6 ) || (( trap >= 0x11 ) && ( trap <= 0x1f )) || - (( trap >= 0x70 ) && ( trap <= 0x83 ))) + (( trap >= 0x70 ) && ( trap <= 0x83 )) || + ( trap == 0x80 + SPARC_SWTRAP_IRQDIS ) || + ( trap == 0x80 + SPARC_SWTRAP_IRQEN )) continue; set_vector( (rtems_isr_entry) bsp_spurious_handler, diff --git a/c/src/lib/libbsp/sparc/leon2/startup/spurious.c b/c/src/lib/libbsp/sparc/leon2/startup/spurious.c index 6b43a39dd9..43435d955c 100644 --- a/c/src/lib/libbsp/sparc/leon2/startup/spurious.c +++ b/c/src/lib/libbsp/sparc/leon2/startup/spurious.c @@ -142,14 +142,16 @@ void bsp_spurious_initialize() /* * Skip window overflow, underflow, and flush as well as software - * trap 0 which we will use as a shutdown. Also avoid trap 0x70 - 0x7f - * which cannot happen and where some of the space is used to pass - * paramaters to the program. + * trap 0,9,10 which we will use as a shutdown, IRQ disable, IRQ enable. + * Also avoid trap 0x70 - 0x7f which cannot happen and where some of the + * space is used to pass parameters to the program. */ if (( trap == 5 || trap == 6 ) || (( trap >= 0x11 ) && ( trap <= 0x1f )) || - (( trap >= 0x70 ) && ( trap <= 0x83 ))) + (( trap >= 0x70 ) && ( trap <= 0x83 )) || + ( trap == 0x80 + SPARC_SWTRAP_IRQDIS ) || + ( trap == 0x80 + SPARC_SWTRAP_IRQEN )) continue; set_vector( diff --git a/c/src/lib/libbsp/sparc/leon3/startup/spurious.c b/c/src/lib/libbsp/sparc/leon3/startup/spurious.c index f4b02e3c3d..0fb784963b 100644 --- a/c/src/lib/libbsp/sparc/leon3/startup/spurious.c +++ b/c/src/lib/libbsp/sparc/leon3/startup/spurious.c @@ -149,7 +149,7 @@ void bsp_spurious_initialize() * Skip window overflow, underflow, and flush as well as software * trap 0,9,10 which we will use as a shutdown, IRQ disable, IRQ enable. * Also avoid trap 0x70 - 0x7f which cannot happen and where some of the - * space is used to pass paramaters to the program. + * space is used to pass parameters to the program. */ if (( trap == 5 ) || ( trap == 6 ) || |