diff options
Diffstat (limited to 'c/src/lib/libbsp')
-rw-r--r-- | c/src/lib/libbsp/sparc/shared/ChangeLog | 6 | ||||
-rw-r--r-- | c/src/lib/libbsp/sparc/shared/start.S | 14 |
2 files changed, 15 insertions, 5 deletions
diff --git a/c/src/lib/libbsp/sparc/shared/ChangeLog b/c/src/lib/libbsp/sparc/shared/ChangeLog index 5331663d7a..775a73f39d 100644 --- a/c/src/lib/libbsp/sparc/shared/ChangeLog +++ b/c/src/lib/libbsp/sparc/shared/ChangeLog @@ -1,3 +1,9 @@ +2000-04-23 Jiri Gaisler <jiri@gaisler.com> + + * start.S: Modificatins to preserve the current CWP and adjust the + WIM accordingly. This improves compatibility with the remote + debugger and the mkprom prom-builder. + 2000-11-13 Jiri Gaisler <jgais@ws.estec.esa.nl> * ChangeLog, .cvsignore, Makefile.am, bspclean.c, bspstart.c, diff --git a/c/src/lib/libbsp/sparc/shared/start.S b/c/src/lib/libbsp/sparc/shared/start.S index a84ed75e2d..2d17a8a8b8 100644 --- a/c/src/lib/libbsp/sparc/shared/start.S +++ b/c/src/lib/libbsp/sparc/shared/start.S @@ -199,14 +199,18 @@ SYM(hard_reset): /* Common initialisation */ - set SYM(trap_table), %g1 ! Initialize TBR + set SYM(trap_table), %g1 ! Initialize TBR mov %g1, %tbr - set WIM_INIT, %g1 ! Initialize WIM - mov %g1, %wim + mov %psr, %g1 ! Initialize WIM + add %g1, 1, %g2 + and %g2, 0x7, %g2 + set 1, %g3 + sll %g3, %g2, %g3 + mov %g3, %wim - set PSR_INIT, %g1 - wr %g1, 0x20, %psr ! enable traps + or %g1, 0x20, %g1 + wr %g1, %psr ! enable traps nop nop |