Source-Changes-HG archive

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

[src/trunk]: src/sys/arch/mvme68k Fix bootline argument passing from the Bug ...



details:   https://anonhg.NetBSD.org/src/rev/d4fcaffa055f
branches:  trunk
changeset: 508586:d4fcaffa055f
user:      scw <scw%NetBSD.org@localhost>
date:      Sat Apr 14 13:43:07 2001 +0000

description:
Fix bootline argument passing from the Bug PROM.

diffstat:

 sys/arch/mvme68k/include/prom.h          |   6 +++---
 sys/arch/mvme68k/stand/libbug/bugstart.s |  16 +++++++++-------
 2 files changed, 12 insertions(+), 10 deletions(-)

diffs (59 lines):

diff -r 874103ac2a1e -r d4fcaffa055f sys/arch/mvme68k/include/prom.h
--- a/sys/arch/mvme68k/include/prom.h   Sat Apr 14 13:25:46 2001 +0000
+++ b/sys/arch/mvme68k/include/prom.h   Sat Apr 14 13:43:07 2001 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: prom.h,v 1.10 2000/12/05 21:57:13 scw Exp $    */
+/*     $NetBSD: prom.h,v 1.11 2001/04/14 13:43:07 scw Exp $    */
 
 /*
  * Copyright (c) 1995 Theo de Raadt
@@ -146,10 +146,10 @@
         u_int  ctrl_addr;
         u_int  entry;
         u_int  conf_blk;
+       char    *nbarg_start;
+       char    *nbarg_end;
         char   *arg_start;
         char   *arg_end;
-       char    *nbarg_start;
-       char    *nbarg_end;
        u_int   cputyp;
 };
 
diff -r 874103ac2a1e -r d4fcaffa055f sys/arch/mvme68k/stand/libbug/bugstart.s
--- a/sys/arch/mvme68k/stand/libbug/bugstart.s  Sat Apr 14 13:25:46 2001 +0000
+++ b/sys/arch/mvme68k/stand/libbug/bugstart.s  Sat Apr 14 13:43:07 2001 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: bugstart.s,v 1.1 2000/12/05 21:54:33 scw Exp $ */
+/*     $NetBSD: bugstart.s,v 1.2 2001/04/14 13:43:08 scw Exp $ */
 
 #define _LOCORE
 #include <machine/prom.h>
@@ -21,6 +21,14 @@
 
 ENTRY_NOPROFILE(_start)
 ENTRY_NOPROFILE(start)
+       moveml  %d0/%a0,%sp@-
+       lea     _C_LABEL(edata),%a0
+       movl    #_C_LABEL(end) - 4,%d0
+       subl    %a0,%d0
+       lsrl    #2,%d0
+1:     clrl    %a0@+
+       dbra    %d0,1b
+       moveml  %sp@+,%d0/%a0
        movl    MVMEPROM_REG_DEVLUN, BUG_ARG(MVMEPROM_ARGS_DEVLUN)
        movl    MVMEPROM_REG_CTRLLUN, BUG_ARG(MVMEPROM_ARGS_CTRLLUN)
        movl    MVMEPROM_REG_FLAGS, BUG_ARG(MVMEPROM_ARGS_FLAGS)
@@ -31,12 +39,6 @@
        movl    MVMEPROM_REG_NBARGEND, BUG_ARG(MVMEPROM_ARGS_NBARGEND)
        movl    MVMEPROM_REG_ARGSTART, BUG_ARG(MVMEPROM_ARGS_ARGSTART)
        movl    MVMEPROM_REG_ARGEND, BUG_ARG(MVMEPROM_ARGS_ARGEND)
-       lea     _C_LABEL(edata),%a0
-       movl    #_C_LABEL(end) - 4,%d0
-       subl    %a0,%d0
-       lsrl    #2,%d0
-1:     clrl    %a0@+
-       dbra    %d0,1b
        jmp     _C_LABEL(_bugstart)
 
 ENTRY_NOPROFILE(bugexec)



Home | Main Index | Thread Index | Old Index