summaryrefslogtreecommitdiff
path: root/sys/arch/mvme68k/mvme68k/locore.s
diff options
context:
space:
mode:
Diffstat (limited to 'sys/arch/mvme68k/mvme68k/locore.s')
-rw-r--r--sys/arch/mvme68k/mvme68k/locore.s10
1 files changed, 8 insertions, 2 deletions
diff --git a/sys/arch/mvme68k/mvme68k/locore.s b/sys/arch/mvme68k/mvme68k/locore.s
index b2c88a95167..0686489cb2c 100644
--- a/sys/arch/mvme68k/mvme68k/locore.s
+++ b/sys/arch/mvme68k/mvme68k/locore.s
@@ -1927,13 +1927,19 @@ Lbootnot040:
not147:
movl #0xfff40000,a0 | MVME16x: "struct vme2reg *"
- movl a0@(60),d0
+ movl a0@(0x60),d0
movl d0,d1
andl #0x40000000,d1 | is VME2_TCTL_SCON set?
beq 1f | not SCON. may not use SRESET.
orw #0x00800000,d0 | ok, assert VME2_TCTL_SRST
- movl d0,a0@(60)
+ movl d0,a0@(0x60)
1:
+ | lets try the local bus reset
+ movl #0xfff40000,a0 | MVME16x: "struct vme2reg *"
+ movl a0@(0x104),d0
+ orw #0x00000080,d0
+ movl d0,a0@(0x104)
+ | lets try jumping off to rom.
movl #0xff800000,a0 | if we get here, SRESET did not work.
movl a0@(4),a0 | try jumping directly to the ROM.
jsr a0@