[Bug 252021] ichwd(4) does not clear the NO_REBOOT flag correctly on Lewisburg chipsets

bugzilla-noreply at freebsd.org bugzilla-noreply at freebsd.org
Mon Dec 21 17:13:53 UTC 2020


https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=252021

            Bug ID: 252021
           Summary: ichwd(4) does not clear the NO_REBOOT flag correctly
                    on Lewisburg chipsets
           Product: Base System
           Version: 12.2-RELEASE
          Hardware: amd64
                OS: Any
            Status: New
          Severity: Affects Only Me
          Priority: ---
         Component: kern
          Assignee: bugs at FreeBSD.org
          Reporter: janm at transactionware.com

Loading ichwd(4) on a Supermicro X11SPA-T motherboard with 12.2 gives this
response:

ichwd0: <Lewisburg watchdog timer> at port 0x400-0x41f iomem
0xfdc6000c-0xfdc6000f on isa0
ichwd0: ICH WDT present but disabled in BIOS or hardware

The motherboard jumpers are enabled.

In ichwd(4), Lewisburg is configured with TCO version 4. The Linux driver
configures Lewisburg with TCO version 2.

In src/sys/dev/ichwd/ichwd.c, ichwd_clear_noreboot() uses SMB_GC_NO_REBOOT
(0x02) as the the mask for clearing the NO_REBOOT flag for TCO version 4
devices.

Changing this mask to ICH_GCS_NO_REBOOT (0x20, as used in the TCO version 2
case) successfully clears the NO_REBOOT big on restart and makes the watchdog
work correctly.

"TCO version" seems a bit overloaded here, I'm not exactly sure what a correct
fix should look like.

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the freebsd-bugs mailing list