diff options
author | Wolfgang Denk <wd@denx.de> | 2009-07-07 22:22:05 +0200 |
---|---|---|
committer | Wolfgang Denk <wd@denx.de> | 2009-07-07 22:22:05 +0200 |
commit | a48ecc969f8d2d0fe9167962e9b8b4cca52de10b (patch) | |
tree | 604e04770713cb314cb6184e26eeb4319dec3d43 /cpu/arm1176 | |
parent | bec9cab9291bb221714d559a44fe37669a8ca604 (diff) | |
parent | ceb70b466e75ceb1a621b6163f7e31116bfc8094 (diff) | |
download | u-boot-imx-a48ecc969f8d2d0fe9167962e9b8b4cca52de10b.zip u-boot-imx-a48ecc969f8d2d0fe9167962e9b8b4cca52de10b.tar.gz u-boot-imx-a48ecc969f8d2d0fe9167962e9b8b4cca52de10b.tar.bz2 |
Merge branch 'master' of git://git.denx.de/u-boot-arm
Conflicts:
drivers/spi/Makefile
Signed-off-by: Wolfgang Denk <wd@denx.de>
Diffstat (limited to 'cpu/arm1176')
-rw-r--r-- | cpu/arm1176/cpu.c | 16 | ||||
-rw-r--r-- | cpu/arm1176/s3c64xx/Makefile | 2 | ||||
-rw-r--r-- | cpu/arm1176/s3c64xx/reset.S | 34 |
3 files changed, 36 insertions, 16 deletions
diff --git a/cpu/arm1176/cpu.c b/cpu/arm1176/cpu.c index c59a77b..d1a3327 100644 --- a/cpu/arm1176/cpu.c +++ b/cpu/arm1176/cpu.c @@ -58,22 +58,6 @@ int cleanup_before_linux (void) return 0; } - -/* * reset the cpu by setting up the watchdog timer and let him time out */ -void reset_cpu (ulong ignored) -{ - printf("reset... \n\n\n"); - SW_RST_REG = 0x6400; - /* loop forever and wait for reset to happen */ - while (1) { - if (serial_tstc()) { - serial_getc(); - break; - } - } - /*NOTREACHED*/ -} - /* flush I/D-cache */ static void cache_flush (void) { diff --git a/cpu/arm1176/s3c64xx/Makefile b/cpu/arm1176/s3c64xx/Makefile index 4656d9a..b527939 100644 --- a/cpu/arm1176/s3c64xx/Makefile +++ b/cpu/arm1176/s3c64xx/Makefile @@ -28,6 +28,8 @@ include $(TOPDIR)/config.mk LIB = $(obj)lib$(SOC).a +SOBJS = reset.o + COBJS-$(CONFIG_S3C6400) += cpu_init.o speed.o COBJS-y += timer.o diff --git a/cpu/arm1176/s3c64xx/reset.S b/cpu/arm1176/s3c64xx/reset.S new file mode 100644 index 0000000..315b13f --- /dev/null +++ b/cpu/arm1176/s3c64xx/reset.S @@ -0,0 +1,34 @@ +/* + * Copyright (c) 2009 Samsung Electronics. + * Minkyu Kang <mk7.kang@samsung.com> + * + * 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 <s3c6400.h> + +.globl reset_cpu +reset_cpu: + ldr r1, =ELFIN_CLOCK_POWER_BASE + ldr r2, [r1, #SYS_ID_OFFSET] + ldr r3, =0xffff + and r2, r3, r2, lsr #12 + str r2, [r1, #SW_RST_OFFSET] +_loop_forever: + b _loop_forever |