[En-Nut-Discussion] SAM7X Watchdog

Harald Kipp harald.kipp at egnite.de
Mon Jul 17 19:32:29 CEST 2006


Hi,

Anyone able to explain this part of arch/arm/os/nutinit.c to me?

#ifdef MCU_AT91SAM7X256
         /*
          * We have only one chance to disable the WDT by writing WDT_MR.  This
          * may cause trouble when debug in RAM.  If code burned in flash 
enabled
          * WDT, we have no idea to disable but clear it.
          */
         outr(WDT_WDCR, 0xA5000000 | WDT_WDRSTT);
#endif

After adding

         /*
          * The watchdog is enabled after processor reset. Disable it.
          */
         ldr     r1, =WDT_BASE
         ldr     r0, =WDT_WDDIS
         str     r0, [r1, #WDT_MR_OFF]

to crtat91sam7x256_rom.S, the triggering in the idle thread shown
above can be removed, right?

If I understood everything correctly, the watchdog disable
must be configurable, because WDT_MR can be written once only.

Did I overlook something?

Harald




More information about the En-Nut-Discussion mailing list