]> git.kernelconcepts.de Git - karo-tx-uboot.git/commitdiff
arm: unify reset command
authorJean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Sun, 5 Apr 2009 11:08:03 +0000 (13:08 +0200)
committerJean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Sun, 5 Apr 2009 11:08:03 +0000 (13:08 +0200)
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
16 files changed:
cpu/arm1136/cpu.c
cpu/arm1176/cpu.c
cpu/arm720t/cpu.c
cpu/arm920t/cpu.c
cpu/arm925t/cpu.c
cpu/arm926ejs/cpu.c
cpu/arm946es/cpu.c
cpu/arm_cortexa8/cpu.c
cpu/arm_intcm/cpu.c
cpu/ixp/cpu.c
cpu/lh7a40x/cpu.c
cpu/pxa/cpu.c
cpu/s3c44b0/cpu.c
cpu/sa1100/cpu.c
lib_arm/Makefile
lib_arm/reset.c [new file with mode: 0644]

index 78f6e928f9dc1a9be7591fdd03b462f6d7796bce..e03a765434707e77fb06e3b9f5ffc78d83da49a8 100644 (file)
@@ -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;
index 8aefbe37c8fddf92d4490a1acce763c03682144f..bfa437835ccd1a5a2d7830ee530c9aaca8a1578b 100644 (file)
@@ -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)
 {
index a6f5c4d8bb627e6c9df1fd6001bb0d93ac2b79e6..6c40903b7db75140c8aae6f3aeb478a9422f794a 100644 (file)
@@ -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)
index 08c9339a35b92961a0f9dd3ec216243141c2c029..87c1adc59127dd239cc4bd66f315c77c815b42b7 100644 (file)
@@ -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)
 {
index eb6364d6945cce724bbef4cd8ecd23e30ec5cbac..cf6a4891019c93e2587f7b9965423667b57edacd 100644 (file)
@@ -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)
 {
index 84c169e9b14110708059da3aa9e7413f8a961cc9..6307e3389d8a24440cb586dc861cd6ba3b0e7501 100644 (file)
@@ -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)
 {
index 8d0c53343a9d43596c4fed66ff5c814b7c478551..ef7995d609b230d35907510227bca8e481c04c35 100644 (file)
@@ -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)
 {
index 64ee9723251f963ff2611a476a96ddb8d04f4c5b..5e7b935e4b91ac5632d6971488dc9596b250499f 100644 (file)
@@ -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;
index ea6747ae96356c355e4c0c6d328b87f7c38309de..1636ffb1ff875231be41d82a746101bd0ee77981 100644 (file)
@@ -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);
-}
index d9cfbabc16c201b3f11cd18bbb2118c554fc27ab..42c62f6e39774f6182e214994a1ae4fee43e1b76 100644 (file)
@@ -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)
 {
index e862251ca2de3092e2088332896c48d276f3ba67..93ebd13234bde898c19ea131084d66bbeb89ff8c 100644 (file)
@@ -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)
 {
index ab58d39efcdc32a8da8e01eef060ad4aca1b9dfb..3a1be57f44a7a351db33e91d455b45d1ea96e9e2 100644 (file)
@@ -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)
 {
index e4cdb823b4a6300ffba4eac439f9bc4b6638a1e0..7ef4a1fdb0de5adaa64d40ec8ffca55e5a9f3979 100644 (file)
@@ -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);
-}
index 6c897d0d56e800ae81cdfbb2ea3c05671e5d342f..ed1a6f7cd30d4e4ff7b4f3cd5b09c93d54ae338a 100644 (file)
@@ -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)
 {
index 3ac9d1f093723d0d81952ea99577a155469eb343..4469361a8aca1a21ab541579fc251d330fd93f78 100644 (file)
@@ -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))
diff --git a/lib_arm/reset.c b/lib_arm/reset.c
new file mode 100644 (file)
index 0000000..550d1e5
--- /dev/null
@@ -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;
+}