patch-2.4.19 linux-2.4.19/arch/mips/baget/balo.c

Next file: linux-2.4.19/arch/mips/baget/balo_supp.S
Previous file: linux-2.4.19/arch/mips/baget/bagetIRQ.S
Back to the patch index
Back to the overall index

diff -urN linux-2.4.18/arch/mips/baget/balo.c linux-2.4.19/arch/mips/baget/balo.c
@@ -1,9 +1,7 @@
-/* $Id$
- *
+/*
  * balo.c: BAget LOader
  *
  * Copyright (C) 1998 Gleb Raiko & Vladimir Roganov
- *
  */
 #include <linux/kernel.h>
 #include <asm/system.h>
@@ -42,27 +40,29 @@
 
 static __inline__ void reset_and_jump(int start, int mem_upper)
 {
+	unsigned long tmp;
+
 	__asm__ __volatile__(
                 ".set\tnoreorder\n\t"
                 ".set\tnoat\n\t"
-                "mfc0\t$1,$12\n\t"
+                "mfc0\t$1, $12\n\t"
                 "nop\n\t"
                 "nop\n\t"
                 "nop\n\t"
-                "ori\t$1,$1,0xff00\n\t"
-                "xori\t$1,$1,0xff00\n\t"
-                "mtc0\t$1,$12\n\t"
+                "ori\t$1, $1, 0xff00\n\t"
+                "xori\t$1, $1, 0xff00\n\t"
+                "mtc0\t$1, $12\n\t"
                 "nop\n\t"
                 "nop\n\t"
                 "nop\n\t"
-		"move\t$4,%1\n\t"
-		"jr\t%0\n\t"
+		"move\t%0, %2\n\t"
+		"jr\t%1\n\t"
 		"nop\n\t"
                 ".set\tat\n\t"
                 ".set\treorder"           
-                : /* no outputs */
-                :"Ir" (start), "Ir" (mem_upper)
-                :"$1", "$4", "memory");
+                : "=&r" (tmp)
+                : "Ir" (start), "Ir" (mem_upper)
+                : "memory");
 }
 
 static void start_kernel(void)

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)