[U-Boot] ppc44x - watchdog timers reboots during the image loading

Stefan Roese sr at denx.de
Fri Oct 1 15:35:14 CEST 2010


On Thursday 30 September 2010 22:15:04 ame wrote:
> On my 460ex board, i've tried to add CONFIG_WATCHDOG to the config and it
> appears to work until the board tries to boot.  At that point I can count
> down about 10 seconds and the reboot happens.  The 10s correlates with
> what I think the watchdog is being set to.  I've inserted some
> WATCHDOG_RESET() invocations wrapping memmove_wd (which admittedly should
> not be needed), but it does not have an effect.  The last message I see is
> ...
> 
>    Verifying Checksum ... OK
> ## Flattened Device Tree blob at ff3e0000
>    Booting using the fdt blob at 0xff3e0000
>    Uncompressing Kernel Image ... OK
>    Loading Device Tree to 007fa000, end 007ffd2f ... OK
>    Loading Ramdisk to 1ec58000, end 1efffc0c ... OK
> 
> Then it instantly resets.  If I remove CONFIG_WATCHDOG the board works and
> boots correctly.  My u-boot is circa early 2009.  From looking at the
> current u-boot it does not have the tcr and tsr registers "converted to
> uppercase", so I don't think it builds yet.  I've verified the addresses
> of the spr and they look correct.

Please check again. Here the current source:

arch/powerpc/cpu/ppc4xx/cpu.c:

...
void reset_4xx_watchdog(void)
{
	/*
	 * Clear TSR(WIS) bit
	 */
	mtspr(SPRN_TSR, 0x40000000);
}
...

Definitely upper-case here.
 
> Any thoughts or help are appreciated.  I did notice the comments in
> cpu-init.c that my tcr is setup with 0xF0000000, I *think* this is
> actually 10s on a 800MHz board.  Not sure where the 2.684 numbers
> originates as stated in the comments. I also changed the acknowledge of
> the watchdog to the following, though neither my changes nor the original
> have any effect.  I've also verified that the code is getting included and
> built.   Not sure what to try next.

Note that you need to enable the watchdog support in the Linux kernel as well. 
Otherwise Linux will of course reset once the watchdog timer times out. Did 
you enable the book-e watchdog timer in Linux?

Cheers,
Stefan

--
DENX Software Engineering GmbH,      MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich,  Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-0 Fax: (+49)-8142-66989-80 Email: office at denx.de


More information about the U-Boot mailing list