mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-11-11 15:37:23 +00:00
mpc85xx: support board-specific reset function
This is useful for boards which cannot be reset in the usual way for the 85xx CPU. An example is a board which can only be reset by a hardware watchdog. Signed-off-by: Ira W. Snyder <iws@ovro.caltech.edu> Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
This commit is contained in:
parent
cc15df57b1
commit
c18de0d7ae
1 changed files with 16 additions and 1 deletions
|
@ -42,6 +42,16 @@
|
|||
|
||||
DECLARE_GLOBAL_DATA_PTR;
|
||||
|
||||
/*
|
||||
* Default board reset function
|
||||
*/
|
||||
static void
|
||||
__board_reset(void)
|
||||
{
|
||||
/* Do nothing */
|
||||
}
|
||||
void board_reset(void) __attribute__((weak, alias("__board_reset")));
|
||||
|
||||
int checkcpu (void)
|
||||
{
|
||||
sys_info_t sysinfo;
|
||||
|
@ -215,7 +225,12 @@ int do_reset (cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
|
|||
mtspr(DBCR0,val);
|
||||
#else
|
||||
volatile ccsr_gur_t *gur = (void *)(CONFIG_SYS_MPC85xx_GUTS_ADDR);
|
||||
out_be32(&gur->rstcr, 0x2); /* HRESET_REQ */
|
||||
|
||||
/* Attempt board-specific reset */
|
||||
board_reset();
|
||||
|
||||
/* Next try asserting HRESET_REQ */
|
||||
out_be32(&gur->rstcr, 0x2);
|
||||
udelay(100);
|
||||
#endif
|
||||
|
||||
|
|
Loading…
Reference in a new issue