NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

kern/42773: ichlpcib(4) and source code give wrong watchdog time limits



>Number:         42773
>Category:       kern
>Synopsis:       The time boundaries for ichlpcib are give incorrectly in 
>source and manual
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    kern-bug-people
>State:          open
>Class:          doc-bug
>Submitter-Id:   net
>Arrival-Date:   Tue Feb 09 05:25:00 +0000 2010
>Originator:     Geoff C. Wing
>Release:        NetBSD 5.99.24
>Organization:
>Environment:
System: NetBSD g.primenet.com.au 5.99.24 NetBSD 5.99.24 (G) #0: Tue Feb 9 
14:51:41 EST 2010 
gcw%g.primenet.com.au@localhost:/usr/netbsd/src/sys/arch/i386/compile/G i386
Architecture: i386
Machine: i386
>Description:
        ichlpcib(4) reads:
                "The watchdog timer may be configured for ... 4 seconds (on
                ICH5 or older) min period and for a 39 seconds (on ICH5 or
                older) ... max period"
        My machines of that type allow 3 seconds to 38 seconds.  Outside that
        it provides a "wdogctl: WDOGIOC_SMODE: Invalid argument" error.

        src/sys/arch/x86/pci/ichlpcib.c:tcotimer_setmode() agrees with the
        manual page.  Maybe it was source of the manual information?

        The 82801AA/82801AB specification:
                http://download.intel.com/design/chipsets/datashts/29065503.pdf
        says section 8.9.3 (page 8-70): "The timer is clocked at approximately
        0.6 seconds, and this allows timeouts ranging from 2.4 to 38 seconds."

        Given we only use integers for wdogctl, this gives 3 to 38 seconds
        which matches my experience.

        I haven't found ICH6 (and onwards) reference yet to confirm times
        for those.

        My "ICH9" (82801IR) gives 2 seconds to 368 seconds, which doesn't
        match the manual/source either - it gives a maximum of 613 seconds
        which, I'm guessing, was calculated from the number of bits
        available, even though no such devices may exist.
        
>How-To-Repeat:
        Read
>Fix:
        Correct limits for ICH5 and below.
        Mention real limits for ICH6 and above.



Home | Main Index | Thread Index | Old Index