Hello.

I am work around NetBurner MOD5272, with kernel 2.4.34.5-uc0, uClinux-dist-20110603 and m68k-uclinux-tools.

When i configure in the kernell:
     ...........
     [ * ] ColdFireWatchdog Timer Support
     .........

I have some make ERROS:
     ...........
     mcfwatchdog.c: In function 'watchdog_timeout':
     mcfwatchdog.c:251: warning: implicit declaration of function 'mcf_setimr'
     mcfwatchdog.c:251: warning: implicit declaration of function 'mcf_getimr'
mcfwatchdog.c:256: error: 'MCFSIM_SWSR' undeclared (first use in this function) mcfwatchdog.c:256: error: (Each undeclared identifier is reported only once
     mcfwatchdog.c:256: error: for each function it appears in.)
     make[4]: *** [mcfwatchdog.o] Error 1
make[4]: Leaving directory `/home/labo/uClinux-dist/linux-2.4.x/drivers/char'
     make[3]: *** [first_rule] Error 2
make[3]: Leaving directory `/home/labo/uClinux-dist/linux-2.4.x/drivers/char'
     make[2]: *** [_subdir_char] Error 2
     make[2]: Leaving directory `/home/labo/uClinux-dist/linux-2.4.x/drivers'
     make[1]: *** [_dir_drivers] Error 2
     make[1]: Leaving directory `/home/labo/uClinux-dist/linux-2.4.x'
     make: *** [linux] Error 1
     ..........

Digging in source file (uClinux-dist/linux-2.4.x/drivers/char/mcfwatchdog.c) i found in function watchdog_timeout(....): The compiler really need the defenition of MCFSIM_SWSR, mcf_setimr () and mcf_getimr. I thing this is a bug, because in other funtion of file M5272 always have a diferent way of code, without the previous defines (MCFSIM_SWSR, mcf_setimr () and mcf_getimr ).

What i I did was: comment the part of the funtion that needs the (MCFSIM_SWSR, mcf_setimr () and mcf_getimr()):
line 236
     ..........
     #else
+         printk("mcfwatchdog: expired!\n");
+         dump(fp);
+    #endif /* CONFIG_OLDMASK */

*      //#ifdef RESET_ON_SWTR
*      //       /* nothing will be done... reset will occour */
*     //#else  /* RESET_ON_SWTR */
*      //       // lev7 interrupt is used.
*      //       if(++watchdog_overflows >= 10) {
*      //
*     //          printk("mcfwatchdog: expired!\n");
*      //#ifndef MODULE
*      //         dump(fp);
*      //#endif
*      //         mcf_setimr(mcf_getimr() | MCFSIM_IMR_SWD);
*      //         HARD_RESET_NOW();
*      //         for (;;) ;  // hang until reboot
*      //       } else {
* // volatile unsigned char *mbar = (volatile unsigned char *) MCF_MBAR;
*      //         *(mbar + MCFSIM_SWSR) = 0x55;
*      //         *(mbar + MCFSIM_SWSR) = 0xaa; // kick watchdog
*      //       }
*      //#endif /* RESET_ON_SWTR */
+     #endif /* CONFIG_OLDMASK */
       }
       ...........

Ok after this make witout erros, and in the boot: mcfwatchdog: initializing at vector=92.

I know that is not the correct way to solve the error. Probably this cause problems when one watchdog ISR occur.
But I hope it helps someone to solve the problem.

Has anyone had or solved this problem?

Thanks.
Domingos Goncalves.
_______________________________________________
uClinux-dev mailing list
uClinux-dev@uclinux.org
http://mailman.uclinux.org/mailman/listinfo/uclinux-dev
This message was resent by uclinux-dev@uclinux.org
To unsubscribe see:
http://mailman.uclinux.org/mailman/options/uclinux-dev

Reply via email to