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.Dd October 16, 2019 27.Dt WBWD 4 28.Os 29.Sh NAME 30.Nm wbwd 31.Nd device driver for Winbond/Nuvoton Super I/O chips watchdog timer 32.Sh SYNOPSIS 33To compile this driver into the kernel, place the following lines in your 34kernel configuration file: 35.Bd -ragged -offset indent 36.Cd "device superio" 37.Cd "device wbwd" 38.Ed 39.Pp 40Alternatively, to load the driver as a module at boot time, place the following 41line in 42.Xr loader.conf 5 : 43.Bd -literal -offset indent 44wbwd_load="YES" 45.Ed 46.Sh DESCRIPTION 47The 48.Nm 49driver provides 50.Xr watchdog 4 51support for the watchdog interrupt timer present on at least the following 52Super I/O chips: 53.Bl -bullet -compact 54.It 55Winbond 83627HF/F/HG/G 56.It 57Winbond 83627S 58.It 59Winbond 83697HF 60.It 61Winbond 83697UG 62.It 63Winbond 83637HF 64.It 65Winbond 83627THF 66.It 67Winbond 83687THF 68.It 69Winbond 83627EHF 70.It 71Winbond 83627DHG 72.It 73Winbond 83627UHG 74.It 75Winbond 83667HG 76.It 77Winbond 83627DHG-P 78.It 79Winbond 83667HG-B 80.It 81Nuvoton NCT6775 82.It 83Nuvoton NCT6776 84.It 85Nuvoton NCT6102 86.It 87Nuvoton NCT6779 88.It 89Nuvoton NCT6791 90.It 91Nuvoton NCT6792 92.El 93.Sh SYSCTL VARIABLES 94The 95.Nm 96driver provides the following options as 97.Xr sysctl 8 98variables. 99.Bl -tag -width "xxxxxx" 100.It Va dev.wbwd.0.timeout_override 101This variable allows to program the timer to a value independent on the one 102provided by the 103.Xr watchdog 4 104framework while still relying on the regular updates from e.g. 105.Xr watchdogd 8 . 106This is particularly useful if your system provides multiple watchdogs and 107you want them to fire in a special sequence to trigger an NMI after a shorter 108period than the reset timeout for example. 109The value set must not be lower than the sleep time of 110.Xr watchdogd 8 . 111A value of 0 disables this feature and the timeout value provided by 112.Xr watchdog 4 113will be used. 114.It Va dev.wbwd.0.debug_verbose 115If set this sysctl will tell the driver to log its current state before and 116after the timer reset on each invocation from 117.Xr watchdog 9 118to the kernel message buffer for debugging. 119.It Va dev.wbwd.0.debug 120This read-only value gives the state of some registers on last update. 121.El 122.Pp 123The 124.Nm 125driver also provides further sysctl options that are hidden by default. 126See the source code for more information. 127.Sh SEE ALSO 128.Xr superio 4 , 129.Xr watchdog 4 , 130.Xr device.hints 5 , 131.Xr watchdog 8 , 132.Xr watchdogd 8 , 133.Xr watchdog 9 134.Sh HISTORY 135The 136.Nm 137driver first appeared in 138.Fx 10.0 . 139.Sh AUTHORS 140.An -nosplit 141This manual page was written by 142.An Bjoern A. Zeeb Aq Mt bz@FreeBSD.org . 143