Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/netbsd-1-6]: src/sys/arch/hpcmips/hpcmips Pull up revision 1.5 (requeste...



details:   https://anonhg.NetBSD.org/src/rev/dd79ddc4c880
branches:  netbsd-1-6
changeset: 529777:dd79ddc4c880
user:      he <he%NetBSD.org@localhost>
date:      Thu Dec 12 22:54:46 2002 +0000

description:
Pull up revision 1.5 (requested by shin in ticket #1013):
  Wipe out all physical memory before hibernate/reset.
  Otherwise, WinCE will not boot on some machines (e.g. IBM
  z50).

diffstat:

 sys/arch/hpcmips/hpcmips/locore_machdep.S |  30 +++++++++++++++++++++++++++++-
 1 files changed, 29 insertions(+), 1 deletions(-)

diffs (45 lines):

diff -r a414c382dd9a -r dd79ddc4c880 sys/arch/hpcmips/hpcmips/locore_machdep.S
--- a/sys/arch/hpcmips/hpcmips/locore_machdep.S Thu Dec 12 22:54:18 2002 +0000
+++ b/sys/arch/hpcmips/hpcmips/locore_machdep.S Thu Dec 12 22:54:46 2002 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: locore_machdep.S,v 1.4 2002/01/31 16:27:35 uch Exp $   */
+/*     $NetBSD: locore_machdep.S,v 1.4.10.1 2002/12/12 22:54:46 he Exp $       */
 
 /*
  * Copyright (c) 1992, 1993
@@ -56,7 +56,35 @@
 #include <mips/asm.h>
 #include <mips/cpuregs.h>
 
+#include <hpcmips/vr/vr_asm.h>
+
        .set    noreorder
+/*
+ * void vr_hibernate(void *addr, int len)
+ *     wipe out all physical memory and hibernate
+ */
+LEAF_NOPROFILE(vr_hibernate)
+       la      t0, evr_hibernate
+       la      t1, vr_hibernate
+       subu    t0, t1                  # t0 = length of this function
+       addu    a0, t0
+       subu    a1, t0
+
+1:     sw      zero, 0(a0)
+       subu    a1, 4
+       bnez    a1, 1b
+       addu    a0, 4                   # BDSLOT
+
+       .word   VR_OPCODE_HIBERNATE
+       nop
+       nop
+       nop
+       nop
+       nop
+END(vr_hibernate)
+XLEAF(evr_hibernate)
+       .set    reorder
+
        .align  2
 /*
  * Interrupt counters for vmstat.



Home | Main Index | Thread Index | Old Index