Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 07 Aug 2010 05:05:17 -0700
From:      Xin LI <delphij@delphij.net>
To:        =?UTF-8?B?RGFnLUVybGluZyBTbcO4cmdyYXY=?= <des@des.no>
Cc:        Matthew Jacob <mj@feral.com>, d@delphij.net, freebsd-hackers@freebsd.org
Subject:   Winbond Watchdog [Was Re: Supermicro BIOS's watchdog feature?]
Message-ID:  <4C5D4BFD.9080803@delphij.net>
In-Reply-To: <86d3v7n093.fsf@ds4.des.no>
References:  <4C2B07F5.6030801@delphij.net> <4C2B4D35.8060903@feral.com>	<86lj9wmbrz.fsf@ds4.des.no> <4C2BBF3C.4070503@delphij.net>	<86hbkkmad1.fsf@ds4.des.no> <4C2BD498.3090704@delphij.net> <86d3v7n093.fsf@ds4.des.no>

next in thread | previous in thread | raw e-mail | index | archive | help
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

On 2010/07/01 00:12, Dag-Erling Smørgrav wrote:
> Xin LI <delphij@delphij.net> writes:
>> "Dag-Erling Smørgrav" <des@des.no> writes:
>>> Perhaps the motherboard has additional watchdog hardware?  If you
>>> disable the watchdog in BIOS, does ichwd still work?
>> If I kill -9 watchdogd the system do reset itself so I think ichwd(4)
>> really works even if BIOS setting is 'Disabled' (but I'm not sure if
>> this method is right?  Looking at the code I think the answer is
>> probably "Yes" though)
> 
> Yes.  This confirms my hypothesis, which is that your motherboard has
> additional watchdog hardware, and that the BIOS setting controls that,
> not the ichwd watchdog timer.  Just disable the watchdog in BIOS and use
> ichwd instead.

Thanks, you are absolutely correct that they are using another watchdog
(on Winbond Super I/O chip).

With help from some datasheets floating around the Internet and playing
with the motherboard a little bit, now I have a first cut of a
watchdog(9) interfaced driver for the chip and have confirmed working on
the motherboard.

I'm still polishing up the driver, there seems to be no way to figure
out the base port address directly (datasheet said it's either 0x2e and
0x4e) so for now I have its device identify method to do some dirty
hacks (outb/inb directly) and only check if with appropriate key entered
to the port we will get non-0xff value.  I'm not sure if that would be
acceptable?  I'll try to further read the spec and see if we have some
better way of doing this and publish the driver code hopefully in the
next week.

Cheers,
- -- 
Xin LI <delphij@delphij.net>	http://www.delphij.net/
FreeBSD - The Power to Serve!	       Live free or die
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.16 (FreeBSD)

iQEcBAEBCAAGBQJMXUv9AAoJEATO+BI/yjfBd3QIAMi3JV5+kQA9Mq6VJvs307jM
GStdcuG0zXfXIsS4H4r8VYdphUD8aTk10QNCXBLnXSW5fZjFMlyEocpPlSn1Jtah
TM1uApjc5rrAIdM9S0GQxPUdJLvc7O3okTsQRnze0Nv8EvO0p6ZQinRjMJT/1qfH
CuggvbTsAO9Yg5N65CsbHIUgPm1vu5a/uyFVN7nhpWtzaCuex+mB0n1r5qObPqY2
UaiF/s3SFssJtx27cwCo4KuuLhX9aI/qaDzjpmpBXIGY//gGYjW5cd180bW8V744
abWfVExqQqtdRLXqacrjWeUyrRE27pZ6ghj/6cRBwK018GLweFntX9p5SJ9S3Rs=
=cK+Y
-----END PGP SIGNATURE-----



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4C5D4BFD.9080803>