瀏覽代碼

arm: unify reset command

Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Jean-Christophe PLAGNIOL-VILLARD 16 年之前
父節點
當前提交
ab29823151
共有 16 個文件被更改,包括 54 次插入131 次删除
  1. 0 8
      cpu/arm1136/cpu.c
  2. 0 8
      cpu/arm1176/cpu.c
  3. 0 8
      cpu/arm720t/cpu.c
  4. 0 8
      cpu/arm920t/cpu.c
  5. 0 8
      cpu/arm925t/cpu.c
  6. 0 8
      cpu/arm926ejs/cpu.c
  7. 0 10
      cpu/arm946es/cpu.c
  8. 0 9
      cpu/arm_cortexa8/cpu.c
  9. 0 10
      cpu/arm_intcm/cpu.c
  10. 0 12
      cpu/ixp/cpu.c
  11. 0 9
      cpu/lh7a40x/cpu.c
  12. 0 12
      cpu/pxa/cpu.c
  13. 0 9
      cpu/s3c44b0/cpu.c
  14. 0 12
      cpu/sa1100/cpu.c
  15. 1 0
      lib_arm/Makefile
  16. 53 0
      lib_arm/reset.c

+ 0 - 8
cpu/arm1136/cpu.c

@@ -83,14 +83,6 @@ int cleanup_before_linux (void)
 	return 0;
 }
 
-int do_reset (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])
-{
-	disable_interrupts ();
-	reset_cpu (0);
-	/*NOTREACHED*/
-	return(0);
-}
-
 static void cache_flush(void)
 {
 	unsigned long i = 0;

+ 0 - 8
cpu/arm1176/cpu.c

@@ -79,14 +79,6 @@ void reset_cpu (ulong ignored)
 	/*NOTREACHED*/
 }
 
-int do_reset (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])
-{
-	disable_interrupts ();
-	reset_cpu (0);
-	/*NOTREACHED*/
-	return 0;
-}
-
 /* flush I/D-cache */
 static void cache_flush (void)
 {

+ 0 - 8
cpu/arm720t/cpu.c

@@ -86,14 +86,6 @@ int cleanup_before_linux (void)
 	return 0;
 }
 
-int do_reset (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])
-{
-	disable_interrupts ();
-	reset_cpu (0);
-	/*NOTREACHED*/
-	return (0);
-}
-
 #if defined(CONFIG_IMPA7) || defined(CONFIG_EP7312) || defined(CONFIG_ARMADILLO)
 /* flush I/D-cache */
 static void cache_flush (void)

+ 0 - 8
cpu/arm920t/cpu.c

@@ -72,14 +72,6 @@ int cleanup_before_linux (void)
 	return 0;
 }
 
-int do_reset (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])
-{
-	disable_interrupts ();
-	reset_cpu (0);
-	/*NOTREACHED*/
-	return 0;
-}
-
 /* flush I/D-cache */
 static void cache_flush (void)
 {

+ 0 - 8
cpu/arm925t/cpu.c

@@ -73,14 +73,6 @@ int cleanup_before_linux (void)
 	return 0;
 }
 
-int do_reset (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])
-{
-	disable_interrupts ();
-	reset_cpu (0);
-	/*NOTREACHED*/
-	return (0);
-}
-
 /* flush I/D-cache */
 static void cache_flush (void)
 {

+ 0 - 8
cpu/arm926ejs/cpu.c

@@ -73,14 +73,6 @@ int cleanup_before_linux (void)
 	return 0;
 }
 
-int do_reset (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])
-{
-	disable_interrupts ();
-	reset_cpu (0);
-	/*NOTREACHED*/
-	return (0);
-}
-
 /* flush I/D-cache */
 static void cache_flush (void)
 {

+ 0 - 10
cpu/arm946es/cpu.c

@@ -76,16 +76,6 @@ int cleanup_before_linux (void)
 	return 0;
 }
 
-int do_reset (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])
-{
-	extern void reset_cpu (ulong addr);
-
-	disable_interrupts ();
-	reset_cpu (0);
-	/*NOTREACHED*/
-	return (0);
-}
-
 /* flush I/D-cache */
 static void cache_flush (void)
 {

+ 0 - 9
cpu/arm_cortexa8/cpu.c

@@ -95,15 +95,6 @@ int cleanup_before_linux(void)
 	return 0;
 }
 
