Hi, Jordan Crouse wrote: > On 17/01/08 23:52 +0100, Arnd Hannemann wrote: >>>> Watchdog for the new API would be great :-) >>> Coming soon. > > As promised, a watchdog driver for the Geode GX/LX processors is attached. > I basically just ported the previous patch forward to 2.6.24.
Great work! > > I also have good news or bad news depending on your perspective. I wanted > to test this against 2.6.24, and OLPC is stuck at an older kernel version, > so I had to test this with coreboot (LinuxBIOS) on another Geode > platform. Like all BIOSen execpt for the OLPC firmware, coreboot uses > VSA (SMM handler) which consumes all the timers. > > So I used the magical MSR and surprise! - the timer tick hung. > I compiled out the timer tick, and tested the watchdog timer instead, > and it worked fine on timer 0. So I don't think the MFGPTs themselves > have anything to do with this problem, but I do think it might be > related to VSA and possibly interrupts too. I'm going to invoke the > strong BIOS fu of our LinuxBIOS / BIOS expert Marc Jones, and see what > he comes up with. > > I don't know how much of a hassle it would be for Andres to get a 2.6.24 > kernel running on the OLPC to make sure that this isn't a regression > in the timer tick code (I suspect it isn't a regression, but you never > know). I also think that it would probably be in our best interest to > default CONFIG_GEODE_MFGPT_TIMER to 'n' until we get this figured > out. Since most BIOSen don't have timers available, that shouldn't affect > too many people. > > So, anyway, enjoy the watchdog timer - I hope it meets everybody's > expectations for the 2.6.25 kernel. Thanks a lot for this, it works great! (with CONFIG_GEODE_MFGPT_TIMER not set). However some minor issues: Could the name of the /dev entry perhaps be changed from "geode-watchdog" to "watchdog" instead? I think all other watchdogs use "watchdog", and using two different watchdogs in the same machine won't work anyway, because of the same minor number, right? As a second point my gcc (4.1.2) issues a warning: drivers/watchdog/geodewdt.c: In function ‘geodewdt_remove’: drivers/watchdog/geodewdt.c:256: warning: control reaches end of non-void function which I think is a valid one. > > Jordan > Best regards, Arnd -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/