ichwd working for anyone ? (and watchdog vs watchdogd)
Mike Tancsa
mike at sentex.net
Mon Sep 13 08:24:21 PDT 2004
At 11:42 PM 12/09/2004, Mike Tancsa wrote:
>At 09:48 PM 12/09/2004, Bruce M Simpson wrote:
>>Try disabling ACPI sysresource range reservations with:
>> debug.acpi.disabled="sysresource"
>>
>>in /boot/loader.conf. I haven't tried this for ichwd but doing this allowed
>>me to load mdodd@'s SMI/SMBIOS modules for ThinkPad.
>
>Hmmm, this seems to help a bit but the functionality is not there. The
>module loads and doesnt complain, but it doesnt work in that the daemon
>does not seem to be able to "arm" it so that it reboots
This might be a problem with the ichwd at this point. I grabbed the
original watchdog kld from,
http://freebsd.tamu.edu/wdog/
and applied the following patches
--- i8xxwd.c Wed Mar 24 07:25:35 2004
+++ ../i8xxwd-current.patches/i8xxwd.c Mon Sep 13 11:02:44 2004
@@ -30,6 +30,7 @@
#include <sys/param.h>
#include <sys/systm.h>
#include <sys/types.h>
+#include <sys/module.h>
#include <sys/kernel.h>
#include <sys/bus.h>
#include <dev/pci/pcivar.h>
@@ -48,6 +49,7 @@
{VENDORID_INTEL, DEVICEID_82801CAX, "Intel 82801CA/82801CAM
watchdog device"},
{VENDORID_INTEL, DEVICEID_82801DB, "Intel 82801DB watchdog device"},
{VENDORID_INTEL, DEVICEID_82801E, "Intel 82801E watchdog device"},
+ {VENDORID_INTEL, DEVICEID_82801EBR, "Intel 82801EB / ER watchdog
timer" },
{VENDORID_INTEL, 0, ""},
};
--- i8xxwd.h Wed Mar 24 07:16:17 2004
+++ ../i8xxwd-current.patches/i8xxwd.h Mon Sep 13 11:02:17 2004
@@ -43,7 +43,9 @@
#define DEVICEID_82801CAX 0x2480
#define DEVICEID_82801DB 0x24c0
#define DEVICEID_82801E 0x2450
-
+#define DEVICEID_82801EBR 0x24d0
+
+
#define SMIBASE_OFFSET 0x30
#define TCOBASE_OFFSET 0x60
#define PMBASE 0x40
Loading just this module and then using watchdogd -t 10 and then a kill -9
of the watchdogd program and the box reboots about 10 seconds later. With
icwhd, no reboot.
And I can get the i8xxwd kld to work just fine without having to put
debug.acpi.disabled="sysresource" in /boot/loader.conf
Also, why are there 2 watchdog programs in the base ?
releng5-865# which watchdog
/usr/sbin/watchdog
releng5-865# which watchdogd
/usr/sbin/watchdogd
releng5-865#
---Mike
>I tried it as a kld and as statically compiled into the kernel and no dice
>on either and statically compiled in is worse.
>
>Also, why would booting without ACPI not work as well if its the "problem" ?
>
>
>Adding a couple of printfs to the watchdog, the ioctl is returning zero
>
>
>But if I kill -9 the daemon, the box does not reboot
>
> From the console,
>
>ichwd module loaded
>ichwd_identify(): found ICH chipset: Intel 82801EB/ER watchdog timer
>ichwd0: <Intel 82801EB/ER watchdog timer> on motherboard
>ichwd0: timer disabled
>ichwd0: timer enabled
>ichwd0: timeout set to 28 ticks
>ichwd0: timer reloaded
>ichwd0: timer reloaded
>ichwd0: timer reloaded
>
>FreeBSD/i386 (releng5-865.sentex.ca) (ttyd0)
>
>login:
>ichwd0: timer reloaded
>
>FreeBSD/i386 (releng5-865.sentex.ca) (ttyd0)
>
>login: ichwd0: timer reloaded
>ichwd0: timer reloaded
>ichwd0: timer reloaded
>ichwd0: timer reloaded
>ichwd0: timer reloaded
>ichwd0: timer reloaded
>ichwd0: timer reloaded
>ichwd0: timer reloaded
>ichwd0: timer reloaded
>ichwd0: timer reloaded
>ichwd0: timer reloaded
>ichwd0: timer reloaded
>ichwd0: timer reloaded
>ichwd0: timer reloaded
>ichwd0: timer reloaded
>
>
>
>One last thing which I dont know if its significant or not, but after
>loading the kld, on reboot I get
>
>
>Shutting down local daemons:.
>Writing entropy file:.
>Terminated
>.
>Sep 12 23:00:39 releng5-865 syslogd: exiting on signal 15
>Waiting (max 60 seconds) for system process `vnlru' to stop...done
>Waiting (max 60 seconds) for system process `bufdaemon' to stop...done
>Waiting (max 60 seconds) for system process `syncer' to stop...
>Syncing disks, vnodes remaining...2 2 2 2 0 0 done
>No buffers busy after final sync
>Uptime: 16m36s
>Shutting down ACPI
> ACPI-0265: *** Error: Hardware never changed modes
>
> ---Mike
>_______________________________________________
>freebsd-current at freebsd.org mailing list
>http://lists.freebsd.org/mailman/listinfo/freebsd-current
>To unsubscribe, send any mail to "freebsd-current-unsubscribe at freebsd.org"
More information about the freebsd-current
mailing list