ARMv7: straighten out reset code

We don't need three different implementations.

Change-Id: Ie7b5fa90794676ea38838454a33e8e9188428eb7
Signed-off-by: Stefan Reinauer <reinauer@google.com>
Reviewed-on: http://review.coreboot.org/2406
Tested-by: build bot (Jenkins)
Reviewed-by: Ronald G. Minnich <rminnich@gmail.com>
This commit is contained in:
Stefan Reinauer 2013-02-14 16:56:05 -08:00 committed by Ronald G. Minnich
parent 5dbf689b62
commit 8bc58da8ac
5 changed files with 4 additions and 58 deletions

View File

@ -294,7 +294,6 @@ int checkicache (void);
int checkdcache (void); int checkdcache (void);
void upmconfig (unsigned int, unsigned int *, unsigned int); void upmconfig (unsigned int, unsigned int *, unsigned int);
ulong get_tbclk (void); ulong get_tbclk (void);
void reset_cpu (ulong addr);
#if defined (CONFIG_OF_LIBFDT) && defined (CONFIG_OF_BOARD_SETUP) #if defined (CONFIG_OF_LIBFDT) && defined (CONFIG_OF_BOARD_SETUP)
void ft_cpu_setup(void *blob, bd_t *bd); void ft_cpu_setup(void *blob, bd_t *bd);
#endif #endif

View File

@ -13,7 +13,6 @@ ramstage-y += div64.S
#ramstage-y += interrupts.c #ramstage-y += interrupts.c
#ramstage-y += memcpy.S #ramstage-y += memcpy.S
#ramstage-y += memset.S #ramstage-y += memset.S
#ramstage-y += reset.c
ramstage-y += syslib.c ramstage-y += syslib.c
#FIXME(dhendrix): should this be a config option? #FIXME(dhendrix): should this be a config option?

View File

@ -36,6 +36,7 @@
*/ */
#include <common.h> #include <common.h>
#include <reset.h>
DECLARE_GLOBAL_DATA_PTR; DECLARE_GLOBAL_DATA_PTR;
@ -105,7 +106,7 @@ int disable_interrupts (void)
void bad_mode (void) void bad_mode (void)
{ {
panic ("Resetting CPU ...\n"); panic ("Resetting CPU ...\n");
reset_cpu (0); soft_reset();
} }
void show_regs (struct pt_regs *regs) void show_regs (struct pt_regs *regs)

View File

@ -1,53 +0,0 @@
/*
* (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, <garyj@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 * const argv[])
{
puts ("resetting ...\n");
udelay (50000); /* wait 50 ms */
disable_interrupts();
reset_cpu(0);
/*NOTREACHED*/
return 0;
}

View File

@ -21,10 +21,10 @@
* MA 02111-1307 USA * MA 02111-1307 USA
*/ */
#include <common.h> #include <reset.h>
#include <arch/io.h> #include <arch/io.h>
void reset_cpu(unsigned long addr) void soft_reset(void)
{ {
writel(0x1, samsung_get_base_swreset()); writel(0x1, samsung_get_base_swreset());
} }