-int do_reset(cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])
-{
-	disable_interrupts();
-	reset_cpu(0);
-
-	/* NOTREACHED */
-	return 0;
-}
-
 void l2cache_enable()
 {
 	unsigned long i;

+ 0 - 10
cpu/arm_intcm/cpu.c

@@ -66,13 +66,3 @@ int cleanup_before_linux (void)
 
 	return (0);
 }
-
-int do_reset (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])
-{
-	extern void reset_cpu (ulong addr);
-
-	disable_interrupts ();
-	reset_cpu (0);
-	/*NOTREACHED*/
-	return (0);
-}

+ 0 - 12
cpu/ixp/cpu.c

@@ -113,18 +113,6 @@ int cleanup_before_linux (void)
 	return 0;
 }
 
-int do_reset (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])
-{
-	printf ("resetting ...\n");
-
-	udelay (50000);				/* wait 50 ms */
-	disable_interrupts ();
-	reset_cpu (0);
-
-	/*NOTREACHED*/
-	return (0);
-}
-
 /* flush I/D-cache */
 static void cache_flush (void)
 {

+ 0 - 9
cpu/lh7a40x/cpu.c

@@ -73,15 +73,6 @@ int cleanup_before_linux (void)
 	return 0;
 }
 
-int do_reset (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])
-{
-	disable_interrupts ();
-	reset_cpu (0);
-	/*NOTREACHED*/
-	return (0);
-}
-
-
 /* flush I/D-cache */
 static void cache_flush (void)
 {

+ 0 - 12
cpu/pxa/cpu.c

@@ -74,18 +74,6 @@ int cleanup_before_linux (void)
 	return (0);
 }
 
-int do_reset (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])
-{
-	printf ("resetting ...\n");
-
-	udelay (50000);				/* wait 50 ms */
-	disable_interrupts ();
-	reset_cpu (0);
-
-	/*NOTREACHED*/
-	return (0);
-}
-
 /* flush I/D-cache */
 static void cache_flush (void)
 {

+ 0 - 9
cpu/s3c44b0/cpu.c

@@ -72,12 +72,3 @@ void reset_cpu (ulong addr)
 		/*NOP*/
 	}
 }
-
-int do_reset (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])
-{
-	disable_interrupts ();
-	reset_cpu (0);
-
-	/*NOTREACHED*/
-	return (0);
-}

+ 0 - 12
cpu/sa1100/cpu.c

@@ -73,18 +73,6 @@ int cleanup_before_linux (void)
 	return (0);
 }
 
-int do_reset (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])
-{
-	printf ("resetting ...\n");
-
-	udelay (50000);				/* wait 50 ms */
-	disable_interrupts ();
-	reset_cpu (0);
-
-	/*NOTREACHED*/
-	return (0);
-}
-
 /* flush I/D-cache */
 static void cache_flush (void)
 {

+ 1 - 0
lib_arm/Makefile

@@ -40,6 +40,7 @@ COBJS-y	+= cache-cp15.o
 endif
 COBJS-y	+= div0.o
 COBJS-y	+= interrupts.o
+COBJS-y	+= reset.o
 
 SRCS	:= $(SOBJS-y:.o=.S) $(COBJS-y:.o=.c)
 OBJS	:= $(addprefix $(obj),$(SOBJS-y) $(COBJS-y))

+ 53 - 0
lib_arm/reset.c

@@ -0,0 +1,53 @@
+/*
+ * (C) Copyright 2002
+ * Sysgo Real-Time Solutions, GmbH <www.elinos.com>
+ * Marius Groeger <mgroeger@sysgo.de>
+ *
+ * (C) Copyright 2002
+ * Sysgo Real-Time Solutions, GmbH <www.elinos.com>
+ * Alex Zuepke <azu@sysgo.de>
+ *
+ * (C) Copyright 2002
+ * Gary Jennejohn, DENX Software Engineering, <gj@denx.de>
+ *
+ * (C) Copyright 2004
+ * DAVE Srl
+ * http://www.dave-tech.it
+ * http://www.wawnet.biz
+ * mailto:info@wawnet.biz
+ *
+ * (C) Copyright 2004 Texas Insturments
+ *
+ * See file CREDITS for list of people who contributed to this
+ * project.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of
+ * the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ * MA 02111-1307 USA
+ */
+
+#include <common.h>
+
+int do_reset(cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])
+{
+	puts ("resetting ...\n");
+
+	udelay (50000);				/* wait 50 ms */
+
+	disable_interrupts();
+	reset_cpu(0);
+
+	/*NOTREACHED*/
+	return 0;
+}