Public bug reported:
[Impact]
On the Neousys Nuvo-7000 series (DMI board_vendor "Neousys Technology Inc.",
board_name "NVS-7000"), the in-tree it87_wdt driver detects the IT8786 Super
I/O and registers /dev/watchdog0, but the board does not reset when the
watchdog times out. A hung system therefore stays hung. This makes the
hardware watchdog unusable on this platform.
The IT8786 WDT output reaches the platform reset logic only while PCH pad
GPP_D4 is driven high. it87_wdt does not drive this pad.
1) Release:
Ubuntu 26.04 LTS (resolute)
2) Package version:
Tested on linux-image-7.0.0-31-generic
Fix proposed for linux-iot main-next (Ubuntu-iot-7.0.0-1004.4)
3) Expected:
With it87_wdt loaded and timeout=20, if /dev/watchdog0 is opened and
not pinged, the board resets after about 20 seconds.
4) Actual:
The timer counts down to zero and nothing happens. The board does not
reset. Only a manual power cycle recovers a hung system.
[Fix]
UBUNTU: SAUCE: watchdog: it87_wdt: Add Neousys Nuvo-7000 reset gate quirk
Adds a DMI quirk for this board only. The driver drives GPP_D4 high on
start and low on stop. The pad is reached through the P2SB sideband, as in
drivers/watchdog/simatic-ipc-wdt.c. The firmware locks P2SB hidden, so
p2sb_bar() returns -ENOENT; the quirk then uses the platform SBREG base
(0xfd000000). No Kconfig change: CONFIG_IT87_WDT=m and CONFIG_P2SB=y
already.
[Test Plan]
Hardware: Neousys Nuvo-7168GC, Intel Q370 (Cannon Lake-H), ITE IT8786 rev 2.
1. Load the patched driver: sudo modprobe it87_wdt timeout=20
dmesg: "it87_wdt: Chip IT8786 revision 2 initialized. timeout=20 sec"
2. Open /dev/watchdog0 and do not ping it.
3. Expected: hardware reset 20 s after the device is opened.
Result with the fix: reset occurred 20 s after arming. The previous boot
log ends with no shutdown sequence, so it was a hardware reset.
Result without the fix: no reset.
[Where problems could occur]
The change is active only on boards that match the DMI vendor and board
name above. Other IT87 boards use the same code paths as before. On a
matching board, a wrong pad address could change an unrelated GPIO pad;
the address was confirmed on the hardware.
** Affects: linux-iot (Ubuntu)
Importance: Undecided
Status: New
--
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2171570
Title:
On the Neousys Nuvo-7000 (DMI "NVS-7000"), it87_wdt loads, but the
board does not reset when the watchdog times out.
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux-iot/+bug/2171570/+subscriptions
--
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs