<div dir="ltr"><div><div><div><div><div><div><div><div><div>After sending my email to this group last week, I got a chance to dive deeper into the watchdog timer of the beagleboard and got it to work on the rev C XM board. The solution is fairly simple and I figured I would document it here as others might be interested.  With this config change the board will reboot itself if it detects certain conditions. This is reported to work for all versions of the beagleboard.  Only time will tell if this will prevent a trip to a mountaintop but it should hopefully solve the problem we encountered with a hung reboot.<br>
<br>Since Jim included a full build environment in pickle Linux,  it is easy to rebuild the kernel in place.   The steps to change the watchdog timer from the default of omap_wdt to twl4030 are simple. Unlike what I said in my original email the default kernel only has the omap_wdt timer.<br>
<br></div>The steps are (some of these are probably unnecessary) :<br>cd /usr/src/linux<br></div>make menuconfig<br></div>  (navigate to the drivers/watchdog and remove the star next to the omap_wdt and put a star next to the twl4030_wdt)<br>
</div>make <br>make modules<br></div>make uImage<br></div>make modules_install<br></div>make install<br></div><div>cp /boot/uImage /boot/uImage_orig<br></div>cp arch/arm/boot/uImage /boot/uImage<br></div><div>reboot<br><br>
</div><div>After the reboot   "cat /dev/watchdog" and the board should reboot after about 30 seconds.  Assuming the board reboots and doesn't hang then the watchdog user space app can be added. To install it run "apt-get install watchdog" and then configure the /etc/watchdog.conf file.  At a minimum remove the comment on the /dev/watchdog line but you can also configure it to check all sort of other parameters.  By default it will start when the board is started.<br>
</div><div><br>Mike <br></div><div><br></div><em></em><br><div><div><div><div><div><div><div><div><div><div><div><div><div><div><div><div><div class="gmail_extra"><br><br><div class="gmail_quote">On Thu, Nov 7, 2013 at 9:28 AM, Mike Hugo <span dir="ltr"><<a href="mailto:ka6oij@arrl.net" target="_blank">ka6oij@arrl.net</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div><div><div>Hi,<br><br></div>A bit of investigation with Dr. Google found that the beagleboard XM
 boards have a known issue with the omap_wdt driver. Instead of 
rebooting the board it holds it in reset.  The easy solution is to not 
use the omap_wdt watchdog timer driver but rather the TLW4030 watchdog timer driver.<br></div></div></div></blockquote><div>... <br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<div dir="ltr"><div><div>
<br>A quick way to test the watchdog timer is to just cat /dev/watchdog 
and wait a minute. Current XM boards with the omap_wdt timer will crash 
after a minute.  Newer beagleboards will restart. If my theory is correct after removing the omap_wdt driver all boards will restart<br></div><div><br><br></div>
<div>Thanks<br>Mike<br></div><div><br><br></div>Here is reference where someone did the research on the watchdog timer: <a href="http://gumstix.8.x6.nabble.com/Watchdog-timer-not-working-in-gumstix-overo-td812498.html" target="_blank">http://gumstix.8.x6.nabble.com/Watchdog-timer-not-working-in-gumstix-overo-td812498.html</a>  Look near the bottom with the solution.<br>


</div>I also saw references on the TI site and perhaps the omap_wdt driver has been updated as well since these posts are old.</div>
</blockquote></div><br></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div>