1.\"- 2.\" Copyright (c) 2012 Bjoern A. Zeeb <bz@FreeBSD.org> 3.\" All rights reserved. 4.\" 5.\" Redistribution and use in source and binary forms, with or without 6.\" modification, are permitted provided that the following conditions 7.\" are met: 8.\" 1. Redistributions of source code must retain the above copyright 9.\" notice, this list of conditions and the following disclaimer. 10.\" 2. Redistributions in binary form must reproduce the above copyright 11.\" notice, this list of conditions and the following disclaimer in the 12.\" documentation and/or other materials provided with the distribution. 13.\" 14.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 15.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 16.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 17.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 18.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 19.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 20.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 21.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 22.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 23.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 24.\" SUCH DAMAGE. 25.\" 26.\" $FreeBSD$ 27.\" 28.Dd October 16, 2019 29.Dt WBWD 4 30.Os 31.Sh NAME 32.Nm wbwd 33.Nd device driver for Winbond/Nuvoton Super I/O chips watchdog timer 34.Sh SYNOPSIS 35To compile this driver into the kernel, place the following lines in your 36kernel configuration file: 37.Bd -ragged -offset indent 38.Cd "device superio" 39.Cd "device wbwd" 40.Ed 41.Pp 42Alternatively, to load the driver as a module at boot time, place the following 43line in 44.Xr loader.conf 5 : 45.Bd -literal -offset indent 46wbwd_load="YES" 47.Ed 48.Sh DESCRIPTION 49The 50.Nm 51driver provides 52.Xr watchdog 4 53support for the watchdog interrupt timer present on at least the following 54Super I/O chips: 55.Bl -bullet -compact 56.It 57Winbond 83627HF/F/HG/G 58.It 59Winbond 83627S 60.It 61Winbond 83697HF 62.It 63Winbond 83697UG 64.It 65Winbond 83637HF 66.It 67Winbond 83627THF 68.It 69Winbond 83687THF 70.It 71Winbond 83627EHF 72.It 73Winbond 83627DHG 74.It 75Winbond 83627UHG 76.It 77Winbond 83667HG 78.It 79Winbond 83627DHG-P 80.It 81Winbond 83667HG-B 82.It 83Nuvoton NCT6775 84.It 85Nuvoton NCT6776 86.It 87Nuvoton NCT6102 88.It 89Nuvoton NCT6779 90.It 91Nuvoton NCT6791 92.It 93Nuvoton NCT6792 94.El 95.Sh SYSCTL VARIABLES 96The 97.Nm 98driver provides the following options as 99.Xr sysctl 8 100variables. 101.Bl -tag -width "xxxxxx" 102.It Va dev.wbwd.0.timeout_override 103This variable allows to program the timer to a value independent on the one 104provided by the 105.Xr watchdog 4 106framework while still relying on the regular updates from e.g. 107.Xr watchdogd 8 . 108This is particularly useful if your system provides multiple watchdogs and 109you want them to fire in a special sequence to trigger an NMI after a shorter 110period than the reset timeout for example. 111The value set must not be lower than the sleep time of 112.Xr watchdogd 8 . 113A value of 0 disables this feature and the timeout value provided by 114.Xr watchdog 4 115will be used. 116.It Va dev.wbwd.0.debug_verbose 117If set this sysctl will tell the driver to log its current state before and 118after the timer reset on each invocation from 119.Xr watchdog 9 120to the kernel message buffer for debugging. 121.It Va dev.wbwd.0.debug 122This read-only value gives the state of some registers on last update. 123.El 124.Pp 125The 126.Nm 127driver also provides further sysctl options that are hidden by default. 128See the source code for more information. 129.Sh SEE ALSO 130.Xr superio 4 131.Xr watchdog 4 , 132.Xr device.hints 5 , 133.Xr watchdog 8 , 134.Xr watchdogd 8 , 135.Xr watchdog 9 136.Sh HISTORY 137The 138.Nm 139driver first appeared in 140.Fx 10.0 . 141.Sh AUTHORS 142.An -nosplit 143This manual page was written by 144.An Bjoern A. Zeeb Aq Mt bz@FreeBSD.org . 145