From: Jeremy S. <jas...@pa...> - 2003-02-11 19:16:33
|
Spark.Kuo(*=A2=95=DA*a) wrote: > Dear all: > I have ported the linux kernel 2.4.19 on my board using sh4= 7751R.When i enable the watchdog,the board reboot immediately,someti= mes the sh_wdt_ping() has entered several times, but sometimes not. > It seem to be that the watchdog overflow before the sh_wdt_= ping() function. > i think that the sh_wdt_ping() function would set WTCNT to = 0x0 periodly,before the WDIOF_SETTIMEOUT settting. > but my watchdog reboot before the sh_wdt_ping() periodly re= setting. > Has anyone some comments? /* Yes, sh_wdt_ping() should clear WTCNT, but as a timer function it = only does so when the timer pops, which I believe is dependent on the= kernel tick... and the longest setting for the watchdog is still too fast for the normal 10ms tick. Since you can't add bits to the c= ounter, I'd guess all you can do is either slow down the base board c= lock so the watchdog timeout is slow enough, or modify the kernel to use a faster tick. */ --Jeremy Siegel |