diff options
| author | Wolfgang Denk <wd@pollux.denx.de> | 2006-11-27 23:11:18 +0100 |
|---|---|---|
| committer | Wolfgang Denk <wd@denx.de> | 2006-11-27 23:11:18 +0100 |
| commit | d2c83f549378fb3fc34cb3c2e62fd772fbf8b68b (patch) | |
| tree | f00383ed01ca18fa0beee4930ebb7f3dc4153e5e /cpu/ppc4xx/cpu.c | |
| parent | 4f4b602ec7524a032bdf3c6d28c7f525a4a67eaa (diff) | |
| parent | 1729b92cde575476684bffe819d0b7791b57bff2 (diff) | |
| download | olio-uboot-2014.01-d2c83f549378fb3fc34cb3c2e62fd772fbf8b68b.tar.xz olio-uboot-2014.01-d2c83f549378fb3fc34cb3c2e62fd772fbf8b68b.zip | |
Merge with /home/sr/git/u-boot/denx-alpr-merge-test
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 f4a7208c8..447383f8d 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; } |