[U-Boot] [PATCH] at91: Don't initialize watchdog if CONFIG_SYS_WDTC_WDMR_VAL is undefined
Alexander Stein
alexander.stein at systec-electronic.com
Thu Jul 22 08:17:17 CEST 2010
Hello,
Am Mittwoch, 21. Juli 2010, 20:20:48 schrieb Wolfgang Denk:
> > --- a/arch/arm/cpu/arm926ejs/at91/lowlevel_init.S
> > +++ b/arch/arm/cpu/arm926ejs/at91/lowlevel_init.S
> >
> > @@ -186,8 +186,10 @@ SDRAM_setup_end:
> > .ltorg
> >
> > SMRDATA:
> > +#if defined(CONFIG_SYS_WDTC_WDMR_VAL)
> >
> > .word AT91_ASM_WDT_MR
> > .word CONFIG_SYS_WDTC_WDMR_VAL
> >
> > +#endif
>
> This seems the wrong approach to me - when CONFIG_HW_WATCHDOG is
> defined and requires CONFIG_SYS_WDTC_WDMR_VAL, but the latter is
> missing, than this should raise n error condition. We must not
> silently ignore errors.
Well, my problem is, that CONFIG_SYS_WDTC_WDMR_VAL is used to program the
internal watchdog. But this watchdog can only be programmed once until a reset
occurs. So there is no possibility for linux to reprogram it.
So, if CONFIG_SYS_WDTC_WDMR_VAL is not defined and the watchdog is not
programed using my patch, the watchdog still runs with default settings
(timeout of 16s). So a user may choose to trigger the watchdog from u-boot
(define CONFIG_AT91SAM9_WATCHDOG and CONFIG_HW_WATCHDOG) or let it run
silently. To summarize, CONFIG_SYS_WDTC_WDMR_VAL is not needed to use
CONFIG_AT91SAM9_WATCHDOG and CONFIG_HW_WATCHDOG.
Best regards,
Alexander Stein
More information about the U-Boot
mailing list