diff options
author | Tom Rini | 2013-04-30 09:58:03 -0400 |
---|---|---|
committer | Tom Rini | 2013-05-01 10:37:35 -0400 |
commit | 92daa4d2cff74d35a8b479c27a419025a464533f (patch) | |
tree | 7ea40acf8c6aa7301643e67acc53418050a9a00a /board | |
parent | 19fe4b3e3122071fbe6481df05bd819405e1983e (diff) | |
parent | 0f21f98dd4d6bff72df4eeaca4163779896cb336 (diff) |
Merge branch 'microblaze' of git://www.denx.de/git/u-boot-microblaze
Diffstat (limited to 'board')
-rw-r--r-- | board/xilinx/microblaze-generic/microblaze-generic.c | 11 | ||||
-rw-r--r-- | board/xilinx/microblaze-generic/xparameters.h | 4 |
2 files changed, 12 insertions, 3 deletions
diff --git a/board/xilinx/microblaze-generic/microblaze-generic.c b/board/xilinx/microblaze-generic/microblaze-generic.c index 70f94c1a597..befbb3a3e59 100644 --- a/board/xilinx/microblaze-generic/microblaze-generic.c +++ b/board/xilinx/microblaze-generic/microblaze-generic.c @@ -38,10 +38,15 @@ int do_reset(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) *((unsigned long *)(CONFIG_SYS_GPIO_0_ADDR)) = ++(*((unsigned long *)(CONFIG_SYS_GPIO_0_ADDR))); #endif -#ifdef CONFIG_SYS_RESET_ADDRESS - puts ("Reseting board\n"); - asm ("bra r0"); + +#ifdef CONFIG_XILINX_TB_WATCHDOG + hw_watchdog_disable(); #endif + + puts ("Reseting board\n"); + __asm__ __volatile__ (" mts rmsr, r0;" \ + "bra r0"); + return 0; } diff --git a/board/xilinx/microblaze-generic/xparameters.h b/board/xilinx/microblaze-generic/xparameters.h index 50a82d94a06..c846f97f5b7 100644 --- a/board/xilinx/microblaze-generic/xparameters.h +++ b/board/xilinx/microblaze-generic/xparameters.h @@ -77,3 +77,7 @@ #define XILINX_LLTEMAC_SDMA_CTRL_BASEADDR 0x42000180 #define XILINX_LLTEMAC_BASEADDR1 0x44200000 #define XILINX_LLTEMAC_FIFO_BASEADDR1 0x42100000 + +/* Watchdog IP is wxi_timebase_wdt_0 */ +#define XILINX_WATCHDOG_BASEADDR 0x50000000 +#define XILINX_WATCHDOG_IRQ 1 |