diff options
author | Kim Phillips <kim.phillips@freescale.com> | 2006-11-28 23:35:49 -0600 |
---|---|---|
committer | Kim Phillips <kim.phillips@freescale.com> | 2006-11-28 23:35:49 -0600 |
commit | 32081125a028aff9e93af5281c777b0745ef8558 (patch) | |
tree | 4e4f95da64aed9db11bb245a00e5c0bead04ad23 /cpu/ppc4xx/cpu.c | |
parent | cf3d045e51ca8dcc6cf759827140861d6ac25c04 (diff) | |
parent | d2c83f549378fb3fc34cb3c2e62fd772fbf8b68b (diff) | |
download | u-boot-imx-32081125a028aff9e93af5281c777b0745ef8558.zip u-boot-imx-32081125a028aff9e93af5281c777b0745ef8558.tar.gz u-boot-imx-32081125a028aff9e93af5281c777b0745ef8558.tar.bz2 |
Merge http://www.denx.de/git/u-boot
Diffstat (limited to 'cpu/ppc4xx/cpu.c')
-rw-r--r-- | cpu/ppc4xx/cpu.c | 24 |
1 files changed, 12 insertions, 12 deletions
diff --git a/cpu/ppc4xx/cpu.c b/cpu/ppc4xx/cpu.c index f4a7208..447383f 100644 --- a/cpu/ppc4xx/cpu.c +++ b/cpu/ppc4xx/cpu.c @@ -41,6 +41,10 @@ DECLARE_GLOBAL_DATA_PTR; #endif +#if defined(CONFIG_BOARD_RESET) +void board_reset(void); +#endif + #if defined(CONFIG_440) #define FREQ_EBC (sys_info.freqEPB) #else @@ -422,23 +426,19 @@ int ppc440spe_revB() { int do_reset (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]) { -#if defined(CONFIG_YOSEMITE) || defined(CONFIG_YELLOWSTONE) - /*give reset to BCSR*/ - *(unsigned char*)(CFG_BCSR_BASE | 0x06) = 0x09; - +#if defined(CONFIG_BOARD_RESET) + board_reset(); +#else +#if defined(CFG_4xx_RESET_TYPE) + mtspr(dbcr0, CFG_4xx_RESET_TYPE << 28); #else - /* * Initiate system reset in debug control register DBCR */ - __asm__ __volatile__("lis 3, 0x3000" ::: "r3"); -#if defined(CONFIG_440) - __asm__ __volatile__("mtspr 0x134, 3"); -#else - __asm__ __volatile__("mtspr 0x3f2, 3"); -#endif + mtspr(dbcr0, 0x30000000); +#endif /* defined(CFG_4xx_RESET_TYPE) */ +#endif /* defined(CONFIG_BOARD_RESET) */ -#endif/* defined(CONFIG_YOSEMITE) || defined(CONFIG_YELLOWSTONE)*/ return 1; } |