Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

iTCO_wdt not finding device

321 views
Skip to first unread message

Perry Naseck

unread,
Mar 8, 2023, 11:20:05 AM3/8/23
to
Hello!

I cannot get the iTCO_wdt device to be found. I'm not sure how else to troubleshoot at this point, so any help with that is appreciated (i.e. a way to manually check if the device exists or etc.).

I am using Debian 11 on an Intel NUC CMCR1ABB chassis with a CM11EBi716W module. This is an i7 and the watchdog is enabled in the BIOS. I am using the latest BIOS v71. Kernel: 5.10.0-21-amd64 #1 SMP Debian 5.10.162-1 (2023-01-21) x86_64 GNU/Linux.

Every single time I run "modprobe iTCO-wdt" I see in dmesg:
    iTCO_vendor_support: vendor-support=0
    iTCO_wdt: Intel TCO WatchDog Timer Driver v1.11
And that's it. No device found and no new /dev/watchdog devices or anything new in wdctl.

I have tried:
  1. Simply "modprobe iTCO-wdt"
  2. Also loading "i2c-i801" and "i2c-smbus" first and then loading the module
  3. Blacklisting wdat_wdt and adding nmi_watchdog=0 to GRUB, which correctly caused the existing /dev/watchdog software device to disappear but iTCO_wdt still didn't work

I found one other user with the same issue several years go: https://forums.debian.net/viewtopic.php?t=146358

I'm very certain that this device supports the watchdog, as there is a BIOS option to enable it and Intel has a Windows daemon to make use of it. Is there another Intel watchdog scheme besides iTCO_wdt? Would secureboot lockdown be interfering with this?

Thanks,
Perry

Perry Naseck

unread,
Mar 8, 2023, 1:00:06 PM3/8/23
to

Unless the latest version has changed drastically from 5.10.0-21, then I should be seeing an error of some sort if it is running the probe function iTCO_wdt_probe(). Every return in that function before "Found a %s TCO device" is an error. What would cause the probe not to run at all?

Also, I tried disabling secure boot to no avail.

Thanks,
Perry

Perry Naseck

unread,
Mar 8, 2023, 3:30:05 PM3/8/23
to

wdat_wdt maybe replaced iTCO_wdt:
	  This driver adds support for systems with ACPI Watchdog Action
	  Table (WDAT) table. Servers typically have this but it can be
	  found on some desktop machines as well. This driver will take
	  over the native iTCO watchdog driver found on many Intel CPUs.
Indeed I tried out the wdat_wdt and it works, so maybe that is the intended way. I suppose this is now not really a Debian-specific thing, so I will maybe try the kernel mailing list.

Thanks!
Perry

Perry Naseck

unread,
Mar 8, 2023, 10:10:06 PM3/8/23
to
One final followup for completeness for anyone running into this issue who may find this thread via search: Yes, wdat_wdt effectively replaces iTCO_wdt.

The kernel patch puts it pretty simply: https://lwn.net/Articles/700524/

WDAT is a watchdog timer abstraction that is a much more hardware-independent API (assuming the manufacturer implements it). iTCO will simply not create a watchdog if WDAT is available (probably even if wdat_wdt is not loaded).

In fact, there is a good chance that iTCO would never have worked on my device because Intel changed the exact method/bus location of accessing it on newer CPUs. This change may not have been implemented in the iTCO kernel driver because WDAT is now common and iTCO would only be needed on systems that it already works with.

NOTE: All of the above info is from that patch message text; I did not look at any code to confirm exact functionality of how the iTCO ignores/loads, but this completely matches the behavior of my system.

Best,
Perry
0 new messages