OpenBSD's
watchdog(4) uses the first available hardware watchdog timer. This is a hardware-only implementation, since at timeout, the BIOS reboots the platform. As I understand it, a "software watchdog timer" would require a running system, precluding a forced reboot in the event of a system crash.