xref: /linux/drivers/watchdog/Kconfig (revision db728ea9c7be137b4f4361295f11e0b56b6286ac)
1ec8f24b7SThomas Gleixner# SPDX-License-Identifier: GPL-2.0-only
25e53c8edSJean-Baptiste Theou
3b7e04f8cSWim Van Sebroeck#
4b7e04f8cSWim Van Sebroeck# Watchdog device configuration
5b7e04f8cSWim Van Sebroeck#
6b7e04f8cSWim Van Sebroeck
7b7e04f8cSWim Van Sebroeckmenuconfig WATCHDOG
8b7e04f8cSWim Van Sebroeck	bool "Watchdog Timer Support"
9a7f7f624SMasahiro Yamada	help
10b7e04f8cSWim Van Sebroeck	  If you say Y here (and to one of the following options) and create a
11b7e04f8cSWim Van Sebroeck	  character special file /dev/watchdog with major number 10 and minor
12b7e04f8cSWim Van Sebroeck	  number 130 using mknod ("man mknod"), you will get a watchdog, i.e.:
13b7e04f8cSWim Van Sebroeck	  subsequently opening the file and then failing to write to it for
14b7e04f8cSWim Van Sebroeck	  longer than 1 minute will result in rebooting the machine. This
15b7e04f8cSWim Van Sebroeck	  could be useful for a networked machine that needs to come back
16b7e04f8cSWim Van Sebroeck	  on-line as fast as possible after a lock-up. There's both a watchdog
17b7e04f8cSWim Van Sebroeck	  implementation entirely in software (which can sometimes fail to
18b7e04f8cSWim Van Sebroeck	  reboot the machine) and a driver for hardware watchdog boards, which
19b7e04f8cSWim Van Sebroeck	  are more robust and can also keep track of the temperature inside
20e403149cSDirk Hohndel	  your computer. For details, read
2174665686SMauro Carvalho Chehab	  <file:Documentation/watchdog/watchdog-api.rst> in the kernel source.
22b7e04f8cSWim Van Sebroeck
23b7e04f8cSWim Van Sebroeck	  The watchdog is usually used together with the watchdog daemon
24b7e04f8cSWim Van Sebroeck	  which is available from
2501028829SRandy Dunlap	  <https://ibiblio.org/pub/Linux/system/daemons/watchdog/>. This daemon
2601028829SRandy Dunlap	  can also monitor NFS connections and can reboot the machine when the
2701028829SRandy Dunlap	  process table is full.
28b7e04f8cSWim Van Sebroeck
29b7e04f8cSWim Van Sebroeck	  If unsure, say N.
30b7e04f8cSWim Van Sebroeck
31b7e04f8cSWim Van Sebroeckif WATCHDOG
32b7e04f8cSWim Van Sebroeck
3343316044SWim Van Sebroeckconfig WATCHDOG_CORE
340d3e1563SGuenter Roeck	tristate "WatchDog Timer Driver Core"
35a7f7f624SMasahiro Yamada	help
3643316044SWim Van Sebroeck	  Say Y here if you want to use the new watchdog timer driver core.
3743316044SWim Van Sebroeck	  This driver provides a framework for all watchdog timer drivers
3843316044SWim Van Sebroeck	  and gives them the /dev/watchdog interface (and later also the
3943316044SWim Van Sebroeck	  sysfs interface).
4043316044SWim Van Sebroeck
41b7e04f8cSWim Van Sebroeckconfig WATCHDOG_NOWAYOUT
42b7e04f8cSWim Van Sebroeck	bool "Disable watchdog shutdown on close"
43b7e04f8cSWim Van Sebroeck	help
44b7e04f8cSWim Van Sebroeck	  The default watchdog behaviour (which you get if you say N here) is
45b7e04f8cSWim Van Sebroeck	  to stop the timer if the process managing it closes the file
46b7e04f8cSWim Van Sebroeck	  /dev/watchdog. It's always remotely possible that this process might
47b7e04f8cSWim Van Sebroeck	  get killed. If you say Y here, the watchdog cannot be stopped once
48b7e04f8cSWim Van Sebroeck	  it has been started.
49b7e04f8cSWim Van Sebroeck
502501b015SSebastian Reichelconfig WATCHDOG_HANDLE_BOOT_ENABLED
512501b015SSebastian Reichel	bool "Update boot-enabled watchdog until userspace takes over"
522501b015SSebastian Reichel	default y
532501b015SSebastian Reichel	help
542501b015SSebastian Reichel	  The default watchdog behaviour (which you get if you say Y here) is
552501b015SSebastian Reichel	  to ping watchdog devices that were enabled before the driver has
562501b015SSebastian Reichel	  been loaded until control is taken over from userspace using the
572501b015SSebastian Reichel	  /dev/watchdog file. If you say N here, the kernel will not update
582501b015SSebastian Reichel	  the watchdog on its own. Thus if your userspace does not start fast
592501b015SSebastian Reichel	  enough your device will reboot.
602501b015SSebastian Reichel
61487e4e08SRasmus Villemoesconfig WATCHDOG_OPEN_TIMEOUT
62487e4e08SRasmus Villemoes	int "Timeout value for opening watchdog device"
63487e4e08SRasmus Villemoes	default 0
64487e4e08SRasmus Villemoes	help
65487e4e08SRasmus Villemoes	  The maximum time, in seconds, for which the watchdog framework takes
66487e4e08SRasmus Villemoes	  care of pinging a hardware watchdog.  A value of 0 means infinite. The
67487e4e08SRasmus Villemoes	  value set here can be overridden by the commandline parameter
68487e4e08SRasmus Villemoes	  "watchdog.open_timeout".
69487e4e08SRasmus Villemoes
7033b71126SPratyush Anandconfig WATCHDOG_SYSFS
7133b71126SPratyush Anand	bool "Read different watchdog information through sysfs"
7233b71126SPratyush Anand	help
7333b71126SPratyush Anand	  Say Y here if you want to enable watchdog device status read through
7433b71126SPratyush Anand	  sysfs attributes.
7533b71126SPratyush Anand
767b7d2fdcSCurtis Kleinconfig WATCHDOG_HRTIMER_PRETIMEOUT
777b7d2fdcSCurtis Klein	bool "Enable watchdog hrtimer-based pretimeouts"
787b7d2fdcSCurtis Klein	help
797b7d2fdcSCurtis Klein	  Enable this if you want to use a hrtimer timer based pretimeout for
807b7d2fdcSCurtis Klein	  watchdogs that do not natively support pretimeout support. Be aware
817b7d2fdcSCurtis Klein	  that because this pretimeout functionality uses hrtimers, it may not
827b7d2fdcSCurtis Klein	  be able to fire before the actual watchdog fires in some situations.
837b7d2fdcSCurtis Klein
84471ce88bSGuenter Roeckcomment "Watchdog Pretimeout Governors"
85471ce88bSGuenter Roeck
86471ce88bSGuenter Roeckconfig WATCHDOG_PRETIMEOUT_GOV
87471ce88bSGuenter Roeck	bool "Enable watchdog pretimeout governors"
88471ce88bSGuenter Roeck	depends on WATCHDOG_CORE
89471ce88bSGuenter Roeck	help
90471ce88bSGuenter Roeck	  The option allows to select watchdog pretimeout governors.
91471ce88bSGuenter Roeck
92a9f0bda5SGuenter Roeckconfig WATCHDOG_PRETIMEOUT_GOV_SEL
93a9f0bda5SGuenter Roeck	tristate
94a9f0bda5SGuenter Roeck	depends on WATCHDOG_PRETIMEOUT_GOV
95a9f0bda5SGuenter Roeck	default m
96a9f0bda5SGuenter Roeck	select WATCHDOG_PRETIMEOUT_GOV_PANIC if WATCHDOG_PRETIMEOUT_GOV_NOOP=n
97a9f0bda5SGuenter Roeck
98471ce88bSGuenter Roeckif WATCHDOG_PRETIMEOUT_GOV
99471ce88bSGuenter Roeck
100471ce88bSGuenter Roeckconfig WATCHDOG_PRETIMEOUT_GOV_NOOP
101471ce88bSGuenter Roeck	tristate "Noop watchdog pretimeout governor"
1020d3e1563SGuenter Roeck	depends on WATCHDOG_CORE
103471ce88bSGuenter Roeck	default WATCHDOG_CORE
104471ce88bSGuenter Roeck	help
105471ce88bSGuenter Roeck	  Noop watchdog pretimeout governor, only an informational
106471ce88bSGuenter Roeck	  message is added to kernel log buffer.
107471ce88bSGuenter Roeck
108471ce88bSGuenter Roeckconfig WATCHDOG_PRETIMEOUT_GOV_PANIC
109471ce88bSGuenter Roeck	tristate "Panic watchdog pretimeout governor"
1100d3e1563SGuenter Roeck	depends on WATCHDOG_CORE
111471ce88bSGuenter Roeck	default WATCHDOG_CORE
112471ce88bSGuenter Roeck	help
113471ce88bSGuenter Roeck	  Panic watchdog pretimeout governor, on watchdog pretimeout
114471ce88bSGuenter Roeck	  event put the kernel into panic.
115471ce88bSGuenter Roeck
116471ce88bSGuenter Roeckchoice
117471ce88bSGuenter Roeck	prompt "Default Watchdog Pretimeout Governor"
118471ce88bSGuenter Roeck	default WATCHDOG_PRETIMEOUT_DEFAULT_GOV_PANIC
119471ce88bSGuenter Roeck	help
120471ce88bSGuenter Roeck	  This option selects a default watchdog pretimeout governor.
121471ce88bSGuenter Roeck	  The governor takes its action, if a watchdog is capable
122471ce88bSGuenter Roeck	  to report a pretimeout event.
123471ce88bSGuenter Roeck
124471ce88bSGuenter Roeckconfig WATCHDOG_PRETIMEOUT_DEFAULT_GOV_NOOP
125471ce88bSGuenter Roeck	bool "noop"
126471ce88bSGuenter Roeck	depends on WATCHDOG_PRETIMEOUT_GOV_NOOP
127471ce88bSGuenter Roeck	help
128471ce88bSGuenter Roeck	  Use noop watchdog pretimeout governor by default. If noop
129471ce88bSGuenter Roeck	  governor is selected by a user, write a short message to
130471ce88bSGuenter Roeck	  the kernel log buffer and don't do any system changes.
131471ce88bSGuenter Roeck
132471ce88bSGuenter Roeckconfig WATCHDOG_PRETIMEOUT_DEFAULT_GOV_PANIC
133471ce88bSGuenter Roeck	bool "panic"
134471ce88bSGuenter Roeck	depends on WATCHDOG_PRETIMEOUT_GOV_PANIC
135471ce88bSGuenter Roeck	help
136471ce88bSGuenter Roeck	  Use panic watchdog pretimeout governor by default, if
137471ce88bSGuenter Roeck	  a watchdog pretimeout event happens, consider that
138471ce88bSGuenter Roeck	  a watchdog feeder is dead and reboot is unavoidable.
139471ce88bSGuenter Roeck
140471ce88bSGuenter Roeckendchoice
141471ce88bSGuenter Roeck
142471ce88bSGuenter Roeckendif # WATCHDOG_PRETIMEOUT_GOV
143471ce88bSGuenter Roeck
144b7e04f8cSWim Van Sebroeck#
145b7e04f8cSWim Van Sebroeck# General Watchdog drivers
146b7e04f8cSWim Van Sebroeck#
147b7e04f8cSWim Van Sebroeck
148b7e04f8cSWim Van Sebroeckcomment "Watchdog Device Drivers"
149b7e04f8cSWim Van Sebroeck
150b7e04f8cSWim Van Sebroeck# Architecture Independent
151b7e04f8cSWim Van Sebroeck
152b7e04f8cSWim Van Sebroeckconfig SOFT_WATCHDOG
153b7e04f8cSWim Van Sebroeck	tristate "Software watchdog"
154a5132cafSAlan Cox	select WATCHDOG_CORE
155b7e04f8cSWim Van Sebroeck	help
156b7e04f8cSWim Van Sebroeck	  A software monitoring watchdog. This will fail to reboot your system
157b7e04f8cSWim Van Sebroeck	  from some situations that the hardware watchdog will recover
158b7e04f8cSWim Van Sebroeck	  from. Equally it's a lot cheaper to install.
159b7e04f8cSWim Van Sebroeck
160b7e04f8cSWim Van Sebroeck	  To compile this driver as a module, choose M here: the
161b7e04f8cSWim Van Sebroeck	  module will be called softdog.
162b7e04f8cSWim Van Sebroeck
1634cbc6902SWolfram Sangconfig SOFT_WATCHDOG_PRETIMEOUT
1644cbc6902SWolfram Sang	bool "Software watchdog pretimeout governor support"
1654cbc6902SWolfram Sang	depends on SOFT_WATCHDOG && WATCHDOG_PRETIMEOUT_GOV
1664cbc6902SWolfram Sang	help
1674cbc6902SWolfram Sang	  Enable this if you want to use pretimeout governors with the software
1684cbc6902SWolfram Sang	  watchdog. Be aware that governors might affect the watchdog because it
1694cbc6902SWolfram Sang	  is purely software, e.g. the panic governor will stall it!
1704cbc6902SWolfram Sang
171b237bcacSMatti Vaittinenconfig BD957XMUF_WATCHDOG
172b237bcacSMatti Vaittinen	tristate "ROHM BD9576MUF and BD9573MUF PMIC Watchdog"
173b237bcacSMatti Vaittinen	depends on MFD_ROHM_BD957XMUF
174b237bcacSMatti Vaittinen	select WATCHDOG_CORE
175b237bcacSMatti Vaittinen	help
176b237bcacSMatti Vaittinen	  Support for the watchdog in the ROHM BD9576 and BD9573 PMICs.
177b237bcacSMatti Vaittinen	  These PMIC ICs contain watchdog block which can be configured
178b237bcacSMatti Vaittinen	  to toggle reset line if SoC fails to ping watchdog via GPIO.
179b237bcacSMatti Vaittinen
180b237bcacSMatti Vaittinen	  Say Y here to include support for the ROHM BD9576 or BD9573
181b237bcacSMatti Vaittinen	  watchdog. Alternatively say M to compile the driver as a module,
182b237bcacSMatti Vaittinen	  which will be called bd9576_wdt.
183b237bcacSMatti Vaittinen
184664a0d78SAshish Jangamconfig DA9052_WATCHDOG
185664a0d78SAshish Jangam	tristate "Dialog DA9052 Watchdog"
186da2a68b3SGuenter Roeck	depends on PMIC_DA9052 || COMPILE_TEST
187664a0d78SAshish Jangam	select WATCHDOG_CORE
188664a0d78SAshish Jangam	help
189664a0d78SAshish Jangam	  Support for the watchdog in the DA9052 PMIC. Watchdog trigger
190664a0d78SAshish Jangam	  cause system reset.
191664a0d78SAshish Jangam
192664a0d78SAshish Jangam	  Say Y here to include support for the DA9052 watchdog.
193664a0d78SAshish Jangam	  Alternatively say M to compile the driver as a module,
194664a0d78SAshish Jangam	  which will be called da9052_wdt.
195664a0d78SAshish Jangam
196312b00e1SAshish Jangamconfig DA9055_WATCHDOG
197312b00e1SAshish Jangam	tristate "Dialog Semiconductor DA9055 Watchdog"
198da2a68b3SGuenter Roeck	depends on MFD_DA9055 || COMPILE_TEST
19912a5c05cSRandy Dunlap	select WATCHDOG_CORE
200312b00e1SAshish Jangam	help
201312b00e1SAshish Jangam	  If you say yes here you get support for watchdog on the Dialog
202312b00e1SAshish Jangam	  Semiconductor DA9055 PMIC.
203312b00e1SAshish Jangam
204312b00e1SAshish Jangam	  This driver can also be built as a module.  If so, the module
205312b00e1SAshish Jangam	  will be called da9055_wdt.
206312b00e1SAshish Jangam
2075e9c16e3SKrystian Garbaciakconfig DA9063_WATCHDOG
2085e9c16e3SKrystian Garbaciak	tristate "Dialog DA9063 Watchdog"
209da2a68b3SGuenter Roeck	depends on MFD_DA9063 || COMPILE_TEST
2107d608c33SAndrej Picej	depends on I2C
2115e9c16e3SKrystian Garbaciak	select WATCHDOG_CORE
2125e9c16e3SKrystian Garbaciak	help
2135e9c16e3SKrystian Garbaciak	  Support for the watchdog in the DA9063 PMIC.
2145e9c16e3SKrystian Garbaciak
2155e9c16e3SKrystian Garbaciak	  This driver can be built as a module. The module name is da9063_wdt.
2165e9c16e3SKrystian Garbaciak
2177a7cb009SS Twissconfig DA9062_WATCHDOG
21872106c18SSteve Twiss	tristate "Dialog DA9062/61 Watchdog"
219da2a68b3SGuenter Roeck	depends on MFD_DA9062 || COMPILE_TEST
22044144c80SGuenter Roeck	depends on I2C
2217a7cb009SS Twiss	select WATCHDOG_CORE
2227a7cb009SS Twiss	help
22372106c18SSteve Twiss	  Support for the watchdog in the DA9062 and DA9061 PMICs.
2247a7cb009SS Twiss
2257a7cb009SS Twiss	  This driver can be built as a module. The module name is da9062_wdt.
2267a7cb009SS Twiss
22725134eafSAlexander Shiyanconfig GPIO_WATCHDOG
22825134eafSAlexander Shiyan	tristate "Watchdog device controlled through GPIO-line"
22925134eafSAlexander Shiyan	depends on OF_GPIO
23025134eafSAlexander Shiyan	select WATCHDOG_CORE
23125134eafSAlexander Shiyan	help
23225134eafSAlexander Shiyan	  If you say yes here you get support for watchdog device
23325134eafSAlexander Shiyan	  controlled through GPIO-line.
23425134eafSAlexander Shiyan
2355e53c8edSJean-Baptiste Theouconfig GPIO_WATCHDOG_ARCH_INITCALL
2365e53c8edSJean-Baptiste Theou	bool "Register the watchdog as early as possible"
2375e53c8edSJean-Baptiste Theou	depends on GPIO_WATCHDOG=y
2385e53c8edSJean-Baptiste Theou	help
2395e53c8edSJean-Baptiste Theou	  In some situations, the default initcall level (module_init)
2405e53c8edSJean-Baptiste Theou	  in not early enough in the boot process to avoid the watchdog
2415e53c8edSJean-Baptiste Theou	  to be triggered.
2425e53c8edSJean-Baptiste Theou	  If you say yes here, the initcall level would be raised to
2435e53c8edSJean-Baptiste Theou	  arch_initcall.
2445e53c8edSJean-Baptiste Theou	  If in doubt, say N.
2455e53c8edSJean-Baptiste Theou
24650332639SAndreas Wernerconfig MENF21BMC_WATCHDOG
24750332639SAndreas Werner	tristate "MEN 14F021P00 BMC Watchdog"
248da2a68b3SGuenter Roeck	depends on MFD_MENF21BMC || COMPILE_TEST
2496fb303a8SArnd Bergmann	depends on I2C
25050332639SAndreas Werner	select WATCHDOG_CORE
25150332639SAndreas Werner	help
25250332639SAndreas Werner	  Say Y here to include support for the MEN 14F021P00 BMC Watchdog.
25350332639SAndreas Werner
25450332639SAndreas Werner	  This driver can also be built as a module. If so the module
25550332639SAndreas Werner	  will be called menf21bmc_wdt.
25650332639SAndreas Werner
25781ceed41SJohannes Thumshirnconfig MENZ069_WATCHDOG
25881ceed41SJohannes Thumshirn	tristate "MEN 16Z069 Watchdog"
25912aea518SJohannes Thumshirn	depends on MCB
26081ceed41SJohannes Thumshirn	select WATCHDOG_CORE
26181ceed41SJohannes Thumshirn	help
26281ceed41SJohannes Thumshirn	  Say Y here to include support for the MEN 16Z069 Watchdog.
26381ceed41SJohannes Thumshirn
26481ceed41SJohannes Thumshirn	  This driver can also be built as a module. If so the module
26581ceed41SJohannes Thumshirn	  will be called menz069_wdt.
26681ceed41SJohannes Thumshirn
267058dfc76SMika Westerbergconfig WDAT_WDT
268058dfc76SMika Westerberg	tristate "ACPI Watchdog Action Table (WDAT)"
269058dfc76SMika Westerberg	depends on ACPI
270effb46b4SMika Westerberg	select WATCHDOG_CORE
271058dfc76SMika Westerberg	select ACPI_WATCHDOG
272058dfc76SMika Westerberg	help
273058dfc76SMika Westerberg	  This driver adds support for systems with ACPI Watchdog Action
274058dfc76SMika Westerberg	  Table (WDAT) table. Servers typically have this but it can be
275058dfc76SMika Westerberg	  found on some desktop machines as well. This driver will take
276058dfc76SMika Westerberg	  over the native iTCO watchdog driver found on many Intel CPUs.
277058dfc76SMika Westerberg
278058dfc76SMika Westerberg	  To compile this driver as module, choose M here: the module will
279058dfc76SMika Westerberg	  be called wdat_wdt.
280058dfc76SMika Westerberg
281502a0106SMark Brownconfig WM831X_WATCHDOG
282502a0106SMark Brown	tristate "WM831x watchdog"
283d0e32fbaSArnd Bergmann	depends on MFD_WM831X
28400411ee9SMark Brown	select WATCHDOG_CORE
285502a0106SMark Brown	help
286502a0106SMark Brown	  Support for the watchdog in the WM831x AudioPlus PMICs.  When
287502a0106SMark Brown	  the watchdog triggers the system will be reset.
288502a0106SMark Brown
289006948baSMark Brownconfig WM8350_WATCHDOG
290006948baSMark Brown	tristate "WM8350 watchdog"
291006948baSMark Brown	depends on MFD_WM8350
2922e51d90fSAxel Lin	select WATCHDOG_CORE
293006948baSMark Brown	help
294006948baSMark Brown	  Support for the watchdog in the WM8350 AudioPlus PMIC.  When
295006948baSMark Brown	  the watchdog triggers the system will be reset.
296006948baSMark Brown
297c9dcf9f2SMichal Simekconfig XILINX_WATCHDOG
298c9dcf9f2SMichal Simek	tristate "Xilinx Watchdog timer"
29971fd380aSChen Gang	depends on HAS_IOMEM
300c9dcf9f2SMichal Simek	select WATCHDOG_CORE
301c9dcf9f2SMichal Simek	help
30201028829SRandy Dunlap	  Watchdog driver for the xps_timebase_wdt IP core.
303c9dcf9f2SMichal Simek
304c9dcf9f2SMichal Simek	  To compile this driver as a module, choose M here: the
305c9dcf9f2SMichal Simek	  module will be called of_xilinx_wdt.
306c9dcf9f2SMichal Simek
3072a7b753aSMartyn Welchconfig ZIIRAVE_WATCHDOG
3082a7b753aSMartyn Welch	tristate "Zodiac RAVE Watchdog Timer"
3092a7b753aSMartyn Welch	depends on I2C
3102a7b753aSMartyn Welch	select WATCHDOG_CORE
3112a7b753aSMartyn Welch	help
3122a7b753aSMartyn Welch	  Watchdog driver for the Zodiac Aerospace RAVE Switch Watchdog
3132a7b753aSMartyn Welch	  Processor.
3142a7b753aSMartyn Welch
3152a7b753aSMartyn Welch	  To compile this driver as a module, choose M here: the
3162a7b753aSMartyn Welch	  module will be called ziirave_wdt.
3172a7b753aSMartyn Welch
318c3bb3334SAndrey Smirnovconfig RAVE_SP_WATCHDOG
319c3bb3334SAndrey Smirnov	tristate "RAVE SP Watchdog timer"
320c3bb3334SAndrey Smirnov	depends on RAVE_SP_CORE
32120e6bb17SArnd Bergmann	depends on NVMEM || !NVMEM
322c3bb3334SAndrey Smirnov	select WATCHDOG_CORE
323c3bb3334SAndrey Smirnov	help
324c3bb3334SAndrey Smirnov	  Support for the watchdog on RAVE SP device.
325c3bb3334SAndrey Smirnov
326c60923ddSMichael Shychconfig MLX_WDT
327c60923ddSMichael Shych	tristate "Mellanox Watchdog"
328c60923ddSMichael Shych	depends on MELLANOX_PLATFORM
329c60923ddSMichael Shych	select WATCHDOG_CORE
330c60923ddSMichael Shych	select REGMAP
331c60923ddSMichael Shych	help
332c60923ddSMichael Shych	  This is the driver for the hardware watchdog on Mellanox systems.
333c60923ddSMichael Shych	  If you are going to use it, say Y here, otherwise N.
334c60923ddSMichael Shych	  This driver can be used together with the watchdog daemon.
335c60923ddSMichael Shych	  It can also watch your kernel to make sure it doesn't freeze,
336c60923ddSMichael Shych	  and if it does, it reboots your system after a certain amount of
337c60923ddSMichael Shych	  time.
338c60923ddSMichael Shych
339c60923ddSMichael Shych	  To compile this driver as a module, choose M here: the
340c60923ddSMichael Shych	  module will be called mlx-wdt.
341c60923ddSMichael Shych
34285174ca6SMichael Walleconfig SL28CPLD_WATCHDOG
34385174ca6SMichael Walle	tristate "Kontron sl28cpld Watchdog"
34485174ca6SMichael Walle	depends on MFD_SL28CPLD || COMPILE_TEST
34585174ca6SMichael Walle	select WATCHDOG_CORE
34685174ca6SMichael Walle	help
34785174ca6SMichael Walle	  Say Y here to include support for the watchdog timer
34885174ca6SMichael Walle	  on the Kontron sl28 CPLD.
34985174ca6SMichael Walle
35085174ca6SMichael Walle	  To compile this driver as a module, choose M here: the
35185174ca6SMichael Walle	  module will be called sl28cpld_wdt.
35285174ca6SMichael Walle
353b7e04f8cSWim Van Sebroeck# ALPHA Architecture
354b7e04f8cSWim Van Sebroeck
355b7e04f8cSWim Van Sebroeck# ARM Architecture
356b7e04f8cSWim Van Sebroeck
3574a370278SViresh KUMARconfig ARM_SP805_WATCHDOG
3584a370278SViresh KUMAR	tristate "ARM SP805 Watchdog"
3593eafee95SArnd Bergmann	depends on (ARM || ARM64 || COMPILE_TEST) && ARM_AMBA
3604a516539SViresh Kumar	select WATCHDOG_CORE
3614a370278SViresh KUMAR	help
3624a370278SViresh KUMAR	  ARM Primecell SP805 Watchdog timer. This will reboot your system when
3634a370278SViresh KUMAR	  the timeout is reached.
3644a370278SViresh KUMAR
36557d2caaaSFu Weiconfig ARM_SBSA_WATCHDOG
36657d2caaaSFu Wei	tristate "ARM SBSA Generic Watchdog"
36757d2caaaSFu Wei	depends on ARM64
36857d2caaaSFu Wei	depends on ARM_ARCH_TIMER
36957d2caaaSFu Wei	select WATCHDOG_CORE
37057d2caaaSFu Wei	help
37157d2caaaSFu Wei	  ARM SBSA Generic Watchdog has two stage timeouts:
37257d2caaaSFu Wei	  the first signal (WS0) is for alerting the system by interrupt,
37357d2caaaSFu Wei	  the second one (WS1) is a real hardware reset.
37457d2caaaSFu Wei	  More details: ARM DEN0029B - Server Base System Architecture (SBSA)
37557d2caaaSFu Wei
37657d2caaaSFu Wei	  This driver can operate ARM SBSA Generic Watchdog as a single stage
37757d2caaaSFu Wei	  or a two stages watchdog, it depends on the module parameter "action".
37857d2caaaSFu Wei
37957d2caaaSFu Wei	  Note: the maximum timeout in the two stages mode is half of that in
38057d2caaaSFu Wei	  the single stage mode.
38157d2caaaSFu Wei
38257d2caaaSFu Wei	  To compile this driver as module, choose M here: The module
38357d2caaaSFu Wei	  will be called sbsa_gwdt.
38457d2caaaSFu Wei
38554e3d9b5SMarek Behúnconfig ARMADA_37XX_WATCHDOG
38654e3d9b5SMarek Behún	tristate "Armada 37xx watchdog"
38754e3d9b5SMarek Behún	depends on ARCH_MVEBU || COMPILE_TEST
3887f6f1dfbSGuenter Roeck	depends on HAS_IOMEM
38954e3d9b5SMarek Behún	select MFD_SYSCON
39054e3d9b5SMarek Behún	select WATCHDOG_CORE
39154e3d9b5SMarek Behún	help
39254e3d9b5SMarek Behún	   Say Y here to include support for the watchdog timer found on
39354e3d9b5SMarek Behún	   Marvell Armada 37xx SoCs.
39454e3d9b5SMarek Behún	   To compile this driver as a module, choose M here: the
39554e3d9b5SMarek Behún	   module will be called armada_37xx_wdt.
39654e3d9b5SMarek Behún
397aae03dc9SOleksij Rempelconfig ASM9260_WATCHDOG
398aae03dc9SOleksij Rempel	tristate "Alphascale ASM9260 watchdog"
399da2a68b3SGuenter Roeck	depends on MACH_ASM9260 || COMPILE_TEST
400aae03dc9SOleksij Rempel	depends on OF
401aae03dc9SOleksij Rempel	select WATCHDOG_CORE
402aae03dc9SOleksij Rempel	select RESET_CONTROLLER
403aae03dc9SOleksij Rempel	help
40401028829SRandy Dunlap	  Watchdog timer embedded into Alphascale asm9260 chips. This will
40501028829SRandy Dunlap	  reboot your system when the timeout is reached.
406aae03dc9SOleksij Rempel
407b7e04f8cSWim Van Sebroeckconfig AT91RM9200_WATCHDOG
408b7e04f8cSWim Van Sebroeck	tristate "AT91RM9200 watchdog"
409da2a68b3SGuenter Roeck	depends on (SOC_AT91RM9200 && MFD_SYSCON) || COMPILE_TEST
410b7e04f8cSWim Van Sebroeck	help
411b7e04f8cSWim Van Sebroeck	  Watchdog timer embedded into AT91RM9200 chips. This will reboot your
412b7e04f8cSWim Van Sebroeck	  system when the timeout is reached.
413b7e04f8cSWim Van Sebroeck
414e6bb42e3SRenaud CERRATOconfig AT91SAM9X_WATCHDOG
415f0e625c1SAndrew Victor	tristate "AT91SAM9X / AT91CAP9 watchdog"
416da2a68b3SGuenter Roeck	depends on ARCH_AT91 || COMPILE_TEST
417490ac7afSWenyou Yang	select WATCHDOG_CORE
418e6bb42e3SRenaud CERRATO	help
419f0e625c1SAndrew Victor	  Watchdog timer embedded into AT91SAM9X and AT91CAP9 chips. This will
420f0e625c1SAndrew Victor	  reboot your system when the timeout is reached.
421e6bb42e3SRenaud CERRATO
42276534860SWenyou Yangconfig SAMA5D4_WATCHDOG
42376534860SWenyou Yang	tristate "Atmel SAMA5D4 Watchdog Timer"
424da2a68b3SGuenter Roeck	depends on ARCH_AT91 || COMPILE_TEST
42576534860SWenyou Yang	select WATCHDOG_CORE
42676534860SWenyou Yang	help
42776534860SWenyou Yang	  Atmel SAMA5D4 watchdog timer is embedded into SAMA5D4 chips.
42876534860SWenyou Yang	  Its Watchdog Timer Mode Register can be written more than once.
42976534860SWenyou Yang	  This will reboot your system when the timeout is reached.
43076534860SWenyou Yang
43158bf0164SHarini Katakamconfig CADENCE_WATCHDOG
43258bf0164SHarini Katakam	tristate "Cadence Watchdog Timer"
4336960d485SRichard Weinberger	depends on HAS_IOMEM
43458bf0164SHarini Katakam	select WATCHDOG_CORE
43558bf0164SHarini Katakam	help
43658bf0164SHarini Katakam	  Say Y here if you want to include support for the watchdog
43758bf0164SHarini Katakam	  timer in the Xilinx Zynq.
43858bf0164SHarini Katakam
439b7e04f8cSWim Van Sebroeckconfig 21285_WATCHDOG
440b7e04f8cSWim Van Sebroeck	tristate "DC21285 watchdog"
441b7e04f8cSWim Van Sebroeck	depends on FOOTBRIDGE
442b7e04f8cSWim Van Sebroeck	help
443b7e04f8cSWim Van Sebroeck	  The Intel Footbridge chip contains a built-in watchdog circuit. Say Y
444b7e04f8cSWim Van Sebroeck	  here if you wish to use this. Alternatively say M to compile the
445b7e04f8cSWim Van Sebroeck	  driver as a module, which will be called wdt285.
446b7e04f8cSWim Van Sebroeck
447b7e04f8cSWim Van Sebroeck	  This driver does not work on all machines. In particular, early CATS
448b7e04f8cSWim Van Sebroeck	  boards have hardware problems that will cause the machine to simply
449b7e04f8cSWim Van Sebroeck	  lock up if the watchdog fires.
450b7e04f8cSWim Van Sebroeck
451b7e04f8cSWim Van Sebroeck	  "If in doubt, leave it out" - say N.
452b7e04f8cSWim Van Sebroeck
453b7e04f8cSWim Van Sebroeckconfig 977_WATCHDOG
454b7e04f8cSWim Van Sebroeck	tristate "NetWinder WB83C977 watchdog"
455da2a68b3SGuenter Roeck	depends on (FOOTBRIDGE && ARCH_NETWINDER) || (ARM && COMPILE_TEST)
456b7e04f8cSWim Van Sebroeck	help
457b7e04f8cSWim Van Sebroeck	  Say Y here to include support for the WB977 watchdog included in
458b7e04f8cSWim Van Sebroeck	  NetWinder machines. Alternatively say M to compile the driver as
459b7e04f8cSWim Van Sebroeck	  a module, which will be called wdt977.
460b7e04f8cSWim Van Sebroeck
461b7e04f8cSWim Van Sebroeck	  Not sure? It's safe to say N.
462b7e04f8cSWim Van Sebroeck
463766a2aadSLinus Walleijconfig FTWDT010_WATCHDOG
464766a2aadSLinus Walleij	tristate "Faraday Technology FTWDT010 watchdog"
465766a2aadSLinus Walleij	depends on ARM || COMPILE_TEST
466eca10ae6SLinus Walleij	select WATCHDOG_CORE
467766a2aadSLinus Walleij	default ARCH_GEMINI
468eca10ae6SLinus Walleij	help
469766a2aadSLinus Walleij	  Say Y here if to include support for the Faraday Technology
470766a2aadSLinus Walleij	  FTWDT010 watchdog timer embedded in the Cortina Systems Gemini
471766a2aadSLinus Walleij	  family of devices.
472eca10ae6SLinus Walleij
473eca10ae6SLinus Walleij	  To compile this driver as a module, choose M here: the
474766a2aadSLinus Walleij	  module will be called ftwdt010_wdt.
475eca10ae6SLinus Walleij
476b7e04f8cSWim Van Sebroeckconfig IXP4XX_WATCHDOG
477b7e04f8cSWim Van Sebroeck	tristate "IXP4xx Watchdog"
478b7e04f8cSWim Van Sebroeck	depends on ARCH_IXP4XX
479580b8e28SLinus Walleij	select WATCHDOG_CORE
480b7e04f8cSWim Van Sebroeck	help
481b7e04f8cSWim Van Sebroeck	  Say Y here if to include support for the watchdog timer
482b7e04f8cSWim Van Sebroeck	  in the Intel IXP4xx network processors. This driver can
483b7e04f8cSWim Van Sebroeck	  be built as a module by choosing M. The module will
484b7e04f8cSWim Van Sebroeck	  be called ixp4xx_wdt.
485b7e04f8cSWim Van Sebroeck
486b7e04f8cSWim Van Sebroeck	  Note: The internal IXP4xx watchdog does a soft CPU reset
487b7e04f8cSWim Van Sebroeck	  which doesn't reset any peripherals. There are circumstances
488b7e04f8cSWim Van Sebroeck	  where the watchdog will fail to reset the board correctly
489b7e04f8cSWim Van Sebroeck	  (e.g., if the boot ROM is in an unreadable state).
490b7e04f8cSWim Van Sebroeck
491b7e04f8cSWim Van Sebroeck	  Say N if you are unsure.
492b7e04f8cSWim Van Sebroeck
493b7e04f8cSWim Van Sebroeckconfig S3C2410_WATCHDOG
4941ea35b35SArnd Bergmann	tristate "S3C6410/S5Pv210/Exynos Watchdog"
4951ea35b35SArnd Bergmann	depends on ARCH_S3C64XX || ARCH_S5PV210 || ARCH_EXYNOS || COMPILE_TEST
49625dc46e3SWolfram Sang	select WATCHDOG_CORE
49753eac48dSKrzysztof Kozlowski	select MFD_SYSCON if ARCH_EXYNOS
498b7e04f8cSWim Van Sebroeck	help
4991ea35b35SArnd Bergmann	  Watchdog timer block in the Samsung S3C64xx, S5Pv210 and Exynos
5001ea35b35SArnd Bergmann	  SoCs. This will reboot the system when the timer expires with
501981785daSKrzysztof Kozlowski	  the watchdog enabled.
502b7e04f8cSWim Van Sebroeck
503b7e04f8cSWim Van Sebroeck	  The driver is limited by the speed of the system's PCLK
504b7e04f8cSWim Van Sebroeck	  signal, so with reasonably fast systems (PCLK around 50-66MHz)
505b7e04f8cSWim Van Sebroeck	  then watchdog intervals of over approximately 20seconds are
506b7e04f8cSWim Van Sebroeck	  unavailable.
507b7e04f8cSWim Van Sebroeck
508981785daSKrzysztof Kozlowski	  Choose Y/M here only if you build for such Samsung SoC.
509b7e04f8cSWim Van Sebroeck	  The driver can be built as a module by choosing M, and will
510981785daSKrzysztof Kozlowski	  be called s3c2410_wdt.
511b7e04f8cSWim Van Sebroeck
512b7e04f8cSWim Van Sebroeckconfig SA1100_WATCHDOG
513b7e04f8cSWim Van Sebroeck	tristate "SA1100/PXA2xx watchdog"
514b7e04f8cSWim Van Sebroeck	depends on ARCH_SA1100 || ARCH_PXA
515b7e04f8cSWim Van Sebroeck	help
516b7e04f8cSWim Van Sebroeck	  Watchdog timer embedded into SA11x0 and PXA2xx chips. This will
517b7e04f8cSWim Van Sebroeck	  reboot your system when timeout is reached.
518b7e04f8cSWim Van Sebroeck
519b7e04f8cSWim Van Sebroeck	  NOTE: once enabled, this timer cannot be disabled.
520b7e04f8cSWim Van Sebroeck
521b7e04f8cSWim Van Sebroeck	  To compile this driver as a module, choose M here: the
522b7e04f8cSWim Van Sebroeck	  module will be called sa1100_wdt.
523b7e04f8cSWim Van Sebroeck
524c9353ae1SJamie Ilesconfig DW_WATCHDOG
525c9353ae1SJamie Iles	tristate "Synopsys DesignWare watchdog"
5261ccfe6f9SRichard Weinberger	depends on HAS_IOMEM
527f29a72c2SGuenter Roeck	select WATCHDOG_CORE
528c9353ae1SJamie Iles	help
529c9353ae1SJamie Iles	  Say Y here if to include support for the Synopsys DesignWare
53058a251f2SBaruch Siach	  watchdog timer found in many chips.
531c9353ae1SJamie Iles	  To compile this driver as a module, choose M here: the
532c9353ae1SJamie Iles	  module will be called dw_wdt.
533c9353ae1SJamie Iles
534b7e04f8cSWim Van Sebroeckconfig EP93XX_WATCHDOG
535b7e04f8cSWim Van Sebroeck	tristate "EP93xx Watchdog"
536da2a68b3SGuenter Roeck	depends on ARCH_EP93XX || COMPILE_TEST
537e12a679dSH Hartley Sweeten	select WATCHDOG_CORE
538b7e04f8cSWim Van Sebroeck	help
539b7e04f8cSWim Van Sebroeck	  Say Y here if to include support for the watchdog timer
540b7e04f8cSWim Van Sebroeck	  embedded in the Cirrus Logic EP93xx family of devices.
541b7e04f8cSWim Van Sebroeck
542b7e04f8cSWim Van Sebroeck	  To compile this driver as a module, choose M here: the
543b7e04f8cSWim Van Sebroeck	  module will be called ep93xx_wdt.
544b7e04f8cSWim Van Sebroeck
545b7e04f8cSWim Van Sebroeckconfig OMAP_WATCHDOG
546b7e04f8cSWim Van Sebroeck	tristate "OMAP Watchdog"
547da2a68b3SGuenter Roeck	depends on ARCH_OMAP16XX || ARCH_OMAP2PLUS || COMPILE_TEST
54867c0f554SAaro Koskinen	select WATCHDOG_CORE
549b7e04f8cSWim Van Sebroeck	help
55001028829SRandy Dunlap	  Support for TI OMAP1610/OMAP1710/OMAP2420/OMAP3430/OMAP4430 watchdog.
55101028829SRandy Dunlap	  Say 'Y' here to enable the
55201028829SRandy Dunlap	  OMAP1610/OMAP1710/OMAP2420/OMAP3430/OMAP4430 watchdog timer.
553b7e04f8cSWim Van Sebroeck
554b7e04f8cSWim Van Sebroeckconfig PNX4008_WATCHDOG
555d684f05fSRoland Stigge	tristate "LPC32XX Watchdog"
556c9b8af43SArnd Bergmann	depends on ARCH_LPC32XX || COMPILE_TEST
5576b1e8386SWolfram Sang	select WATCHDOG_CORE
558b7e04f8cSWim Van Sebroeck	help
559b7e04f8cSWim Van Sebroeck	  Say Y here if to include support for the watchdog timer
560d684f05fSRoland Stigge	  in the LPC32XX processor.
561b7e04f8cSWim Van Sebroeck	  This driver can be built as a module by choosing M. The module
562b7e04f8cSWim Van Sebroeck	  will be called pnx4008_wdt.
563b7e04f8cSWim Van Sebroeck
564b7e04f8cSWim Van Sebroeck	  Say N if you are unsure.
565b7e04f8cSWim Van Sebroeck
566b7e04f8cSWim Van Sebroeckconfig DAVINCI_WATCHDOG
567b7e04f8cSWim Van Sebroeck	tristate "DaVinci watchdog"
568da2a68b3SGuenter Roeck	depends on ARCH_DAVINCI || ARCH_KEYSTONE || COMPILE_TEST
569f48f3ceaSIvan Khoronzhuk	select WATCHDOG_CORE
570b7e04f8cSWim Van Sebroeck	help
571b7e04f8cSWim Van Sebroeck	  Say Y here if to include support for the watchdog timer
5728832b200SIvan Khoronzhuk	  in the DaVinci DM644x/DM646x or Keystone processors.
573b7e04f8cSWim Van Sebroeck	  To compile this driver as a module, choose M here: the
574b7e04f8cSWim Van Sebroeck	  module will be called davinci_wdt.
575b7e04f8cSWim Van Sebroeck
576b7e04f8cSWim Van Sebroeck	  NOTE: once enabled, this timer cannot be disabled.
577b7e04f8cSWim Van Sebroeck	  Say N if you are unsure.
578b7e04f8cSWim Van Sebroeck
5792d63908bSTero Kristoconfig K3_RTI_WATCHDOG
5802d63908bSTero Kristo	tristate "Texas Instruments K3 RTI watchdog"
5812d63908bSTero Kristo	depends on ARCH_K3 || COMPILE_TEST
5822d63908bSTero Kristo	select WATCHDOG_CORE
5832d63908bSTero Kristo	help
5842d63908bSTero Kristo	  Say Y here if you want to include support for the K3 watchdog
5852d63908bSTero Kristo	  timer (RTI module) available in the K3 generation of processors.
5862d63908bSTero Kristo
5873b937a7dSNicolas Pitreconfig ORION_WATCHDOG
5883b937a7dSNicolas Pitre	tristate "Orion watchdog"
5893e3f354bSArnd Bergmann	depends on ARCH_ORION5X || ARCH_DOVE || MACH_DOVE || ARCH_MVEBU || COMPILE_TEST
590c3525e3fSThierry Reding	depends on ARM
5910dd6e484SAxel Lin	select WATCHDOG_CORE
59222ac9232SSylver Bruneau	help
59322ac9232SSylver Bruneau	  Say Y here if to include support for the watchdog timer
5943b937a7dSNicolas Pitre	  in the Marvell Orion5x and Kirkwood ARM SoCs.
59522ac9232SSylver Bruneau	  To compile this driver as a module, choose M here: the
5963b937a7dSNicolas Pitre	  module will be called orion_wdt.
59722ac9232SSylver Bruneau
59822b1c841SBeniamino Galvaniconfig RN5T618_WATCHDOG
59922b1c841SBeniamino Galvani	tristate "Ricoh RN5T618 watchdog"
600da2a68b3SGuenter Roeck	depends on MFD_RN5T618 || COMPILE_TEST
60122b1c841SBeniamino Galvani	select WATCHDOG_CORE
60222b1c841SBeniamino Galvani	help
60322b1c841SBeniamino Galvani	  If you say yes here you get support for watchdog on the Ricoh
60422b1c841SBeniamino Galvani	  RN5T618 PMIC.
60522b1c841SBeniamino Galvani
60622b1c841SBeniamino Galvani	  This driver can also be built as a module.  If so, the module
60722b1c841SBeniamino Galvani	  will be called rn5t618_wdt.
60822b1c841SBeniamino Galvani
609d00680edSCarlo Caioneconfig SUNXI_WATCHDOG
610d00680edSCarlo Caione	tristate "Allwinner SoCs watchdog support"
611da2a68b3SGuenter Roeck	depends on ARCH_SUNXI || COMPILE_TEST
612d00680edSCarlo Caione	select WATCHDOG_CORE
613d00680edSCarlo Caione	help
614d00680edSCarlo Caione	  Say Y here to include support for the watchdog timer
615d00680edSCarlo Caione	  in Allwinner SoCs.
616d00680edSCarlo Caione	  To compile this driver as a module, choose M here: the
617d00680edSCarlo Caione	  module will be called sunxi_wdt.
618d00680edSCarlo Caione
619975b7f0fSJoel Stanleyconfig NPCM7XX_WATCHDOG
620ec242929SGuenter Roeck	tristate "Nuvoton NPCM750 watchdog"
621975b7f0fSJoel Stanley	depends on ARCH_NPCM || COMPILE_TEST
6227db706a2STomer Maimon	default y if ARCH_NPCM7XX
623975b7f0fSJoel Stanley	select WATCHDOG_CORE
624975b7f0fSJoel Stanley	help
625975b7f0fSJoel Stanley	  Say Y here to include Watchdog timer support for the
626975b7f0fSJoel Stanley	  watchdog embedded into the NPCM7xx.
627975b7f0fSJoel Stanley	  This watchdog is used to reset the system and thus cannot be
628975b7f0fSJoel Stanley	  compiled as a module.
629975b7f0fSJoel Stanley
63080e45b1eSTimo Kokkonenconfig TWL4030_WATCHDOG
63180e45b1eSTimo Kokkonen	tristate "TWL4030 Watchdog"
63280e45b1eSTimo Kokkonen	depends on TWL4030_CORE
633b2c4e4b2SJarkko Nikula	select WATCHDOG_CORE
63480e45b1eSTimo Kokkonen	help
63580e45b1eSTimo Kokkonen	  Support for TI TWL4030 watchdog.  Say 'Y' here to enable the
63680e45b1eSTimo Kokkonen	  watchdog timer support for TWL4030 chips.
63780e45b1eSTimo Kokkonen
638de6303abSWolfram Sangconfig STMP3XXX_RTC_WATCHDOG
639de6303abSWolfram Sang	tristate "Freescale STMP3XXX & i.MX23/28 watchdog"
640da2a68b3SGuenter Roeck	depends on RTC_DRV_STMP || COMPILE_TEST
641de6303abSWolfram Sang	select WATCHDOG_CORE
642de6303abSWolfram Sang	help
643de6303abSWolfram Sang	  Say Y here to include support for the watchdog timer inside
644de6303abSWolfram Sang	  the RTC for the STMP37XX/378X or i.MX23/28 SoC.
645de6303abSWolfram Sang	  To compile this driver as a module, choose M here: the
646de6303abSWolfram Sang	  module will be called stmp3xxx_rtc_wdt.
647de6303abSWolfram Sang
648bf900639SDamien Riegelconfig TS4800_WATCHDOG
649bf900639SDamien Riegel	tristate "TS-4800 Watchdog"
650bf900639SDamien Riegel	depends on HAS_IOMEM && OF
6510519e91dSJean Delvare	depends on SOC_IMX51 || COMPILE_TEST
652bf900639SDamien Riegel	select WATCHDOG_CORE
653bf900639SDamien Riegel	select MFD_SYSCON
654bf900639SDamien Riegel	help
655bf900639SDamien Riegel	  Technologic Systems TS-4800 has watchdog timer implemented in
656bf900639SDamien Riegel	  an external FPGA. Say Y here if you want to support for the
657bf900639SDamien Riegel	  watchdog timer on TS-4800 board.
658bf900639SDamien Riegel
659c90bf2aaSMika Westerbergconfig TS72XX_WATCHDOG
660c90bf2aaSMika Westerberg	tristate "TS-72XX SBC Watchdog"
661da2a68b3SGuenter Roeck	depends on MACH_TS72XX || COMPILE_TEST
6620f0dbd9bSShyam Saini	select WATCHDOG_CORE
663c90bf2aaSMika Westerberg	help
664c90bf2aaSMika Westerberg	  Technologic Systems TS-7200, TS-7250 and TS-7260 boards have
665c90bf2aaSMika Westerberg	  watchdog timer implemented in a external CPLD chip. Say Y here
666c90bf2aaSMika Westerberg	  if you want to support for the watchdog timer on TS-72XX boards.
667c90bf2aaSMika Westerberg
668c90bf2aaSMika Westerberg	  To compile this driver as a module, choose M here: the
669c90bf2aaSMika Westerberg	  module will be called ts72xx_wdt.
670c90bf2aaSMika Westerberg
6715e803716SMarc Zyngierconfig MAX63XX_WATCHDOG
6725e803716SMarc Zyngier	tristate "Max63xx watchdog"
67304658449SVivien Didelot	depends on HAS_IOMEM
674a0f36833SAxel Lin	select WATCHDOG_CORE
6755e803716SMarc Zyngier	help
6765e803716SMarc Zyngier	  Support for memory mapped max63{69,70,71,72,73,74} watchdog timer.
6775e803716SMarc Zyngier
678ff3bb2f5SLaxman Dewanganconfig MAX77620_WATCHDOG
679ff3bb2f5SLaxman Dewangan	tristate "Maxim Max77620 Watchdog Timer"
680254099d8SLuca Ceresoli	depends on MFD_MAX77620 || MFD_MAX77714 || COMPILE_TEST
681da9e3f4eSDavid Engraf	select WATCHDOG_CORE
682ff3bb2f5SLaxman Dewangan	help
683ff3bb2f5SLaxman Dewangan	  This is the driver for the Max77620 watchdog timer.
684ff3bb2f5SLaxman Dewangan	  Say 'Y' here to enable the watchdog timer support for
685ff3bb2f5SLaxman Dewangan	  MAX77620 chips. To compile this driver as a module,
686ff3bb2f5SLaxman Dewangan	  choose M here: the module will be called max77620_wdt.
687ff3bb2f5SLaxman Dewangan
688bb2fd8a8SWolfram Sangconfig IMX2_WDT
689bb2fd8a8SWolfram Sang	tristate "IMX2+ Watchdog"
690da2a68b3SGuenter Roeck	depends on ARCH_MXC || ARCH_LAYERSCAPE || COMPILE_TEST
691a7977003SXiubo Li	select REGMAP_MMIO
692faad5de0SAnatolij Gustschin	select WATCHDOG_CORE
693bb2fd8a8SWolfram Sang	help
694bb2fd8a8SWolfram Sang	  This is the driver for the hardware watchdog
695bb2fd8a8SWolfram Sang	  on the Freescale IMX2 and later processors.
696bb2fd8a8SWolfram Sang	  If you have one of these processors and wish to have
697bb2fd8a8SWolfram Sang	  watchdog support enabled, say Y, otherwise say N.
698bb2fd8a8SWolfram Sang
699bb2fd8a8SWolfram Sang	  To compile this driver as a module, choose M here: the
700bb2fd8a8SWolfram Sang	  module will be called imx2_wdt.
701bb2fd8a8SWolfram Sang
702986857acSAnson Huangconfig IMX_SC_WDT
703986857acSAnson Huang	tristate "IMX SC Watchdog"
704986857acSAnson Huang	depends on HAVE_ARM_SMCCC
70515f7d7fcSAnson Huang	depends on IMX_SCU
706986857acSAnson Huang	select WATCHDOG_CORE
707986857acSAnson Huang	help
708986857acSAnson Huang	  This is the driver for the system controller watchdog
709986857acSAnson Huang	  on the NXP i.MX SoCs with system controller inside, the
710986857acSAnson Huang	  watchdog driver will call ARM SMC API and trap into
711986857acSAnson Huang	  ARM-Trusted-Firmware for operations, ARM-Trusted-Firmware
712986857acSAnson Huang	  will request system controller to execute the operations.
713986857acSAnson Huang	  If you have one of these processors and wish to have
714986857acSAnson Huang	  watchdog support enabled, say Y, otherwise say N.
715986857acSAnson Huang
716986857acSAnson Huang	  To compile this driver as a module, choose M here: the
717986857acSAnson Huang	  module will be called imx_sc_wdt.
718986857acSAnson Huang
71941b630f4SAnson Huangconfig IMX7ULP_WDT
72041b630f4SAnson Huang	tristate "IMX7ULP Watchdog"
72141b630f4SAnson Huang	depends on ARCH_MXC || COMPILE_TEST
72241b630f4SAnson Huang	select WATCHDOG_CORE
72341b630f4SAnson Huang	help
72441b630f4SAnson Huang	  This is the driver for the hardware watchdog on the Freescale
72541b630f4SAnson Huang	  IMX7ULP and later processors. If you have one of these
72641b630f4SAnson Huang	  processors and wish to have watchdog support enabled,
72741b630f4SAnson Huang	  say Y, otherwise say N.
72841b630f4SAnson Huang
72941b630f4SAnson Huang	  To compile this driver as a module, choose M here: the
73041b630f4SAnson Huang	  module will be called imx7ulp_wdt.
73141b630f4SAnson Huang
732d0305aacSLinus Walleijconfig DB500_WATCHDOG
733d0305aacSLinus Walleij	tristate "ST-Ericsson DB800 watchdog"
7349297b652SArnd Bergmann	depends on MFD_DB8500_PRCMU
735f0e5bd41SFabio Baltieri	select WATCHDOG_CORE
736f0e5bd41SFabio Baltieri	default y
737f0e5bd41SFabio Baltieri	help
738f0e5bd41SFabio Baltieri	  Say Y here to include Watchdog timer support for the watchdog
739d0305aacSLinus Walleij	  existing in the prcmu of ST-Ericsson DB8500 platform.
740f0e5bd41SFabio Baltieri
741f0e5bd41SFabio Baltieri	  To compile this driver as a module, choose M here: the
742d0305aacSLinus Walleij	  module will be called db500_wdt.
743f0e5bd41SFabio Baltieri
7443d3a6d18SAaro Koskinenconfig RETU_WATCHDOG
7453d3a6d18SAaro Koskinen	tristate "Retu watchdog"
7469ad82f11SArnd Bergmann	depends on MFD_RETU
7473d3a6d18SAaro Koskinen	select WATCHDOG_CORE
7483d3a6d18SAaro Koskinen	help
7493d3a6d18SAaro Koskinen	  Retu watchdog driver for Nokia Internet Tablets (770, N800,
7503d3a6d18SAaro Koskinen	  N810). At least on N800 the watchdog cannot be disabled, so
7513d3a6d18SAaro Koskinen	  this driver is essential and you should enable it.
7523d3a6d18SAaro Koskinen
7533d3a6d18SAaro Koskinen	  To compile this driver as a module, choose M here: the
7543d3a6d18SAaro Koskinen	  module will be called retu_wdt.
7553d3a6d18SAaro Koskinen
756e14538e0SJonas Jensenconfig MOXART_WDT
757e14538e0SJonas Jensen	tristate "MOXART watchdog"
758da2a68b3SGuenter Roeck	depends on ARCH_MOXART || COMPILE_TEST
759e14538e0SJonas Jensen	help
760e14538e0SJonas Jensen	  Say Y here to include Watchdog timer support for the watchdog
761e14538e0SJonas Jensen	  existing on the MOXA ART SoC series platforms.
762e14538e0SJonas Jensen
763e14538e0SJonas Jensen	  To compile this driver as a module, choose M here: the
764e14538e0SJonas Jensen	  module will be called moxart_wdt.
765e14538e0SJonas Jensen
766f27925a6SLee Jonesconfig ST_LPC_WATCHDOG
767f27925a6SLee Jones	tristate "STMicroelectronics LPC Watchdog"
768da2a68b3SGuenter Roeck	depends on ARCH_STI || COMPILE_TEST
769f27925a6SLee Jones	depends on OF
770f27925a6SLee Jones	select WATCHDOG_CORE
771f27925a6SLee Jones	help
772f27925a6SLee Jones	  Say Y here to include STMicroelectronics Low Power Controller
773f27925a6SLee Jones	  (LPC) based Watchdog timer support.
774f27925a6SLee Jones
775f27925a6SLee Jones	  To compile this driver as a module, choose M here: the
776f27925a6SLee Jones	  module will be called st_lpc_wdt.
777f27925a6SLee Jones
778c33a1597SAndrew Chewconfig TEGRA_WATCHDOG
779c33a1597SAndrew Chew	tristate "Tegra watchdog"
78071fd380aSChen Gang	depends on (ARCH_TEGRA || COMPILE_TEST) && HAS_IOMEM
781c33a1597SAndrew Chew	select WATCHDOG_CORE
782c33a1597SAndrew Chew	help
783c33a1597SAndrew Chew	  Say Y here to include support for the watchdog timer
784c33a1597SAndrew Chew	  embedded in NVIDIA Tegra SoCs.
785c33a1597SAndrew Chew
786c33a1597SAndrew Chew	  To compile this driver as a module, choose M here: the
787c33a1597SAndrew Chew	  module will be called tegra_wdt.
788c33a1597SAndrew Chew
7891094ebe9SJosh Cartwrightconfig QCOM_WDT
7901094ebe9SJosh Cartwright	tristate "QCOM watchdog"
7911094ebe9SJosh Cartwright	depends on HAS_IOMEM
792da2a68b3SGuenter Roeck	depends on ARCH_QCOM || COMPILE_TEST
7931094ebe9SJosh Cartwright	select WATCHDOG_CORE
7941094ebe9SJosh Cartwright	help
7951094ebe9SJosh Cartwright	  Say Y here to include Watchdog timer support for the watchdog found
7961094ebe9SJosh Cartwright	  on QCOM chipsets.  Currently supported targets are the MSM8960,
7971094ebe9SJosh Cartwright	  APQ8064, and IPQ8064.
7981094ebe9SJosh Cartwright
7991094ebe9SJosh Cartwright	  To compile this driver as a module, choose M here: the
8001094ebe9SJosh Cartwright	  module will be called qcom_wdt.
8011094ebe9SJosh Cartwright
802683fa50fSNeil Armstrongconfig MESON_GXBB_WATCHDOG
803683fa50fSNeil Armstrong	tristate "Amlogic Meson GXBB SoCs watchdog support"
804da2a68b3SGuenter Roeck	depends on ARCH_MESON || COMPILE_TEST
805683fa50fSNeil Armstrong	select WATCHDOG_CORE
806683fa50fSNeil Armstrong	help
807683fa50fSNeil Armstrong	  Say Y here to include support for the watchdog timer
808683fa50fSNeil Armstrong	  in Amlogic Meson GXBB SoCs.
809683fa50fSNeil Armstrong	  To compile this driver as a module, choose M here: the
810683fa50fSNeil Armstrong	  module will be called meson_gxbb_wdt.
811683fa50fSNeil Armstrong
81222e1b8f6SCarlo Caioneconfig MESON_WATCHDOG
81322e1b8f6SCarlo Caione	tristate "Amlogic Meson SoCs watchdog support"
814da2a68b3SGuenter Roeck	depends on ARCH_MESON || COMPILE_TEST
81522e1b8f6SCarlo Caione	select WATCHDOG_CORE
81622e1b8f6SCarlo Caione	help
81722e1b8f6SCarlo Caione	  Say Y here to include support for the watchdog timer
81822e1b8f6SCarlo Caione	  in Amlogic Meson SoCs.
81922e1b8f6SCarlo Caione	  To compile this driver as a module, choose M here: the
82022e1b8f6SCarlo Caione	  module will be called meson_wdt.
82122e1b8f6SCarlo Caione
822a44a4553SMatthias Bruggerconfig MEDIATEK_WATCHDOG
823a44a4553SMatthias Brugger	tristate "Mediatek SoCs watchdog support"
824da2a68b3SGuenter Roeck	depends on ARCH_MEDIATEK || COMPILE_TEST
825ab571cbcSKevin Hilman	default ARCH_MEDIATEK
826a44a4553SMatthias Brugger	select WATCHDOG_CORE
8275eee7c62SRandy Dunlap	select RESET_CONTROLLER
828a44a4553SMatthias Brugger	help
829a44a4553SMatthias Brugger	  Say Y here to include support for the watchdog timer
830a44a4553SMatthias Brugger	  in Mediatek SoCs.
831a44a4553SMatthias Brugger	  To compile this driver as a module, choose M here: the
832a44a4553SMatthias Brugger	  module will be called mtk_wdt.
833a44a4553SMatthias Brugger
834336694a0SBaruch Siachconfig DIGICOLOR_WATCHDOG
835336694a0SBaruch Siach	tristate "Conexant Digicolor SoCs watchdog support"
836da2a68b3SGuenter Roeck	depends on ARCH_DIGICOLOR || COMPILE_TEST
837336694a0SBaruch Siach	select WATCHDOG_CORE
838336694a0SBaruch Siach	help
839336694a0SBaruch Siach	  Say Y here to include support for the watchdog timer
840336694a0SBaruch Siach	  in Conexant Digicolor SoCs.
841336694a0SBaruch Siach	  To compile this driver as a module, choose M here: the
842336694a0SBaruch Siach	  module will be called digicolor_wdt.
843336694a0SBaruch Siach
84472a9e7feSJulius Wernerconfig ARM_SMC_WATCHDOG
84572a9e7feSJulius Werner	tristate "ARM Secure Monitor Call based watchdog support"
84672a9e7feSJulius Werner	depends on ARM || ARM64
84772a9e7feSJulius Werner	depends on OF
84872a9e7feSJulius Werner	depends on HAVE_ARM_SMCCC
84972a9e7feSJulius Werner	select WATCHDOG_CORE
85072a9e7feSJulius Werner	help
85172a9e7feSJulius Werner	  Say Y here to include support for a watchdog timer
85272a9e7feSJulius Werner	  implemented by the EL3 Secure Monitor on ARM platforms.
85372a9e7feSJulius Werner	  Requires firmware support.
85472a9e7feSJulius Werner	  To compile this driver as a module, choose M here: the
85572a9e7feSJulius Werner	  module will be called arm_smc_wdt.
85672a9e7feSJulius Werner
8577c25f8c9SAriel D'Alessandroconfig LPC18XX_WATCHDOG
8587c25f8c9SAriel D'Alessandro	tristate "LPC18xx/43xx Watchdog"
8597c25f8c9SAriel D'Alessandro	depends on ARCH_LPC18XX || COMPILE_TEST
860d42d6108SRichard Weinberger	depends on HAS_IOMEM
8617c25f8c9SAriel D'Alessandro	select WATCHDOG_CORE
8627c25f8c9SAriel D'Alessandro	help
8637c25f8c9SAriel D'Alessandro	  Say Y here if to include support for the watchdog timer
8647c25f8c9SAriel D'Alessandro	  in NXP LPC SoCs family, which includes LPC18xx/LPC43xx
8657c25f8c9SAriel D'Alessandro	  processors.
8667c25f8c9SAriel D'Alessandro	  To compile this driver as a module, choose M here: the
8677c25f8c9SAriel D'Alessandro	  module will be called lpc18xx_wdt.
8687c25f8c9SAriel D'Alessandro
869bd99b68eSWolfram Sangconfig RENESAS_WDT
870bd99b68eSWolfram Sang	tristate "Renesas WDT Watchdog"
871bd99b68eSWolfram Sang	depends on ARCH_RENESAS || COMPILE_TEST
872bd99b68eSWolfram Sang	select WATCHDOG_CORE
873bd99b68eSWolfram Sang	help
874bd99b68eSWolfram Sang	  This driver adds watchdog support for the integrated watchdogs in the
875bd99b68eSWolfram Sang	  Renesas R-Car and other SH-Mobile SoCs (usually named RWDT or SWDT).
876bd99b68eSWolfram Sang
877aea24187SChris Brandtconfig RENESAS_RZAWDT
878aea24187SChris Brandt	tristate "Renesas RZ/A WDT Watchdog"
879aea24187SChris Brandt	depends on ARCH_RENESAS || COMPILE_TEST
880aea24187SChris Brandt	select WATCHDOG_CORE
881aea24187SChris Brandt	help
882aea24187SChris Brandt	  This driver adds watchdog support for the integrated watchdogs in the
883aea24187SChris Brandt	  Renesas RZ/A SoCs. These watchdogs can be used to reset a system.
884aea24187SChris Brandt
885d65112f5SPhil Edworthyconfig RENESAS_RZN1WDT
886d65112f5SPhil Edworthy	tristate "Renesas RZ/N1 watchdog"
887d65112f5SPhil Edworthy	depends on ARCH_RENESAS || COMPILE_TEST
888d65112f5SPhil Edworthy	select WATCHDOG_CORE
889d65112f5SPhil Edworthy	help
890d65112f5SPhil Edworthy	  This driver adds watchdog support for the integrated watchdogs in the
891d65112f5SPhil Edworthy	  Renesas RZ/N1 SoCs. These watchdogs can be used to reset a system.
892d65112f5SPhil Edworthy
8932cbc5cd0SBiju Dasconfig RENESAS_RZG2LWDT
8942cbc5cd0SBiju Das	tristate "Renesas RZ/G2L WDT Watchdog"
8952cbc5cd0SBiju Das	depends on ARCH_RENESAS || COMPILE_TEST
8962cbc5cd0SBiju Das	select WATCHDOG_CORE
8972cbc5cd0SBiju Das	help
8982cbc5cd0SBiju Das	  This driver adds watchdog support for the integrated watchdogs in the
8992cbc5cd0SBiju Das	  Renesas RZ/G2L SoCs. These watchdogs can be used to reset a system.
9002cbc5cd0SBiju Das
901efa859f7SJoel Stanleyconfig ASPEED_WATCHDOG
9022050dd06SAndrew Jeffery	tristate "Aspeed BMC watchdog support"
903efa859f7SJoel Stanley	depends on ARCH_ASPEED || COMPILE_TEST
904efa859f7SJoel Stanley	select WATCHDOG_CORE
905efa859f7SJoel Stanley	help
906efa859f7SJoel Stanley	  Say Y here to include support for the watchdog timer
907ffff023aSAndrew Jeffery	  in Aspeed BMC SoCs.
908efa859f7SJoel Stanley
909efa859f7SJoel Stanley	  This driver is required to reboot the SoC.
910efa859f7SJoel Stanley
911efa859f7SJoel Stanley	  To compile this driver as a module, choose M here: the
912efa859f7SJoel Stanley	  module will be called aspeed_wdt.
913efa859f7SJoel Stanley
9144332d113SYannick Fertreconfig STM32_WATCHDOG
9154332d113SYannick Fertre	tristate "STM32 Independent WatchDoG (IWDG) support"
9164332d113SYannick Fertre	depends on ARCH_STM32
9174332d113SYannick Fertre	select WATCHDOG_CORE
9184332d113SYannick Fertre	default y
9194332d113SYannick Fertre	help
9204332d113SYannick Fertre	  Say Y here to include support for the watchdog timer
9214332d113SYannick Fertre	  in stm32 SoCs.
9224332d113SYannick Fertre
9234332d113SYannick Fertre	  To compile this driver as a module, choose M here: the
9244332d113SYannick Fertre	  module will be called stm32_iwdg.
9254332d113SYannick Fertre
92628804c2cSPascal PAILLET-LMEconfig STPMIC1_WATCHDOG
92728804c2cSPascal PAILLET-LME	tristate "STPMIC1 PMIC watchdog support"
92828804c2cSPascal PAILLET-LME	depends on MFD_STPMIC1
92928804c2cSPascal PAILLET-LME	select WATCHDOG_CORE
93028804c2cSPascal PAILLET-LME	help
93128804c2cSPascal PAILLET-LME	  Say Y here to include watchdog support embedded into STPMIC1 PMIC.
93228804c2cSPascal PAILLET-LME	  If the watchdog timer expires, stpmic1 will shut down all its power
93328804c2cSPascal PAILLET-LME	  supplies.
93428804c2cSPascal PAILLET-LME
93528804c2cSPascal PAILLET-LME	  To compile this driver as a module, choose M here: the
93628804c2cSPascal PAILLET-LME	  module will be called spmic1_wdt.
93728804c2cSPascal PAILLET-LME
938e7bf0289SKeiji Hayashibaraconfig UNIPHIER_WATCHDOG
939e7bf0289SKeiji Hayashibara	tristate "UniPhier watchdog support"
940e7bf0289SKeiji Hayashibara	depends on ARCH_UNIPHIER || COMPILE_TEST
941e7bf0289SKeiji Hayashibara	depends on OF && MFD_SYSCON
942e7bf0289SKeiji Hayashibara	select WATCHDOG_CORE
943e7bf0289SKeiji Hayashibara	help
944e7bf0289SKeiji Hayashibara	  Say Y here to include support watchdog timer embedded
945e7bf0289SKeiji Hayashibara	  into the UniPhier system.
946e7bf0289SKeiji Hayashibara
947e7bf0289SKeiji Hayashibara	  To compile this driver as a module, choose M here: the
948e7bf0289SKeiji Hayashibara	  module will be called uniphier_wdt.
949e7bf0289SKeiji Hayashibara
9502bdf6acbSAndreas Färberconfig RTD119X_WATCHDOG
9512bdf6acbSAndreas Färber	bool "Realtek RTD119x/RTD129x watchdog support"
9522bdf6acbSAndreas Färber	depends on ARCH_REALTEK || COMPILE_TEST
9532bdf6acbSAndreas Färber	depends on OF
9542bdf6acbSAndreas Färber	select WATCHDOG_CORE
9552bdf6acbSAndreas Färber	default ARCH_REALTEK
956b7e04f8cSWim Van Sebroeck	help
9572bdf6acbSAndreas Färber	  Say Y here to include support for the watchdog timer in
9582bdf6acbSAndreas Färber	  Realtek RTD1295 SoCs.
9592bdf6acbSAndreas Färber
9607d7267aeSSander Vanheuleconfig REALTEK_OTTO_WDT
9617d7267aeSSander Vanheule	tristate "Realtek Otto MIPS watchdog support"
9627d7267aeSSander Vanheule	depends on MACH_REALTEK_RTL || COMPILE_TEST
9637d7267aeSSander Vanheule	depends on COMMON_CLK
9647d7267aeSSander Vanheule	select WATCHDOG_CORE
9657d7267aeSSander Vanheule	default MACH_REALTEK_RTL
9667d7267aeSSander Vanheule	help
9677d7267aeSSander Vanheule	  Say Y here to include support for the watchdog timer on Realtek
9687d7267aeSSander Vanheule	  RTL838x, RTL839x, RTL930x SoCs. This watchdog has pretimeout
9697d7267aeSSander Vanheule	  notifications and system reset on timeout.
9707d7267aeSSander Vanheule
9717d7267aeSSander Vanheule	  When built as a module this will be called realtek_otto_wdt.
9727d7267aeSSander Vanheule
97347760346SEric Longconfig SPRD_WATCHDOG
97447760346SEric Long	tristate "Spreadtrum watchdog support"
97547760346SEric Long	depends on ARCH_SPRD || COMPILE_TEST
97647760346SEric Long	select WATCHDOG_CORE
97747760346SEric Long	help
97847760346SEric Long	  Say Y here to include watchdog timer supported
97947760346SEric Long	  by Spreadtrum system.
980b7e04f8cSWim Van Sebroeck
981969c0accSLoic Poulainconfig PM8916_WATCHDOG
982969c0accSLoic Poulain	tristate "QCOM PM8916 pmic watchdog"
983969c0accSLoic Poulain	depends on OF && MFD_SPMI_PMIC
984969c0accSLoic Poulain	select WATCHDOG_CORE
985969c0accSLoic Poulain	help
986969c0accSLoic Poulain	  Say Y here to include support watchdog timer embedded into the
987969c0accSLoic Poulain	  pm8916 module.
988969c0accSLoic Poulain
989c5b8e464SNobuhiro Iwamatsuconfig VISCONTI_WATCHDOG
990c5b8e464SNobuhiro Iwamatsu	tristate "Toshiba Visconti series watchdog support"
991c5b8e464SNobuhiro Iwamatsu	depends on ARCH_VISCONTI || COMPILE_TEST
992c5b8e464SNobuhiro Iwamatsu	select WATCHDOG_CORE
993c5b8e464SNobuhiro Iwamatsu	help
994c5b8e464SNobuhiro Iwamatsu	  Say Y here to include support for the watchdog timer in Toshiba
995c5b8e464SNobuhiro Iwamatsu	  Visconti SoCs.
996c5b8e464SNobuhiro Iwamatsu
997e9800b79SDaniel Palmerconfig MSC313E_WATCHDOG
998e9800b79SDaniel Palmer	tristate "MStar MSC313e watchdog"
999e9800b79SDaniel Palmer	depends on ARCH_MSTARV7 || COMPILE_TEST
1000e9800b79SDaniel Palmer	select WATCHDOG_CORE
1001e9800b79SDaniel Palmer	help
1002e9800b79SDaniel Palmer	  Say Y here to include support for the Watchdog timer embedded
1003e9800b79SDaniel Palmer	  into MStar MSC313e chips. This will reboot your system when the
1004e9800b79SDaniel Palmer	  timeout is reached.
1005e9800b79SDaniel Palmer
1006e9800b79SDaniel Palmer	  To compile this driver as a module, choose M here: the
1007e9800b79SDaniel Palmer	  module will be called msc313e_wdt.
1008e9800b79SDaniel Palmer
10094ed224aeSSven Peterconfig APPLE_WATCHDOG
10104ed224aeSSven Peter	tristate "Apple SoC watchdog"
10114ed224aeSSven Peter	depends on ARCH_APPLE || COMPILE_TEST
10124ed224aeSSven Peter	select WATCHDOG_CORE
10134ed224aeSSven Peter	help
10144ed224aeSSven Peter	  Say Y here to include support for the Watchdog found in Apple
10154ed224aeSSven Peter	  SoCs such as the M1. Next to the common watchdog features this
10164ed224aeSSven Peter	  driver is also required in order to reboot these SoCs.
10174ed224aeSSven Peter
10184ed224aeSSven Peter	  To compile this driver as a module, choose M here: the
10194ed224aeSSven Peter	  module will be called apple_wdt.
10204ed224aeSSven Peter
1021daf42866SXiantao Huconfig SUNPLUS_WATCHDOG
1022daf42866SXiantao Hu	tristate "Sunplus watchdog support"
1023daf42866SXiantao Hu	depends on ARCH_SUNPLUS || COMPILE_TEST
1024daf42866SXiantao Hu	select WATCHDOG_CORE
1025daf42866SXiantao Hu	help
1026daf42866SXiantao Hu	  Say Y here to include support for the watchdog timer
1027daf42866SXiantao Hu	  in Sunplus SoCs.
1028daf42866SXiantao Hu
1029daf42866SXiantao Hu	  To compile this driver as a module, choose M here: the
1030daf42866SXiantao Hu	  module will be called sunplus_wdt.
1031daf42866SXiantao Hu
1032b7e04f8cSWim Van Sebroeck# X86 (i386 + ia64 + x86_64) Architecture
1033b7e04f8cSWim Van Sebroeck
1034b7e04f8cSWim Van Sebroeckconfig ACQUIRE_WDT
1035b7e04f8cSWim Van Sebroeck	tristate "Acquire SBC Watchdog Timer"
1036b7e04f8cSWim Van Sebroeck	depends on X86
1037a7f7f624SMasahiro Yamada	help
1038b7e04f8cSWim Van Sebroeck	  This is the driver for the hardware watchdog on Single Board
1039b7e04f8cSWim Van Sebroeck	  Computers produced by Acquire Inc (and others). This watchdog
1040b7e04f8cSWim Van Sebroeck	  simply watches your kernel to make sure it doesn't freeze, and if
1041b7e04f8cSWim Van Sebroeck	  it does, it reboots your computer after a certain amount of time.
1042b7e04f8cSWim Van Sebroeck
1043b7e04f8cSWim Van Sebroeck	  To compile this driver as a module, choose M here: the
1044b7e04f8cSWim Van Sebroeck	  module will be called acquirewdt.
1045b7e04f8cSWim Van Sebroeck
1046b7e04f8cSWim Van Sebroeck	  Most people will say N.
1047b7e04f8cSWim Van Sebroeck
1048b7e04f8cSWim Van Sebroeckconfig ADVANTECH_WDT
1049b7e04f8cSWim Van Sebroeck	tristate "Advantech SBC Watchdog Timer"
1050b7e04f8cSWim Van Sebroeck	depends on X86
1051b7e04f8cSWim Van Sebroeck	help
1052b7e04f8cSWim Van Sebroeck	  If you are configuring a Linux kernel for the Advantech single-board
1053b7e04f8cSWim Van Sebroeck	  computer, say `Y' here to support its built-in watchdog timer
1054b7e04f8cSWim Van Sebroeck	  feature. More information can be found at
10552ab77a34SAlexander A. Klimov	  <https://www.advantech.com.tw/products/>
1056b7e04f8cSWim Van Sebroeck
105708435c2aSThomas Kastnerconfig ADVANTECH_EC_WDT
105808435c2aSThomas Kastner	tristate "Advantech Embedded Controller Watchdog Timer"
105908435c2aSThomas Kastner	depends on X86
106008435c2aSThomas Kastner	help
106108435c2aSThomas Kastner		This driver supports Advantech products with ITE based Embedded Controller.
106208435c2aSThomas Kastner		It does not support Advantech products with other ECs or without EC.
106308435c2aSThomas Kastner
1064b7e04f8cSWim Van Sebroeckconfig ALIM1535_WDT
1065b7e04f8cSWim Van Sebroeck	tristate "ALi M1535 PMU Watchdog Timer"
1066b7e04f8cSWim Van Sebroeck	depends on X86 && PCI
1067a7f7f624SMasahiro Yamada	help
1068b7e04f8cSWim Van Sebroeck	  This is the driver for the hardware watchdog on the ALi M1535 PMU.
1069b7e04f8cSWim Van Sebroeck
1070b7e04f8cSWim Van Sebroeck	  To compile this driver as a module, choose M here: the
1071b7e04f8cSWim Van Sebroeck	  module will be called alim1535_wdt.
1072b7e04f8cSWim Van Sebroeck
1073b7e04f8cSWim Van Sebroeck	  Most people will say N.
1074b7e04f8cSWim Van Sebroeck
1075b7e04f8cSWim Van Sebroeckconfig ALIM7101_WDT
1076b7e04f8cSWim Van Sebroeck	tristate "ALi M7101 PMU Computer Watchdog"
1077bdd87354SAlexander Clouter	depends on PCI
1078b7e04f8cSWim Van Sebroeck	help
1079b7e04f8cSWim Van Sebroeck	  This is the driver for the hardware watchdog on the ALi M7101 PMU
1080bdd87354SAlexander Clouter	  as used in the x86 Cobalt servers and also found in some
1081bdd87354SAlexander Clouter	  SPARC Netra servers too.
1082b7e04f8cSWim Van Sebroeck
1083b7e04f8cSWim Van Sebroeck	  To compile this driver as a module, choose M here: the
1084b7e04f8cSWim Van Sebroeck	  module will be called alim7101_wdt.
1085b7e04f8cSWim Van Sebroeck
1086b7e04f8cSWim Van Sebroeck	  Most people will say N.
1087b7e04f8cSWim Van Sebroeck
1088c36a483dSWilliam Breathitt Grayconfig EBC_C384_WDT
1089c36a483dSWilliam Breathitt Gray	tristate "WinSystems EBC-C384 Watchdog Timer"
1090ccfe35eaSWilliam Breathitt Gray	depends on X86
1091ccfe35eaSWilliam Breathitt Gray	select ISA_BUS_API
1092c36a483dSWilliam Breathitt Gray	select WATCHDOG_CORE
1093c36a483dSWilliam Breathitt Gray	help
1094c36a483dSWilliam Breathitt Gray	  Enables watchdog timer support for the watchdog timer on the
1095c36a483dSWilliam Breathitt Gray	  WinSystems EBC-C384 motherboard. The timeout may be configured via
1096c36a483dSWilliam Breathitt Gray	  the timeout module parameter.
1097c36a483dSWilliam Breathitt Gray
109881126222SDavid Müllerconfig EXAR_WDT
109981126222SDavid Müller	tristate "Exar Watchdog Timer"
110081126222SDavid Müller	depends on X86
110181126222SDavid Müller	select WATCHDOG_CORE
110281126222SDavid Müller	help
110381126222SDavid Müller	  Enables watchdog timer support for the watchdog timer present
110481126222SDavid Müller	  in some Exar/MaxLinear UART chips like the XR28V38x.
110581126222SDavid Müller
110681126222SDavid Müller	  To compile this driver as a module, choose M here: the
110781126222SDavid Müller	  module will be called exar_wdt.
110881126222SDavid Müller
110996cb4eb0SGiel van Schijndelconfig F71808E_WDT
1110166fbcf8SMaciej S. Szmigiero	tristate "Fintek F718xx, F818xx Super I/O Watchdog"
1111e1926349SKees Cook	depends on X86
11128bea27edSAhmad Fatoum	select WATCHDOG_CORE
111396cb4eb0SGiel van Schijndel	help
1114166fbcf8SMaciej S. Szmigiero	  This is the driver for the hardware watchdog on the Fintek F71808E,
1115ca2fc5efSJaret Cantu	  F71862FG, F71868, F71869, F71882FG, F71889FG, F81803, F81865, and
1116ca2fc5efSJaret Cantu	  F81866 Super I/O controllers.
111796cb4eb0SGiel van Schijndel
111896cb4eb0SGiel van Schijndel	  You can compile this driver directly into the kernel, or use
111996cb4eb0SGiel van Schijndel	  it as a module.  The module will be called f71808e_wdt.
112096cb4eb0SGiel van Schijndel
112115e28bf1SPriyanka Guptaconfig SP5100_TCO
112215e28bf1SPriyanka Gupta	tristate "AMD/ATI SP5100 TCO Timer/Watchdog"
112315e28bf1SPriyanka Gupta	depends on X86 && PCI
1124a17f4f03SWim Van Sebroeck	select WATCHDOG_CORE
1125a7f7f624SMasahiro Yamada	help
112615e28bf1SPriyanka Gupta	  Hardware watchdog driver for the AMD/ATI SP5100 chipset. The TCO
112715e28bf1SPriyanka Gupta	  (Total Cost of Ownership) timer is a watchdog timer that will reboot
112815e28bf1SPriyanka Gupta	  the machine after its expiration. The expiration time can be
112915e28bf1SPriyanka Gupta	  configured with the "heartbeat" parameter.
113015e28bf1SPriyanka Gupta
113115e28bf1SPriyanka Gupta	  To compile this driver as a module, choose M here: the
113215e28bf1SPriyanka Gupta	  module will be called sp5100_tco.
113396cb4eb0SGiel van Schijndel
11340b36086bSJordan Crouseconfig GEODE_WDT
11350b36086bSJordan Crouse	tristate "AMD Geode CS5535/CS5536 Watchdog"
11360369fdf2SArnd Bergmann	depends on CS5535_MFGPT
11370b36086bSJordan Crouse	help
11380b36086bSJordan Crouse	  This driver enables a watchdog capability built into the
11390b36086bSJordan Crouse	  CS5535/CS5536 companion chips for the AMD Geode GX and LX
11400b36086bSJordan Crouse	  processors.  This watchdog watches your kernel to make sure
11410b36086bSJordan Crouse	  it doesn't freeze, and if it does, it reboots your computer after
11420b36086bSJordan Crouse	  a certain amount of time.
11430b36086bSJordan Crouse
11440b36086bSJordan Crouse	  You can compile this driver directly into the kernel, or use
11450b36086bSJordan Crouse	  it as a module.  The module will be called geodewdt.
11460b36086bSJordan Crouse
1147b7e04f8cSWim Van Sebroeckconfig SC520_WDT
1148b7e04f8cSWim Van Sebroeck	tristate "AMD Elan SC520 processor Watchdog"
1149da2a68b3SGuenter Roeck	depends on MELAN || COMPILE_TEST
1150b7e04f8cSWim Van Sebroeck	help
1151b7e04f8cSWim Van Sebroeck	  This is the driver for the hardware watchdog built in to the
1152b7e04f8cSWim Van Sebroeck	  AMD "Elan" SC520 microcomputer commonly used in embedded systems.
1153b7e04f8cSWim Van Sebroeck	  This watchdog simply watches your kernel to make sure it doesn't
1154b7e04f8cSWim Van Sebroeck	  freeze, and if it does, it reboots your computer after a certain
1155b7e04f8cSWim Van Sebroeck	  amount of time.
1156b7e04f8cSWim Van Sebroeck
1157b7e04f8cSWim Van Sebroeck	  You can compile this driver directly into the kernel, or use
1158b7e04f8cSWim Van Sebroeck	  it as a module.  The module will be called sc520_wdt.
1159b7e04f8cSWim Van Sebroeck
11603a5f9000SDenis Turischevconfig SBC_FITPC2_WATCHDOG
11613a5f9000SDenis Turischev	tristate "Compulab SBC-FITPC2 watchdog"
11623a5f9000SDenis Turischev	depends on X86
1163a7f7f624SMasahiro Yamada	help
1164ef39a1bfSDenis Turischev	  This is the driver for the built-in watchdog timer on the fit-PC2,
1165ef39a1bfSDenis Turischev	  fit-PC2i, CM-iAM single-board computers made by Compulab.
11663a5f9000SDenis Turischev
116701028829SRandy Dunlap	  It's possible to enable the watchdog timer either from BIOS (F2) or
116801028829SRandy Dunlap	  from booted Linux.
116901028829SRandy Dunlap	  When the "Watchdog Timer Value" is enabled one can set 31-255 seconds
117001028829SRandy Dunlap	  operational range.
11713a5f9000SDenis Turischev
117201028829SRandy Dunlap	  Entering BIOS setup temporarily disables watchdog operation regardless
117301028829SRandy Dunlap	  of current state, so system will not be restarted while user is in
117401028829SRandy Dunlap	  BIOS setup.
11753a5f9000SDenis Turischev
117601028829SRandy Dunlap	  Once the watchdog is enabled the system will be restarted every
11773a5f9000SDenis Turischev	  "Watchdog Timer Value" period, so to prevent it user can restart or
11783a5f9000SDenis Turischev	  disable the watchdog.
11793a5f9000SDenis Turischev
11803a5f9000SDenis Turischev	  To compile this driver as a module, choose M here: the
11813a5f9000SDenis Turischev	  module will be called sbc_fitpc2_wdt.
11823a5f9000SDenis Turischev
11833a5f9000SDenis Turischev	  Most people will say N.
11843a5f9000SDenis Turischev
1185b7e04f8cSWim Van Sebroeckconfig EUROTECH_WDT
1186b7e04f8cSWim Van Sebroeck	tristate "Eurotech CPU-1220/1410 Watchdog Timer"
1187b7e04f8cSWim Van Sebroeck	depends on X86
1188b7e04f8cSWim Van Sebroeck	help
1189b7e04f8cSWim Van Sebroeck	  Enable support for the watchdog timer on the Eurotech CPU-1220 and
1190b7e04f8cSWim Van Sebroeck	  CPU-1410 cards.  These are PC/104 SBCs. Spec sheets and product
1191b7e04f8cSWim Van Sebroeck	  information are at <http://www.eurotech.it/>.
1192b7e04f8cSWim Van Sebroeck
1193b7e04f8cSWim Van Sebroeckconfig IB700_WDT
1194b7e04f8cSWim Van Sebroeck	tristate "IB700 SBC Watchdog Timer"
1195b7e04f8cSWim Van Sebroeck	depends on X86
1196a7f7f624SMasahiro Yamada	help
1197b7e04f8cSWim Van Sebroeck	  This is the driver for the hardware watchdog on the IB700 Single
119801028829SRandy Dunlap	  Board Computer produced by TMC Technology (www.tmc-uk.com). This
119901028829SRandy Dunlap	  watchdog simply watches your kernel to make sure it doesn't freeze,
120001028829SRandy Dunlap	  and if it does, it reboots your computer after a certain amount of time.
1201b7e04f8cSWim Van Sebroeck
120201028829SRandy Dunlap	  This driver is like the WDT501 driver but for slightly different
120301028829SRandy Dunlap	  hardware.
1204b7e04f8cSWim Van Sebroeck
1205b7e04f8cSWim Van Sebroeck	  To compile this driver as a module, choose M here: the
1206b7e04f8cSWim Van Sebroeck	  module will be called ib700wdt.
1207b7e04f8cSWim Van Sebroeck
1208b7e04f8cSWim Van Sebroeck	  Most people will say N.
1209b7e04f8cSWim Van Sebroeck
1210b7e04f8cSWim Van Sebroeckconfig IBMASR
1211b7e04f8cSWim Van Sebroeck	tristate "IBM Automatic Server Restart"
1212b7e04f8cSWim Van Sebroeck	depends on X86
1213b7e04f8cSWim Van Sebroeck	help
1214b7e04f8cSWim Van Sebroeck	  This is the driver for the IBM Automatic Server Restart watchdog
1215b7e04f8cSWim Van Sebroeck	  timer built-in into some eServer xSeries machines.
1216b7e04f8cSWim Van Sebroeck
1217b7e04f8cSWim Van Sebroeck	  To compile this driver as a module, choose M here: the
1218b7e04f8cSWim Van Sebroeck	  module will be called ibmasr.
1219b7e04f8cSWim Van Sebroeck
1220b7e04f8cSWim Van Sebroeckconfig WAFER_WDT
122101ed08c1SVeljkovic Srdjan	tristate "ICP Single Board Computer Watchdog Timer"
1222b7e04f8cSWim Van Sebroeck	depends on X86
1223b7e04f8cSWim Van Sebroeck	help
122401ed08c1SVeljkovic Srdjan	  This is a driver for the hardware watchdog on the ICP Single
122501ed08c1SVeljkovic Srdjan	  Board Computer. This driver is working on (at least) the following
122601ed08c1SVeljkovic Srdjan	  IPC SBC's: Wafer 5823, Rocky 4783, Rocky 3703 and Rocky 3782.
1227b7e04f8cSWim Van Sebroeck
1228b7e04f8cSWim Van Sebroeck	  To compile this driver as a module, choose M here: the
1229b7e04f8cSWim Van Sebroeck	  module will be called wafer5823wdt.
1230b7e04f8cSWim Van Sebroeck
1231b7e04f8cSWim Van Sebroeckconfig I6300ESB_WDT
1232b7e04f8cSWim Van Sebroeck	tristate "Intel 6300ESB Timer/Watchdog"
12337050bd54SMichael Olbrich	depends on PCI
12347e2e5158SMatteo Croce	select WATCHDOG_CORE
1235a7f7f624SMasahiro Yamada	help
1236b7e04f8cSWim Van Sebroeck	  Hardware driver for the watchdog timer built into the Intel
1237b7e04f8cSWim Van Sebroeck	  6300ESB controller hub.
1238b7e04f8cSWim Van Sebroeck
1239b7e04f8cSWim Van Sebroeck	  To compile this driver as a module, choose M here: the
1240b7e04f8cSWim Van Sebroeck	  module will be called i6300esb.
1241b7e04f8cSWim Van Sebroeck
1242101ce87bSAlexander Steinconfig IE6XX_WDT
1243101ce87bSAlexander Stein	tristate "Intel Atom E6xx Watchdog"
1244101ce87bSAlexander Stein	depends on X86 && PCI
1245101ce87bSAlexander Stein	select WATCHDOG_CORE
1246101ce87bSAlexander Stein	select MFD_CORE
1247101ce87bSAlexander Stein	select LPC_SCH
1248a7f7f624SMasahiro Yamada	help
1249101ce87bSAlexander Stein	  Hardware driver for the watchdog timer built into the Intel
1250101ce87bSAlexander Stein	  Atom E6XX (TunnelCreek) processor.
1251101ce87bSAlexander Stein
1252101ce87bSAlexander Stein	  To compile this driver as a module, choose M here: the
1253101ce87bSAlexander Stein	  module will be called ie6xx_wdt.
1254101ce87bSAlexander Stein
125587a1ef80SDavid Cohenconfig INTEL_MID_WATCHDOG
125687a1ef80SDavid Cohen	tristate "Intel MID Watchdog Timer"
125787a1ef80SDavid Cohen	depends on X86_INTEL_MID
125887a1ef80SDavid Cohen	select WATCHDOG_CORE
1259a7f7f624SMasahiro Yamada	help
126087a1ef80SDavid Cohen	  Watchdog timer driver built into the Intel SCU for Intel MID
126187a1ef80SDavid Cohen	  Platforms.
126287a1ef80SDavid Cohen
126387a1ef80SDavid Cohen	  This driver currently supports only the watchdog evolution
126487a1ef80SDavid Cohen	  implementation in SCU, available for Merrifield generation.
126587a1ef80SDavid Cohen
126687a1ef80SDavid Cohen	  To compile this driver as a module, choose M here.
126787a1ef80SDavid Cohen
1268b7e04f8cSWim Van Sebroeckconfig ITCO_WDT
1269b7e04f8cSWim Van Sebroeck	tristate "Intel TCO Timer/Watchdog"
1270b7e04f8cSWim Van Sebroeck	depends on (X86 || IA64) && PCI
1271bff23431SWim Van Sebroeck	select WATCHDOG_CORE
12723cef072dSGuenter Roeck	depends on I2C || I2C=n
1273b30c1a46SArnd Bergmann	depends on MFD_INTEL_PMC_BXT || !MFD_INTEL_PMC_BXT
12742a7a0e9bSMatt Fleming	select LPC_ICH if !EXPERT
12753cef072dSGuenter Roeck	select I2C_I801 if !EXPERT && I2C
1276a7f7f624SMasahiro Yamada	help
1277b7e04f8cSWim Van Sebroeck	  Hardware driver for the intel TCO timer based watchdog devices.
1278b7e04f8cSWim Van Sebroeck	  These drivers are included in the Intel 82801 I/O Controller
127912d60e28SWim Van Sebroeck	  Hub family (from ICH0 up to ICH10) and in the Intel 63xxESB
1280b7e04f8cSWim Van Sebroeck	  controller hub.
1281b7e04f8cSWim Van Sebroeck
1282b7e04f8cSWim Van Sebroeck	  The TCO (Total Cost of Ownership) timer is a watchdog timer
1283b7e04f8cSWim Van Sebroeck	  that will reboot the machine after its second expiration. The
1284b7e04f8cSWim Van Sebroeck	  expiration time can be configured with the "heartbeat" parameter.
1285b7e04f8cSWim Van Sebroeck
1286b7e04f8cSWim Van Sebroeck	  On some motherboards the driver may fail to reset the chipset's
1287b7e04f8cSWim Van Sebroeck	  NO_REBOOT flag which prevents the watchdog from rebooting the
1288b7e04f8cSWim Van Sebroeck	  machine. If this is the case you will get a kernel message like
1289b7e04f8cSWim Van Sebroeck	  "failed to reset NO_REBOOT flag, reboot disabled by hardware".
1290b7e04f8cSWim Van Sebroeck
1291b7e04f8cSWim Van Sebroeck	  To compile this driver as a module, choose M here: the
1292b7e04f8cSWim Van Sebroeck	  module will be called iTCO_wdt.
1293b7e04f8cSWim Van Sebroeck
1294b7e04f8cSWim Van Sebroeckconfig ITCO_VENDOR_SUPPORT
1295b7e04f8cSWim Van Sebroeck	bool "Intel TCO Timer/Watchdog Specific Vendor Support"
1296b7e04f8cSWim Van Sebroeck	depends on ITCO_WDT
1297a7f7f624SMasahiro Yamada	help
1298b7e04f8cSWim Van Sebroeck	  Add vendor specific support to the intel TCO timer based watchdog
1299b7e04f8cSWim Van Sebroeck	  devices. At this moment we only have additional support for some
1300b7e04f8cSWim Van Sebroeck	  SuperMicro Inc. motherboards.
1301b7e04f8cSWim Van Sebroeck
130238ff6fd2SJorge Boncompte [DTI2]config IT8712F_WDT
130338ff6fd2SJorge Boncompte [DTI2]	tristate "IT8712F (Smart Guardian) Watchdog Timer"
130438ff6fd2SJorge Boncompte [DTI2]	depends on X86
1305a7f7f624SMasahiro Yamada	help
130638ff6fd2SJorge Boncompte [DTI2]	  This is the driver for the built-in watchdog timer on the IT8712F
130738ff6fd2SJorge Boncompte [DTI2]	  Super I/0 chipset used on many motherboards.
130838ff6fd2SJorge Boncompte [DTI2]
13094fc36808SWim Van Sebroeck	  If the driver does not work, then make sure that the game port in
13104fc36808SWim Van Sebroeck	  the BIOS is enabled.
13114fc36808SWim Van Sebroeck
131238ff6fd2SJorge Boncompte [DTI2]	  To compile this driver as a module, choose M here: the
131338ff6fd2SJorge Boncompte [DTI2]	  module will be called it8712f_wdt.
131438ff6fd2SJorge Boncompte [DTI2]
1315e1fee94fSOliver Schusterconfig IT87_WDT
1316e1fee94fSOliver Schuster	tristate "IT87 Watchdog Timer"
1317e1926349SKees Cook	depends on X86
13181d7b8039SGuenter Roeck	select WATCHDOG_CORE
1319a7f7f624SMasahiro Yamada	help
1320cddda07cSGuenter Roeck	  This is the driver for the hardware watchdog on the ITE IT8607,
1321cddda07cSGuenter Roeck	  IT8620, IT8622, IT8625, IT8628, IT8655, IT8665, IT8686, IT8702,
1322cddda07cSGuenter Roeck	  IT8712, IT8716, IT8718, IT8720, IT8721, IT8726, IT8728, and
1323cddda07cSGuenter Roeck	  IT8783 Super I/O chips.
1324198ca015SDiego Elio Pettenò
1325dfb0b8eaSOndrej Zajicek	  This watchdog simply watches your kernel to make sure it doesn't
1326dfb0b8eaSOndrej Zajicek	  freeze, and if it does, it reboots your computer after a certain
1327dfb0b8eaSOndrej Zajicek	  amount of time.
1328e1fee94fSOliver Schuster
1329e1fee94fSOliver Schuster	  To compile this driver as a module, choose M here: the module will
1330e1fee94fSOliver Schuster	  be called it87_wdt.
1331e1fee94fSOliver Schuster
13327f4da474SThomas Mingarelliconfig HP_WATCHDOG
1333ea6649c7SNaga Chumbalkar	tristate "HP ProLiant iLO2+ Hardware Watchdog Timer"
1334d0a4027fSJerry Hoemann	select WATCHDOG_CORE
1335891862d5SJerry Hoemann	depends on (ARM64 || X86) && PCI
13367f4da474SThomas Mingarelli	help
133700fd20b4SJerry Hoemann	  A software monitoring watchdog and NMI handling driver. This driver
133886ded1f3Sdann frazier	  will detect lockups and provide a stack trace. This is a driver that
1339ea6649c7SNaga Chumbalkar	  will only load on an HP ProLiant system with a minimum of iLO2 support.
134086ded1f3Sdann frazier	  To compile this driver as a module, choose M here: the module will be
134186ded1f3Sdann frazier	  called hpwdt.
134286ded1f3Sdann frazier
1343345f1625SGuenter Roeckconfig HPWDT_NMI_DECODING
1344345f1625SGuenter Roeck	bool "NMI support for the HP ProLiant iLO2+ Hardware Watchdog Timer"
1345891862d5SJerry Hoemann	depends on X86 && HP_WATCHDOG
1346345f1625SGuenter Roeck	default y
1347345f1625SGuenter Roeck	help
1348345f1625SGuenter Roeck	  Enables the NMI handler for the watchdog pretimeout NMI and the iLO
1349345f1625SGuenter Roeck	  "Generate NMI to System" virtual button.  When an NMI is claimed
1350345f1625SGuenter Roeck	  by the driver, panic is called.
1351345f1625SGuenter Roeck
1352e51c288eSKevin Strasserconfig KEMPLD_WDT
1353e51c288eSKevin Strasser	tristate "Kontron COM Watchdog Timer"
1354ed4a9ecaSArnd Bergmann	depends on MFD_KEMPLD
1355e51c288eSKevin Strasser	select WATCHDOG_CORE
1356e51c288eSKevin Strasser	help
1357e51c288eSKevin Strasser	  Support for the PLD watchdog on some Kontron ETX and COMexpress
1358e51c288eSKevin Strasser	  (ETXexpress) modules
1359e51c288eSKevin Strasser
1360e51c288eSKevin Strasser	  This driver can also be built as a module. If so, the module will be
1361e51c288eSKevin Strasser	  called kempld_wdt.
1362e51c288eSKevin Strasser
1363b7e04f8cSWim Van Sebroeckconfig SC1200_WDT
1364b7e04f8cSWim Van Sebroeck	tristate "National Semiconductor PC87307/PC97307 (ala SC1200) Watchdog"
1365b7e04f8cSWim Van Sebroeck	depends on X86
1366b7e04f8cSWim Van Sebroeck	help
1367b7e04f8cSWim Van Sebroeck	  This is a driver for National Semiconductor PC87307/PC97307 hardware
1368b7e04f8cSWim Van Sebroeck	  watchdog cards as found on the SC1200. This watchdog is mainly used
1369b7e04f8cSWim Van Sebroeck	  for power management purposes and can be used to power down the device
1370b7e04f8cSWim Van Sebroeck	  during inactivity periods (includes interrupt activity monitoring).
1371b7e04f8cSWim Van Sebroeck
1372b7e04f8cSWim Van Sebroeck	  To compile this driver as a module, choose M here: the
1373b7e04f8cSWim Van Sebroeck	  module will be called sc1200wdt.
1374b7e04f8cSWim Van Sebroeck
1375b7e04f8cSWim Van Sebroeck	  Most people will say N.
1376b7e04f8cSWim Van Sebroeck
1377b7e04f8cSWim Van Sebroeckconfig SCx200_WDT
1378b7e04f8cSWim Van Sebroeck	tristate "National Semiconductor SCx200 Watchdog"
1379b7e04f8cSWim Van Sebroeck	depends on SCx200 && PCI
1380b7e04f8cSWim Van Sebroeck	help
1381b7e04f8cSWim Van Sebroeck	  Enable the built-in watchdog timer support on the National
1382b7e04f8cSWim Van Sebroeck	  Semiconductor SCx200 processors.
1383b7e04f8cSWim Van Sebroeck
1384b7e04f8cSWim Van Sebroeck	  If compiled as a module, it will be called scx200_wdt.
1385b7e04f8cSWim Van Sebroeck
1386b7e04f8cSWim Van Sebroeckconfig PC87413_WDT
1387b7e04f8cSWim Van Sebroeck	tristate "NS PC87413 watchdog"
1388b7e04f8cSWim Van Sebroeck	depends on X86
1389a7f7f624SMasahiro Yamada	help
1390b7e04f8cSWim Van Sebroeck	  This is the driver for the hardware watchdog on the PC87413 chipset
1391b7e04f8cSWim Van Sebroeck	  This watchdog simply watches your kernel to make sure it doesn't
1392b7e04f8cSWim Van Sebroeck	  freeze, and if it does, it reboots your computer after a certain
1393b7e04f8cSWim Van Sebroeck	  amount of time.
1394b7e04f8cSWim Van Sebroeck
1395b7e04f8cSWim Van Sebroeck	  To compile this driver as a module, choose M here: the
1396b7e04f8cSWim Van Sebroeck	  module will be called pc87413_wdt.
1397b7e04f8cSWim Van Sebroeck
1398b7e04f8cSWim Van Sebroeck	  Most people will say N.
1399b7e04f8cSWim Van Sebroeck
1400456c7301SMike Waychisonconfig NV_TCO
1401456c7301SMike Waychison	tristate "nVidia TCO Timer/Watchdog"
1402456c7301SMike Waychison	depends on X86 && PCI
1403a7f7f624SMasahiro Yamada	help
1404456c7301SMike Waychison	  Hardware driver for the TCO timer built into the nVidia Hub family
1405456c7301SMike Waychison	  (such as the MCP51).  The TCO (Total Cost of Ownership) timer is a
1406456c7301SMike Waychison	  watchdog timer that will reboot the machine after its second
1407456c7301SMike Waychison	  expiration. The expiration time can be configured with the
1408456c7301SMike Waychison	  "heartbeat" parameter.
1409456c7301SMike Waychison
1410456c7301SMike Waychison	  On some motherboards the driver may fail to reset the chipset's
1411456c7301SMike Waychison	  NO_REBOOT flag which prevents the watchdog from rebooting the
1412456c7301SMike Waychison	  machine. If this is the case you will get a kernel message like
1413456c7301SMike Waychison	  "failed to reset NO_REBOOT flag, reboot disabled by hardware".
1414456c7301SMike Waychison
1415456c7301SMike Waychison	  To compile this driver as a module, choose M here: the
1416456c7301SMike Waychison	  module will be called nv_tco.
1417456c7301SMike Waychison
1418b3e8f2c1SFlorian Fainelliconfig RDC321X_WDT
1419b3e8f2c1SFlorian Fainelli	tristate "RDC R-321x SoC watchdog"
1420da2a68b3SGuenter Roeck	depends on X86_RDC321X || COMPILE_TEST
14218751f90cSGuenter Roeck	depends on PCI
1422b3e8f2c1SFlorian Fainelli	help
1423b3e8f2c1SFlorian Fainelli	  This is the driver for the built in hardware watchdog
1424b3e8f2c1SFlorian Fainelli	  in the RDC R-321x SoC.
1425b3e8f2c1SFlorian Fainelli
1426b3e8f2c1SFlorian Fainelli	  To compile this driver as a module, choose M here: the
1427b3e8f2c1SFlorian Fainelli	  module will be called rdc321x_wdt.
1428b3e8f2c1SFlorian Fainelli
1429b7e04f8cSWim Van Sebroeckconfig 60XX_WDT
1430b7e04f8cSWim Van Sebroeck	tristate "SBC-60XX Watchdog Timer"
1431b7e04f8cSWim Van Sebroeck	depends on X86
1432b7e04f8cSWim Van Sebroeck	help
1433b7e04f8cSWim Van Sebroeck	  This driver can be used with the watchdog timer found on some
1434b7e04f8cSWim Van Sebroeck	  single board computers, namely the 6010 PII based computer.
1435b7e04f8cSWim Van Sebroeck	  It may well work with other cards.  It reads port 0x443 to enable
1436b7e04f8cSWim Van Sebroeck	  and re-set the watchdog timer, and reads port 0x45 to disable
1437b7e04f8cSWim Van Sebroeck	  the watchdog.  If you have a card that behave in similar ways,
1438b7e04f8cSWim Van Sebroeck	  you can probably make this driver work with your card as well.
1439b7e04f8cSWim Van Sebroeck
1440b7e04f8cSWim Van Sebroeck	  You can compile this driver directly into the kernel, or use
1441b7e04f8cSWim Van Sebroeck	  it as a module.  The module will be called sbc60xxwdt.
1442b7e04f8cSWim Van Sebroeck
1443b7e04f8cSWim Van Sebroeckconfig SBC8360_WDT
1444b7e04f8cSWim Van Sebroeck	tristate "SBC8360 Watchdog Timer"
14451e8c8a5bSJean Delvare	depends on X86_32
1446a7f7f624SMasahiro Yamada	help
1447b7e04f8cSWim Van Sebroeck
1448b7e04f8cSWim Van Sebroeck	  This is the driver for the hardware watchdog on the SBC8360 Single
1449b7e04f8cSWim Van Sebroeck	  Board Computer produced by Axiomtek Co., Ltd. (www.axiomtek.com).
1450b7e04f8cSWim Van Sebroeck
1451b7e04f8cSWim Van Sebroeck	  To compile this driver as a module, choose M here: the
14524737f097SPavel Machek	  module will be called sbc8360.
1453b7e04f8cSWim Van Sebroeck
1454b7e04f8cSWim Van Sebroeck	  Most people will say N.
1455b7e04f8cSWim Van Sebroeck
1456c4c28335SGilles Giganconfig SBC7240_WDT
1457c4c28335SGilles Gigan	tristate "SBC Nano 7240 Watchdog Timer"
14583369465eSAl Viro	depends on X86_32 && !UML
1459a7f7f624SMasahiro Yamada	help
1460c4c28335SGilles Gigan	  This is the driver for the hardware watchdog found on the IEI
1461c4c28335SGilles Gigan	  single board computers EPIC Nano 7240 (and likely others). This
1462c4c28335SGilles Gigan	  watchdog simply watches your kernel to make sure it doesn't freeze,
1463c4c28335SGilles Gigan	  and if it does, it reboots your computer after a certain amount of
1464c4c28335SGilles Gigan	  time.
1465c4c28335SGilles Gigan
1466c4c28335SGilles Gigan	  To compile this driver as a module, choose M here: the
1467c4c28335SGilles Gigan	  module will be called sbc7240_wdt.
1468c4c28335SGilles Gigan
1469b7e04f8cSWim Van Sebroeckconfig CPU5_WDT
1470b7e04f8cSWim Van Sebroeck	tristate "SMA CPU5 Watchdog"
1471b7e04f8cSWim Van Sebroeck	depends on X86
1472a7f7f624SMasahiro Yamada	help
1473b7e04f8cSWim Van Sebroeck	  TBD.
1474b7e04f8cSWim Van Sebroeck	  To compile this driver as a module, choose M here: the
1475b7e04f8cSWim Van Sebroeck	  module will be called cpu5wdt.
1476b7e04f8cSWim Van Sebroeck
14774c6e63bdSWim Van Sebroeckconfig SMSC_SCH311X_WDT
14784c6e63bdSWim Van Sebroeck	tristate "SMSC SCH311X Watchdog Timer"
14794c6e63bdSWim Van Sebroeck	depends on X86
1480a7f7f624SMasahiro Yamada	help
14814c6e63bdSWim Van Sebroeck	  This is the driver for the hardware watchdog timer on the
14824c6e63bdSWim Van Sebroeck	  SMSC SCH3112, SCH3114 and SCH3116 Super IO chipset
14834c6e63bdSWim Van Sebroeck	  (LPC IO with 8042 KBC, Reset Generation, HWM and multiple
14844c6e63bdSWim Van Sebroeck	  serial ports).
14854c6e63bdSWim Van Sebroeck
14864c6e63bdSWim Van Sebroeck	  To compile this driver as a module, choose M here: the
14874c6e63bdSWim Van Sebroeck	  module will be called sch311x_wdt.
14884c6e63bdSWim Van Sebroeck
1489b7e04f8cSWim Van Sebroeckconfig SMSC37B787_WDT
1490b7e04f8cSWim Van Sebroeck	tristate "Winbond SMsC37B787 Watchdog Timer"
1491b7e04f8cSWim Van Sebroeck	depends on X86
1492a7f7f624SMasahiro Yamada	help
1493b7e04f8cSWim Van Sebroeck	  This is the driver for the hardware watchdog component on the
1494b7e04f8cSWim Van Sebroeck	  Winbond SMsC37B787 chipset as used on the NetRunner Mainboard
1495b7e04f8cSWim Van Sebroeck	  from Vision Systems and maybe others.
1496b7e04f8cSWim Van Sebroeck
1497b7e04f8cSWim Van Sebroeck	  This watchdog simply watches your kernel to make sure it doesn't
1498b7e04f8cSWim Van Sebroeck	  freeze, and if it does, it reboots your computer after a certain
1499b7e04f8cSWim Van Sebroeck	  amount of time.
1500b7e04f8cSWim Van Sebroeck
1501b7e04f8cSWim Van Sebroeck	  Usually a userspace daemon will notify the kernel WDT driver that
1502b7e04f8cSWim Van Sebroeck	  userspace is still alive, at regular intervals.
1503b7e04f8cSWim Van Sebroeck
1504b7e04f8cSWim Van Sebroeck	  To compile this driver as a module, choose M here: the
1505b7e04f8cSWim Van Sebroeck	  module will be called smsc37b787_wdt.
1506b7e04f8cSWim Van Sebroeck
1507b7e04f8cSWim Van Sebroeck	  Most people will say N.
1508b7e04f8cSWim Van Sebroeck
1509e3c21e08SAndrew Lunnconfig TQMX86_WDT
1510e3c21e08SAndrew Lunn	tristate "TQ-Systems TQMX86 Watchdog Timer"
1511e3c21e08SAndrew Lunn	depends on X86
15129a6c274aSYueHaibing	select WATCHDOG_CORE
1513e3c21e08SAndrew Lunn	help
1514e3c21e08SAndrew Lunn	  This is the driver for the hardware watchdog timer in the TQMX86 IO
1515e3c21e08SAndrew Lunn	  controller found on some of their ComExpress Modules.
1516e3c21e08SAndrew Lunn
1517e3c21e08SAndrew Lunn	  To compile this driver as a module, choose M here; the module
1518e3c21e08SAndrew Lunn	  will be called tqmx86_wdt.
1519e3c21e08SAndrew Lunn
1520e3c21e08SAndrew Lunn	  Most people will say N.
1521e3c21e08SAndrew Lunn
1522dc3c56b7SMarc Vertesconfig VIA_WDT
1523dc3c56b7SMarc Vertes	tristate "VIA Watchdog Timer"
1524690e7a70SRandy Dunlap	depends on X86 && PCI
1525dc3c56b7SMarc Vertes	select WATCHDOG_CORE
1526a7f7f624SMasahiro Yamada	help
1527dc3c56b7SMarc Vertes	  This is the driver for the hardware watchdog timer on VIA
1528dc3c56b7SMarc Vertes	  southbridge chipset CX700, VX800/VX820 or VX855/VX875.
1529dc3c56b7SMarc Vertes
1530dc3c56b7SMarc Vertes	  To compile this driver as a module, choose M here; the module
1531dc3c56b7SMarc Vertes	  will be called via_wdt.
1532dc3c56b7SMarc Vertes
1533dc3c56b7SMarc Vertes	  Most people will say N.
1534dc3c56b7SMarc Vertes
1535b7e04f8cSWim Van Sebroeckconfig W83627HF_WDT
1536962c04f5SGuenter Roeck	tristate "Watchdog timer for W83627HF/W83627DHG and compatibles"
1537b7e04f8cSWim Van Sebroeck	depends on X86
153830a83695SGuenter Roeck	select WATCHDOG_CORE
1539a7f7f624SMasahiro Yamada	help
1540962c04f5SGuenter Roeck	  This is the driver for the hardware watchdog on the following
1541962c04f5SGuenter Roeck	  Super I/O chips.
1542962c04f5SGuenter Roeck		W83627DHG/DHG-P/EHF/EHG/F/G/HF/S/SF/THF/UHG/UG
1543962c04f5SGuenter Roeck		W83637HF
1544962c04f5SGuenter Roeck		W83667HG/HG-B
1545962c04f5SGuenter Roeck		W83687THF
15467b6d0b6aSGuenter Roeck		W83697HF
15477b6d0b6aSGuenter Roeck		W83697UG
1548962c04f5SGuenter Roeck		NCT6775
1549962c04f5SGuenter Roeck		NCT6776
1550962c04f5SGuenter Roeck		NCT6779
1551a77841d5SGuenter Roeck		NCT6791
1552a77841d5SGuenter Roeck		NCT6792
155333f74b89SRob Kramer		NCT6102D/04D/06D
1554e11cfc69SSrikanth Krishnakar		NCT6116D
1555962c04f5SGuenter Roeck
15569c67bea4SBenny Loenstrup Ammitzboell	  This watchdog simply watches your kernel to make sure it doesn't
15579c67bea4SBenny Loenstrup Ammitzboell	  freeze, and if it does, it reboots your computer after a certain
15589c67bea4SBenny Loenstrup Ammitzboell	  amount of time.
1559b7e04f8cSWim Van Sebroeck
1560b7e04f8cSWim Van Sebroeck	  To compile this driver as a module, choose M here: the
1561b7e04f8cSWim Van Sebroeck	  module will be called w83627hf_wdt.
1562b7e04f8cSWim Van Sebroeck
1563b7e04f8cSWim Van Sebroeck	  Most people will say N.
1564b7e04f8cSWim Van Sebroeck
1565b7e04f8cSWim Van Sebroeckconfig W83877F_WDT
1566b7e04f8cSWim Van Sebroeck	tristate "W83877F (EMACS) Watchdog Timer"
1567b7e04f8cSWim Van Sebroeck	depends on X86
1568a7f7f624SMasahiro Yamada	help
1569b7e04f8cSWim Van Sebroeck	  This is the driver for the hardware watchdog on the W83877F chipset
1570b7e04f8cSWim Van Sebroeck	  as used in EMACS PC-104 motherboards (and likely others).  This
1571b7e04f8cSWim Van Sebroeck	  watchdog simply watches your kernel to make sure it doesn't freeze,
1572b7e04f8cSWim Van Sebroeck	  and if it does, it reboots your computer after a certain amount of
1573b7e04f8cSWim Van Sebroeck	  time.
1574b7e04f8cSWim Van Sebroeck
1575b7e04f8cSWim Van Sebroeck	  To compile this driver as a module, choose M here: the
1576b7e04f8cSWim Van Sebroeck	  module will be called w83877f_wdt.
1577b7e04f8cSWim Van Sebroeck
1578b7e04f8cSWim Van Sebroeck	  Most people will say N.
1579b7e04f8cSWim Van Sebroeck
1580b7e04f8cSWim Van Sebroeckconfig W83977F_WDT
1581b7e04f8cSWim Van Sebroeck	tristate "W83977F (PCM-5335) Watchdog Timer"
1582b7e04f8cSWim Van Sebroeck	depends on X86
1583a7f7f624SMasahiro Yamada	help
1584b7e04f8cSWim Van Sebroeck	  This is the driver for the hardware watchdog on the W83977F I/O chip
1585b7e04f8cSWim Van Sebroeck	  as used in AAEON's PCM-5335 SBC (and likely others).  This
1586b7e04f8cSWim Van Sebroeck	  watchdog simply watches your kernel to make sure it doesn't freeze,
1587b7e04f8cSWim Van Sebroeck	  and if it does, it reboots your computer after a certain amount of
1588b7e04f8cSWim Van Sebroeck	  time.
1589b7e04f8cSWim Van Sebroeck
1590b7e04f8cSWim Van Sebroeck	  To compile this driver as a module, choose M here: the
1591b7e04f8cSWim Van Sebroeck	  module will be called w83977f_wdt.
1592b7e04f8cSWim Van Sebroeck
1593b7e04f8cSWim Van Sebroeckconfig MACHZ_WDT
1594b7e04f8cSWim Van Sebroeck	tristate "ZF MachZ Watchdog"
1595b7e04f8cSWim Van Sebroeck	depends on X86
1596a7f7f624SMasahiro Yamada	help
1597b7e04f8cSWim Van Sebroeck	  If you are using a ZF Micro MachZ processor, say Y here, otherwise
1598b7e04f8cSWim Van Sebroeck	  N.  This is the driver for the watchdog timer built-in on that
1599b7e04f8cSWim Van Sebroeck	  processor using ZF-Logic interface.  This watchdog simply watches
1600b7e04f8cSWim Van Sebroeck	  your kernel to make sure it doesn't freeze, and if it does, it
1601b7e04f8cSWim Van Sebroeck	  reboots your computer after a certain amount of time.
1602b7e04f8cSWim Van Sebroeck
1603b7e04f8cSWim Van Sebroeck	  To compile this driver as a module, choose M here: the
1604b7e04f8cSWim Van Sebroeck	  module will be called machzwd.
1605b7e04f8cSWim Van Sebroeck
1606b7e04f8cSWim Van Sebroeckconfig SBC_EPX_C3_WATCHDOG
1607b7e04f8cSWim Van Sebroeck	tristate "Winsystems SBC EPX-C3 watchdog"
1608b7e04f8cSWim Van Sebroeck	depends on X86
1609a7f7f624SMasahiro Yamada	help
1610b7e04f8cSWim Van Sebroeck	  This is the driver for the built-in watchdog timer on the EPX-C3
1611b7e04f8cSWim Van Sebroeck	  Single-board computer made by Winsystems, Inc.
1612b7e04f8cSWim Van Sebroeck
1613b7e04f8cSWim Van Sebroeck	  *Note*: This hardware watchdog is not probeable and thus there
1614b7e04f8cSWim Van Sebroeck	  is no way to know if writing to its IO address will corrupt
1615b7e04f8cSWim Van Sebroeck	  your system or have any real effect.  The only way to be sure
1616b7e04f8cSWim Van Sebroeck	  that this driver does what you want is to make sure you
1617b7e04f8cSWim Van Sebroeck	  are running it on an EPX-C3 from Winsystems with the watchdog
1618b7e04f8cSWim Van Sebroeck	  timer at IO address 0x1ee and 0x1ef.  It will write to both those
1619b7e04f8cSWim Van Sebroeck	  IO ports.  Basically, the assumption is made that if you compile
1620b7e04f8cSWim Van Sebroeck	  this driver into your kernel and/or load it as a module, that you
1621b7e04f8cSWim Van Sebroeck	  know what you are doing and that you are in fact running on an
1622b7e04f8cSWim Van Sebroeck	  EPX-C3 board!
1623b7e04f8cSWim Van Sebroeck
1624b7e04f8cSWim Van Sebroeck	  To compile this driver as a module, choose M here: the
1625b7e04f8cSWim Van Sebroeck	  module will be called sbc_epx_c3.
1626b7e04f8cSWim Van Sebroeck
1627222818c3STomas Winklerconfig INTEL_MEI_WDT
1628222818c3STomas Winkler	tristate "Intel MEI iAMT Watchdog"
1629222818c3STomas Winkler	depends on INTEL_MEI && X86
1630222818c3STomas Winkler	select WATCHDOG_CORE
1631a7f7f624SMasahiro Yamada	help
1632222818c3STomas Winkler	  A device driver for the Intel MEI iAMT watchdog.
1633222818c3STomas Winkler
1634222818c3STomas Winkler	  The Intel AMT Watchdog is an OS Health (Hang/Crash) watchdog.
1635222818c3STomas Winkler	  Whenever the OS hangs or crashes, iAMT will send an event
1636222818c3STomas Winkler	  to any subscriber to this event. The watchdog doesn't reset the
1637222818c3STomas Winkler	  the platform.
1638222818c3STomas Winkler
1639222818c3STomas Winkler	  To compile this driver as a module, choose M here:
1640222818c3STomas Winkler	  the module will be called mei_wdt.
1641222818c3STomas Winkler
164270f39976SKyle Roeschleyconfig NI903X_WDT
164370f39976SKyle Roeschley	tristate "NI 903x/913x Watchdog"
164470f39976SKyle Roeschley	depends on X86 && ACPI
164570f39976SKyle Roeschley	select WATCHDOG_CORE
1646a7f7f624SMasahiro Yamada	help
164770f39976SKyle Roeschley	  This is the driver for the watchdog timer on the National Instruments
164870f39976SKyle Roeschley	  903x/913x real-time controllers.
164970f39976SKyle Roeschley
165070f39976SKyle Roeschley	  To compile this driver as a module, choose M here: the module will be
165170f39976SKyle Roeschley	  called ni903x_wdt.
165270f39976SKyle Roeschley
165398078ca3SHui Chun Ongconfig NIC7018_WDT
165498078ca3SHui Chun Ong	tristate "NIC7018 Watchdog"
165598078ca3SHui Chun Ong	depends on X86 && ACPI
165698078ca3SHui Chun Ong	select WATCHDOG_CORE
1657a7f7f624SMasahiro Yamada	help
165898078ca3SHui Chun Ong	  Support for National Instruments NIC7018 Watchdog.
165998078ca3SHui Chun Ong
166098078ca3SHui Chun Ong	  To compile this driver as a module, choose M here: the module will be
166198078ca3SHui Chun Ong	  called nic7018_wdt.
166298078ca3SHui Chun Ong
16632ebd32ceSHenning Schildconfig SIEMENS_SIMATIC_IPC_WDT
16642ebd32ceSHenning Schild	tristate "Siemens Simatic IPC Watchdog"
16652ebd32ceSHenning Schild	depends on SIEMENS_SIMATIC_IPC
16662ebd32ceSHenning Schild	select WATCHDOG_CORE
1667e38da7d3SHenning Schild	select P2SB
16682ebd32ceSHenning Schild	help
16692ebd32ceSHenning Schild	  This driver adds support for several watchdogs found in Industrial
16702ebd32ceSHenning Schild	  PCs from Siemens.
16712ebd32ceSHenning Schild
16722ebd32ceSHenning Schild	  To compile this driver as a module, choose M here: the module will be
16732ebd32ceSHenning Schild	  called simatic-ipc-wdt.
16742ebd32ceSHenning Schild
1675b7e04f8cSWim Van Sebroeck# M68K Architecture
1676b7e04f8cSWim Van Sebroeck
16774157a04dSPhilippe De Muyterconfig M54xx_WATCHDOG
16784157a04dSPhilippe De Muyter	tristate "MCF54xx watchdog support"
167988cce427SPhilippe De Muyter	depends on M548x
168088cce427SPhilippe De Muyter	help
168188cce427SPhilippe De Muyter	  To compile this driver as a module, choose M here: the
16824157a04dSPhilippe De Muyter	  module will be called m54xx_wdt.
1683b7e04f8cSWim Van Sebroeck
1684e9659e69SAlejandro Cabrera# MicroBlaze Architecture
1685e9659e69SAlejandro Cabrera
1686b7e04f8cSWim Van Sebroeck# MIPS Architecture
1687b7e04f8cSWim Van Sebroeck
1688f8394f61SGabor Juhosconfig ATH79_WDT
1689f8394f61SGabor Juhos	tristate "Atheros AR71XX/AR724X/AR913X hardware watchdog"
1690da2a68b3SGuenter Roeck	depends on ATH79 || (ARM && COMPILE_TEST)
1691f8394f61SGabor Juhos	help
1692f8394f61SGabor Juhos	  Hardware driver for the built-in watchdog timer on the Atheros
1693f8394f61SGabor Juhos	  AR71XX/AR724X/AR913X SoCs.
1694f8394f61SGabor Juhos
169590074dceSmatthieu castetconfig BCM47XX_WDT
169690074dceSmatthieu castet	tristate "Broadcom BCM47xx Watchdog Timer"
1697da2a68b3SGuenter Roeck	depends on BCM47XX || ARCH_BCM_5301X || COMPILE_TEST
16985434a04dSHauke Mehrtens	select WATCHDOG_CORE
169990074dceSmatthieu castet	help
17006b2aac42SMasanari Iida	  Hardware driver for the Broadcom BCM47xx Watchdog Timer.
170190074dceSmatthieu castet
170203ec5856SFlorian Fainelliconfig RC32434_WDT
170303ec5856SFlorian Fainelli	tristate "IDT RC32434 SoC Watchdog Timer"
170403ec5856SFlorian Fainelli	depends on MIKROTIK_RB532
170503ec5856SFlorian Fainelli	help
170603ec5856SFlorian Fainelli	  Hardware driver for the IDT RC32434 SoC built-in
170703ec5856SFlorian Fainelli	  watchdog timer.
170803ec5856SFlorian Fainelli
170903ec5856SFlorian Fainelli	  To compile this driver as a module, choose M here: the
171003ec5856SFlorian Fainelli	  module will be called rc32434_wdt.
171103ec5856SFlorian Fainelli
1712b7e04f8cSWim Van Sebroeckconfig INDYDOG
1713b7e04f8cSWim Van Sebroeck	tristate "Indy/I2 Hardware Watchdog"
171424f8d233SMatt Redfearn	depends on SGI_HAS_INDYDOG
1715b7e04f8cSWim Van Sebroeck	help
1716b7e04f8cSWim Van Sebroeck	  Hardware driver for the Indy's/I2's watchdog. This is a
1717b7e04f8cSWim Van Sebroeck	  watchdog timer that will reboot the machine after a 60 second
1718b7e04f8cSWim Van Sebroeck	  timer expired and no process has written to /dev/watchdog during
1719b7e04f8cSWim Van Sebroeck	  that time.
1720b7e04f8cSWim Van Sebroeck
1721f865c352SPaul Cercueilconfig JZ4740_WDT
1722f865c352SPaul Cercueil	tristate "Ingenic jz4740 SoC hardware watchdog"
172333c26ab4SPaul Cercueil	depends on MIPS
17241d9c3074SPaul Cercueil	depends on COMMON_CLK
172585f6df14SAxel Lin	select WATCHDOG_CORE
17266d532143SPaul Cercueil	select MFD_SYSCON
1727f865c352SPaul Cercueil	help
1728f865c352SPaul Cercueil	  Hardware driver for the built-in watchdog timer on Ingenic jz4740 SoCs.
1729f865c352SPaul Cercueil
1730b7e04f8cSWim Van Sebroeckconfig WDT_MTX1
1731b7e04f8cSWim Van Sebroeck	tristate "MTX-1 Hardware Watchdog"
1732da2a68b3SGuenter Roeck	depends on MIPS_MTX1 || (MIPS && COMPILE_TEST)
1733b7e04f8cSWim Van Sebroeck	help
1734b7e04f8cSWim Van Sebroeck	  Hardware driver for the MTX-1 boards. This is a watchdog timer that
1735b7e04f8cSWim Van Sebroeck	  will reboot the machine after a 100 seconds timer expired.
1736b7e04f8cSWim Van Sebroeck
173775c752e6SAndrew Sharpconfig SIBYTE_WDOG
173875c752e6SAndrew Sharp	tristate "Sibyte SoC hardware watchdog"
1739c388a189SJackie Liu	depends on CPU_SB1
174075c752e6SAndrew Sharp	help
174175c752e6SAndrew Sharp	  Watchdog driver for the built in watchdog hardware in Sibyte
174275c752e6SAndrew Sharp	  SoC processors.  There are apparently two watchdog timers
174375c752e6SAndrew Sharp	  on such processors; this driver supports only the first one,
174475c752e6SAndrew Sharp	  because currently Linux only supports exporting one watchdog
174575c752e6SAndrew Sharp	  to userspace.
174675c752e6SAndrew Sharp
174775c752e6SAndrew Sharp	  To compile this driver as a loadable module, choose M here.
174875c752e6SAndrew Sharp	  The module will be called sb_wdog.
174975c752e6SAndrew Sharp
1750c283cf2cSMatteo Croceconfig AR7_WDT
1751c283cf2cSMatteo Croce	tristate "TI AR7 Watchdog Timer"
175228b7ee33SJackie Liu	depends on AR7 || (MIPS && 32BIT && COMPILE_TEST)
1753c283cf2cSMatteo Croce	help
1754c283cf2cSMatteo Croce	  Hardware driver for the TI AR7 Watchdog Timer.
1755c283cf2cSMatteo Croce
17566f702fceSAtsushi Nemotoconfig TXX9_WDT
17576f702fceSAtsushi Nemoto	tristate "Toshiba TXx9 Watchdog Timer"
1758455481fcSThomas Bogendoerfer	depends on CPU_TX49XX || (MIPS && COMPILE_TEST)
1759d6245842SAxel Lin	select WATCHDOG_CORE
17606f702fceSAtsushi Nemoto	help
17616f702fceSAtsushi Nemoto	  Hardware driver for the built-in watchdog timer on TXx9 MIPS SoCs.
17626f702fceSAtsushi Nemoto
17634c076fb4SDavid Daneyconfig OCTEON_WDT
17644c076fb4SDavid Daney	tristate "Cavium OCTEON SOC family Watchdog Timer"
17659ddebc46SDavid Daney	depends on CAVIUM_OCTEON_SOC
17664c076fb4SDavid Daney	default y
17673d588c93SAaro Koskinen	select WATCHDOG_CORE
17684c076fb4SDavid Daney	select EXPORT_UASM if OCTEON_WDT = m
17694c076fb4SDavid Daney	help
17704c076fb4SDavid Daney	  Hardware driver for OCTEON's on chip watchdog timer.
17714c076fb4SDavid Daney	  Enables the watchdog for all cores running Linux. It
17724c076fb4SDavid Daney	  installs a NMI handler and pokes the watchdog based on an
17734c076fb4SDavid Daney	  interrupt.  On first expiration of the watchdog, the
17744c076fb4SDavid Daney	  interrupt handler pokes it.  The second expiration causes an
17754c076fb4SDavid Daney	  NMI that prints a message. The third expiration causes a
17764c076fb4SDavid Daney	  global soft reset.
17774c076fb4SDavid Daney
17784c076fb4SDavid Daney	  When userspace has /dev/watchdog open, no poking is done
17794c076fb4SDavid Daney	  from the first interrupt, it is then only poked when the
17804c076fb4SDavid Daney	  device is written.
17814c076fb4SDavid Daney
1782938d0a84SLubomir Rintelconfig BCM2835_WDT
1783938d0a84SLubomir Rintel	tristate "Broadcom BCM2835 hardware watchdog"
17842672b7e0SArnd Bergmann	depends on ARCH_BCM2835 || (OF && COMPILE_TEST)
1785938d0a84SLubomir Rintel	select WATCHDOG_CORE
1786938d0a84SLubomir Rintel	help
1787938d0a84SLubomir Rintel	  Watchdog driver for the built in watchdog hardware in Broadcom
1788938d0a84SLubomir Rintel	  BCM2835 SoC.
1789938d0a84SLubomir Rintel
1790938d0a84SLubomir Rintel	  To compile this driver as a loadable module, choose M here.
1791938d0a84SLubomir Rintel	  The module will be called bcm2835_wdt.
1792938d0a84SLubomir Rintel
17936adb730dSMarkus Mayerconfig BCM_KONA_WDT
17946adb730dSMarkus Mayer	tristate "BCM Kona Watchdog"
1795da2a68b3SGuenter Roeck	depends on ARCH_BCM_MOBILE || COMPILE_TEST
17966adb730dSMarkus Mayer	select WATCHDOG_CORE
17976adb730dSMarkus Mayer	help
17986adb730dSMarkus Mayer	  Support for the watchdog timer on the following Broadcom BCM281xx
17996adb730dSMarkus Mayer	  family, which includes BCM11130, BCM11140, BCM11351, BCM28145 and
18006adb730dSMarkus Mayer	  BCM28155 variants.
18016adb730dSMarkus Mayer
18026adb730dSMarkus Mayer	  Say 'Y' or 'M' here to enable the driver. The module will be called
18036adb730dSMarkus Mayer	  bcm_kona_wdt.
18046adb730dSMarkus Mayer
18056e2ac20eSMarkus Mayerconfig BCM_KONA_WDT_DEBUG
18066e2ac20eSMarkus Mayer	bool "DEBUGFS support for BCM Kona Watchdog"
1807345f1625SGuenter Roeck	depends on BCM_KONA_WDT
18086e2ac20eSMarkus Mayer	help
18096e2ac20eSMarkus Mayer	  If enabled, adds /sys/kernel/debug/bcm_kona_wdt/info which provides
18106e2ac20eSMarkus Mayer	  access to the driver's internal data structures as well as watchdog
18116e2ac20eSMarkus Mayer	  timer hardware registres.
18126e2ac20eSMarkus Mayer
18136e2ac20eSMarkus Mayer	  If in doubt, say 'N'.
18146e2ac20eSMarkus Mayer
18157a3629feSJustin Chenconfig BCM7038_WDT
1816bc0bf9e9SFlorian Fainelli	tristate "BCM63xx/BCM7038 Watchdog"
18177a3629feSJustin Chen	select WATCHDOG_CORE
1818d42d6108SRichard Weinberger	depends on HAS_IOMEM
18197bb49d77SWilliam Zhang	depends on ARCH_BCMBCA || ARCH_BRCMSTB || BMIPS_GENERIC || BCM63XX || COMPILE_TEST
18207a3629feSJustin Chen	help
1821972ec351SJean Delvare	  Watchdog driver for the built-in hardware in Broadcom 7038 and
1822972ec351SJean Delvare	  later SoCs used in set-top boxes.  BCM7038 was made public
1823972ec351SJean Delvare	  during the 2004 CES, and since then, many Broadcom chips use this
1824bc0bf9e9SFlorian Fainelli	  watchdog block, including some cable modem chips and DSL (63xx)
1825bc0bf9e9SFlorian Fainelli	  chips.
18267a3629feSJustin Chen
182793937669SNaidu Tellapaticonfig IMGPDC_WDT
182893937669SNaidu Tellapati	tristate "Imagination Technologies PDC Watchdog Timer"
182993937669SNaidu Tellapati	depends on HAS_IOMEM
1830b9b29090SJames Hogan	depends on MIPS || COMPILE_TEST
1831df1a3e64SArnd Bergmann	select WATCHDOG_CORE
183293937669SNaidu Tellapati	help
183393937669SNaidu Tellapati	  Driver for Imagination Technologies PowerDown Controller
183493937669SNaidu Tellapati	  Watchdog Timer.
183593937669SNaidu Tellapati
183693937669SNaidu Tellapati	  To compile this driver as a loadable module, choose M here.
183793937669SNaidu Tellapati	  The module will be called imgpdc_wdt.
183893937669SNaidu Tellapati
18392f58b8d0SJohn Crispinconfig LANTIQ_WDT
18402f58b8d0SJohn Crispin	tristate "Lantiq SoC watchdog"
18412f58b8d0SJohn Crispin	depends on LANTIQ
1842dcd7e04eSHauke Mehrtens	select WATCHDOG_CORE
18432f58b8d0SJohn Crispin	help
18442f58b8d0SJohn Crispin	  Hardware driver for the Lantiq SoC Watchdog Timer.
18452f58b8d0SJohn Crispin
18461d8565eeSYang Lingconfig LOONGSON1_WDT
18471d8565eeSYang Ling	tristate "Loongson1 SoC hardware watchdog"
18481d8565eeSYang Ling	depends on MACH_LOONGSON32
18491d8565eeSYang Ling	select WATCHDOG_CORE
18501d8565eeSYang Ling	help
18511d8565eeSYang Ling	  Hardware driver for the Loongson1 SoC Watchdog Timer.
18521d8565eeSYang Ling
1853473cf939SJohn Crispinconfig RALINK_WDT
1854473cf939SJohn Crispin	tristate "Ralink SoC watchdog"
1855473cf939SJohn Crispin	select WATCHDOG_CORE
1856473cf939SJohn Crispin	depends on RALINK
1857473cf939SJohn Crispin	help
1858473cf939SJohn Crispin	  Hardware driver for the Ralink SoC Watchdog Timer.
1859473cf939SJohn Crispin
18606b47441bSNick Hawkinsconfig GXP_WATCHDOG
18616b47441bSNick Hawkins	tristate "HPE GXP watchdog support"
18626b47441bSNick Hawkins	depends on ARCH_HPE_GXP
18636b47441bSNick Hawkins	select WATCHDOG_CORE
18646b47441bSNick Hawkins	help
18656b47441bSNick Hawkins	  Say Y here to include support for the watchdog timer
18666b47441bSNick Hawkins	  in HPE GXP SoCs.
18676b47441bSNick Hawkins
18686b47441bSNick Hawkins	  To compile this driver as a module, choose M here.
18696b47441bSNick Hawkins	  The module will be called gxp-wdt.
18706b47441bSNick Hawkins
1871ab3f09feSJohn Crispinconfig MT7621_WDT
1872ab3f09feSJohn Crispin	tristate "Mediatek SoC watchdog"
1873ab3f09feSJohn Crispin	select WATCHDOG_CORE
1874ff8ec4acSSergio Paracuellos	select REGMAP_MMIO
1875ff8ec4acSSergio Paracuellos	select MFD_SYSCON
1876ff8ec4acSSergio Paracuellos	depends on SOC_MT7620 || SOC_MT7621 || COMPILE_TEST
1877ab3f09feSJohn Crispin	help
1878ab3f09feSJohn Crispin	  Hardware driver for the Mediatek/Ralink MT7621/8 SoC Watchdog Timer.
1879ab3f09feSJohn Crispin
18808f91fc56SJoshua Hendersonconfig PIC32_WDT
18818f91fc56SJoshua Henderson	tristate "Microchip PIC32 hardware watchdog"
18828f91fc56SJoshua Henderson	select WATCHDOG_CORE
1883da2a68b3SGuenter Roeck	depends on MACH_PIC32 || (MIPS && COMPILE_TEST)
18848f91fc56SJoshua Henderson	help
18858f91fc56SJoshua Henderson	  Watchdog driver for the built in watchdog hardware in a PIC32.
18868f91fc56SJoshua Henderson
18878f91fc56SJoshua Henderson	  Configuration bits must be set appropriately for the watchdog to be
18888f91fc56SJoshua Henderson	  controlled by this driver.
18898f91fc56SJoshua Henderson
18908f91fc56SJoshua Henderson	  To compile this driver as a loadable module, choose M here.
18918f91fc56SJoshua Henderson	  The module will be called pic32-wdt.
18928f91fc56SJoshua Henderson
1893b0d8a082SPurna Chandra Mandalconfig PIC32_DMT
1894b0d8a082SPurna Chandra Mandal	tristate "Microchip PIC32 Deadman Timer"
1895b0d8a082SPurna Chandra Mandal	select WATCHDOG_CORE
1896da2a68b3SGuenter Roeck	depends on MACH_PIC32 || (MIPS && COMPILE_TEST)
1897b0d8a082SPurna Chandra Mandal	help
189801028829SRandy Dunlap	  Watchdog driver for PIC32 instruction fetch counting timer. This
189901028829SRandy Dunlap	  specific timer is typically be used in mission critical and safety
190001028829SRandy Dunlap	  critical applications, where any single failure of the software
190101028829SRandy Dunlap	  functionality and sequencing must be detected.
1902b0d8a082SPurna Chandra Mandal
1903b0d8a082SPurna Chandra Mandal	  To compile this driver as a loadable module, choose M here.
1904b0d8a082SPurna Chandra Mandal	  The module will be called pic32-dmt.
1905b0d8a082SPurna Chandra Mandal
1906b7e04f8cSWim Van Sebroeck# PARISC Architecture
1907b7e04f8cSWim Van Sebroeck
1908b7e04f8cSWim Van Sebroeck# POWERPC Architecture
1909b7e04f8cSWim Van Sebroeck
19103268b561SMartyn Welchconfig GEF_WDT
1911cda61c94SMartyn Welch	tristate "GE Watchdog Timer"
1912330bbf48SMartyn Welch	depends on GE_FPGA
1913a7f7f624SMasahiro Yamada	help
1914cda61c94SMartyn Welch	  Watchdog timer found in a number of GE single board computers.
19153268b561SMartyn Welch
1916b7e04f8cSWim Van Sebroeckconfig MPC5200_WDT
19176d535599SAlbrecht Dreß	bool "MPC52xx Watchdog Timer"
1918da2a68b3SGuenter Roeck	depends on PPC_MPC52xx || COMPILE_TEST
19196d535599SAlbrecht Dreß	help
19206d535599SAlbrecht Dreß	  Use General Purpose Timer (GPT) 0 on the MPC5200 as Watchdog.
1921b7e04f8cSWim Van Sebroeck
192228acd02fSAnton Vorontsovconfig 8xxx_WDT
192328acd02fSAnton Vorontsov	tristate "MPC8xxx Platform Watchdog Timer"
1924f8c33e97SUwe Kleine-König	depends on PPC_8xx || PPC_83xx || PPC_86xx || PPC_MPC512x
1925d5cfaf0aSChristophe Leroy	select WATCHDOG_CORE
192628acd02fSAnton Vorontsov	help
192728acd02fSAnton Vorontsov	  This driver is for a SoC level watchdog that exists on some
192828acd02fSAnton Vorontsov	  Freescale PowerPC processors. So far this driver supports:
19290d7b1014SAnton Vorontsov	  - MPC8xx watchdogs
193028acd02fSAnton Vorontsov	  - MPC83xx watchdogs
193128acd02fSAnton Vorontsov	  - MPC86xx watchdogs
193228acd02fSAnton Vorontsov
193328acd02fSAnton Vorontsov	  For BookE processors (MPC85xx) use the BOOKE_WDT driver instead.
1934b7e04f8cSWim Van Sebroeck
1935618efba9SSean MacLennanconfig PIKA_WDT
1936618efba9SSean MacLennan	tristate "PIKA FPGA Watchdog"
1937da2a68b3SGuenter Roeck	depends on WARP || (PPC64 && COMPILE_TEST)
1938618efba9SSean MacLennan	default y
1939618efba9SSean MacLennan	help
1940618efba9SSean MacLennan	  This enables the watchdog in the PIKA FPGA. Currently used on
1941618efba9SSean MacLennan	  the Warp platform.
1942618efba9SSean MacLennan
1943b7e04f8cSWim Van Sebroeckconfig BOOKE_WDT
1944fbdd7144STimur Tabi	tristate "PowerPC Book-E Watchdog Timer"
1945b7e04f8cSWim Van Sebroeck	depends on BOOKE || 4xx
194652e5cc4eSGuenter Roeck	select WATCHDOG_CORE
1947a7f7f624SMasahiro Yamada	help
1948fbdd7144STimur Tabi	  Watchdog driver for PowerPC Book-E chips, such as the Freescale
1949fbdd7144STimur Tabi	  MPC85xx SOCs and the IBM PowerPC 440.
1950fbdd7144STimur Tabi
195174665686SMauro Carvalho Chehab	  Please see Documentation/watchdog/watchdog-api.rst for
1952b7e04f8cSWim Van Sebroeck	  more information.
1953b7e04f8cSWim Van Sebroeck
1954e0dc09ffSTimur Tabiconfig BOOKE_WDT_DEFAULT_TIMEOUT
1955e0dc09ffSTimur Tabi	int "PowerPC Book-E Watchdog Timer Default Timeout"
1956e0dc09ffSTimur Tabi	depends on BOOKE_WDT
1957ec65560aSChristophe Leroy	default 38 if PPC_E500
1958ec65560aSChristophe Leroy	range 0 63 if PPC_E500
1959ec65560aSChristophe Leroy	default 3 if !PPC_E500
1960ec65560aSChristophe Leroy	range 0 3 if !PPC_E500
1961e0dc09ffSTimur Tabi	help
1962e0dc09ffSTimur Tabi	  Select the default watchdog timer period to be used by the PowerPC
1963e0dc09ffSTimur Tabi	  Book-E watchdog driver.  A watchdog "event" occurs when the bit
1964e0dc09ffSTimur Tabi	  position represented by this number transitions from zero to one.
1965e0dc09ffSTimur Tabi
1966e0dc09ffSTimur Tabi	  For Freescale Book-E processors, this is a number between 0 and 63.
1967e0dc09ffSTimur Tabi	  For other Book-E processors, this is a number between 0 and 3.
1968e0dc09ffSTimur Tabi
1969e1d1d68aSMasanari Iida	  The value can be overridden by the wdt_period command-line parameter.
1970e0dc09ffSTimur Tabi
197126c57ef1SJohannes Thumshirnconfig MEN_A21_WDT
197226c57ef1SJohannes Thumshirn	tristate "MEN A21 VME CPU Carrier Board Watchdog Timer"
197326c57ef1SJohannes Thumshirn	select WATCHDOG_CORE
197421a926a3SGeert Uytterhoeven	depends on GPIOLIB || COMPILE_TEST
197526c57ef1SJohannes Thumshirn	help
197626c57ef1SJohannes Thumshirn	  Watchdog driver for MEN A21 VMEbus CPU Carrier Boards.
197726c57ef1SJohannes Thumshirn
197826c57ef1SJohannes Thumshirn	  The driver can also be built as a module. If so, the module will be
197926c57ef1SJohannes Thumshirn	  called mena21_wdt.
198026c57ef1SJohannes Thumshirn
198126c57ef1SJohannes Thumshirn	  If unsure select N here.
198226c57ef1SJohannes Thumshirn
1983b7e04f8cSWim Van Sebroeck# PPC64 Architecture
1984b7e04f8cSWim Van Sebroeck
198569472ffaSScott Chelohaconfig PSERIES_WDT
198669472ffaSScott Cheloha	tristate "POWER Architecture Platform Watchdog Timer"
198769472ffaSScott Cheloha	depends on PPC_PSERIES
198869472ffaSScott Cheloha	select WATCHDOG_CORE
198969472ffaSScott Cheloha	help
199069472ffaSScott Cheloha	  Driver for virtual watchdog timers provided by PAPR
199169472ffaSScott Cheloha	  hypervisors (e.g. PowerVM, KVM).
199269472ffaSScott Cheloha
1993b7e04f8cSWim Van Sebroeckconfig WATCHDOG_RTAS
1994b7e04f8cSWim Van Sebroeck	tristate "RTAS watchdog"
199542bed042SMurilo Opsfelder Araujo	depends on PPC_RTAS
1996b7e04f8cSWim Van Sebroeck	help
1997b7e04f8cSWim Van Sebroeck	  This driver adds watchdog support for the RTAS watchdog.
1998b7e04f8cSWim Van Sebroeck
1999b7e04f8cSWim Van Sebroeck	  To compile this driver as a module, choose M here. The module
2000b7e04f8cSWim Van Sebroeck	  will be called wdrtas.
2001b7e04f8cSWim Van Sebroeck
2002*db728ea9SXingyu Wu# RISC-V Architecture
2003*db728ea9SXingyu Wu
2004*db728ea9SXingyu Wuconfig STARFIVE_WATCHDOG
2005*db728ea9SXingyu Wu	tristate "StarFive Watchdog support"
2006*db728ea9SXingyu Wu	depends on ARCH_STARFIVE || COMPILE_TEST
2007*db728ea9SXingyu Wu	select WATCHDOG_CORE
2008*db728ea9SXingyu Wu	default ARCH_STARFIVE
2009*db728ea9SXingyu Wu	help
2010*db728ea9SXingyu Wu	  Say Y here to support the watchdog of StarFive JH7100 and JH7110
2011*db728ea9SXingyu Wu	  SoC. This driver can also be built as a module if choose M.
2012*db728ea9SXingyu Wu
2013b7e04f8cSWim Van Sebroeck# S390 Architecture
2014b7e04f8cSWim Van Sebroeck
2015f7a94db4SPhilipp Hachtmannconfig DIAG288_WATCHDOG
2016f7a94db4SPhilipp Hachtmann	tristate "System z diag288 Watchdog"
2017b7e04f8cSWim Van Sebroeck	depends on S390
2018f7a94db4SPhilipp Hachtmann	select WATCHDOG_CORE
2019b7e04f8cSWim Van Sebroeck	help
2020b7e04f8cSWim Van Sebroeck	  IBM s/390 and zSeries machines running under z/VM 5.1 or later
2021b7e04f8cSWim Van Sebroeck	  provide a virtual watchdog timer to their guest that cause a
2022b7e04f8cSWim Van Sebroeck	  user define Control Program command to be executed after a
2023b7e04f8cSWim Van Sebroeck	  timeout.
2024646f919eSPhilipp Hachtmann	  LPAR provides a very similar interface. This driver handles
2025646f919eSPhilipp Hachtmann	  both.
2026b7e04f8cSWim Van Sebroeck
2027b7e04f8cSWim Van Sebroeck	  To compile this driver as a module, choose M here. The module
2028a8fa3943SPhilipp Hachtmann	  will be called diag288_wdt.
2029b7e04f8cSWim Van Sebroeck
2030b7e04f8cSWim Van Sebroeck# SUPERH (sh + sh64) Architecture
2031b7e04f8cSWim Van Sebroeck
2032b7e04f8cSWim Van Sebroeckconfig SH_WDT
2033b7e04f8cSWim Van Sebroeck	tristate "SuperH Watchdog"
2034da2a68b3SGuenter Roeck	depends on SUPERH && (CPU_SH3 || CPU_SH4 || COMPILE_TEST)
20351950f499SPaul Mundt	select WATCHDOG_CORE
2036b7e04f8cSWim Van Sebroeck	help
2037b7e04f8cSWim Van Sebroeck	  This driver adds watchdog support for the integrated watchdog in the
2038b7e04f8cSWim Van Sebroeck	  SuperH processors. If you have one of these processors and wish
2039b7e04f8cSWim Van Sebroeck	  to have watchdog support enabled, say Y, otherwise say N.
2040b7e04f8cSWim Van Sebroeck
2041b7e04f8cSWim Van Sebroeck	  As a side note, saying Y here will automatically boost HZ to 1000
2042b7e04f8cSWim Van Sebroeck	  so that the timer has a chance to clear the overflow counter. On
2043b7e04f8cSWim Van Sebroeck	  slower systems (such as the SH-2 and SH-3) this will likely yield
2044b7e04f8cSWim Van Sebroeck	  some performance issues. As such, the WDT should be avoided here
2045b7e04f8cSWim Van Sebroeck	  unless it is absolutely necessary.
2046b7e04f8cSWim Van Sebroeck
2047b7e04f8cSWim Van Sebroeck	  To compile this driver as a module, choose M here: the
2048b7e04f8cSWim Van Sebroeck	  module will be called shwdt.
2049b7e04f8cSWim Van Sebroeck
2050b7e04f8cSWim Van Sebroeck# SPARC Architecture
2051b7e04f8cSWim Van Sebroeck
2052b7e04f8cSWim Van Sebroeck# SPARC64 Architecture
2053b7e04f8cSWim Van Sebroeck
2054b7e04f8cSWim Van Sebroeckconfig WATCHDOG_CP1XXX
2055b7e04f8cSWim Van Sebroeck	tristate "CP1XXX Hardware Watchdog support"
2056b7e04f8cSWim Van Sebroeck	depends on SPARC64 && PCI
2057a7f7f624SMasahiro Yamada	help
2058b7e04f8cSWim Van Sebroeck	  This is the driver for the hardware watchdog timers present on
2059b7e04f8cSWim Van Sebroeck	  Sun Microsystems CompactPCI models CP1400 and CP1500.
2060b7e04f8cSWim Van Sebroeck
2061b7e04f8cSWim Van Sebroeck	  To compile this driver as a module, choose M here: the
2062b7e04f8cSWim Van Sebroeck	  module will be called cpwatchdog.
2063b7e04f8cSWim Van Sebroeck
2064b7e04f8cSWim Van Sebroeck	  If you do not have a CompactPCI model CP1400 or CP1500, or
2065b7e04f8cSWim Van Sebroeck	  another UltraSPARC-IIi-cEngine boardset with hardware watchdog,
2066b7e04f8cSWim Van Sebroeck	  you should say N to this option.
2067b7e04f8cSWim Van Sebroeck
2068b7e04f8cSWim Van Sebroeckconfig WATCHDOG_RIO
2069b7e04f8cSWim Van Sebroeck	tristate "RIO Hardware Watchdog support"
2070b7e04f8cSWim Van Sebroeck	depends on SPARC64 && PCI
2071b7e04f8cSWim Van Sebroeck	help
2072b7e04f8cSWim Van Sebroeck	  Say Y here to support the hardware watchdog capability on Sun RIO
2073b7e04f8cSWim Van Sebroeck	  machines.  The watchdog timeout period is normally one minute but
2074b7e04f8cSWim Van Sebroeck	  can be changed with a boot-time parameter.
2075b7e04f8cSWim Van Sebroeck
2076ca0bb079Swim.coekaerts@oracle.comconfig WATCHDOG_SUN4V
2077ca0bb079Swim.coekaerts@oracle.com	tristate "Sun4v Watchdog support"
2078ca0bb079Swim.coekaerts@oracle.com	select WATCHDOG_CORE
2079ca0bb079Swim.coekaerts@oracle.com	depends on SPARC64
2080ca0bb079Swim.coekaerts@oracle.com	help
2081ca0bb079Swim.coekaerts@oracle.com	  Say Y here to support the hypervisor watchdog capability embedded
2082ca0bb079Swim.coekaerts@oracle.com	  in the SPARC sun4v architecture.
2083ca0bb079Swim.coekaerts@oracle.com
2084ca0bb079Swim.coekaerts@oracle.com	  To compile this driver as a module, choose M here. The module will
2085ca0bb079Swim.coekaerts@oracle.com	  be called sun4v_wdt.
2086ca0bb079Swim.coekaerts@oracle.com
2087b7e04f8cSWim Van Sebroeck# XTENSA Architecture
2088b7e04f8cSWim Van Sebroeck
2089066d6c7fSJan Beulich# Xen Architecture
2090066d6c7fSJan Beulich
2091066d6c7fSJan Beulichconfig XEN_WDT
2092066d6c7fSJan Beulich	tristate "Xen Watchdog support"
2093066d6c7fSJan Beulich	depends on XEN
20944cd67644SRadu Rendec	select WATCHDOG_CORE
2095066d6c7fSJan Beulich	help
2096066d6c7fSJan Beulich	  Say Y here to support the hypervisor watchdog capability provided
2097066d6c7fSJan Beulich	  by Xen 4.0 and newer.  The watchdog timeout period is normally one
2098066d6c7fSJan Beulich	  minute but can be changed with a boot-time parameter.
2099066d6c7fSJan Beulich
2100d805a786SAl Viroconfig UML_WATCHDOG
2101d805a786SAl Viro	tristate "UML watchdog"
2102da2a68b3SGuenter Roeck	depends on UML || COMPILE_TEST
2103d805a786SAl Viro
2104b7e04f8cSWim Van Sebroeck#
2105b7e04f8cSWim Van Sebroeck# ISA-based Watchdog Cards
2106b7e04f8cSWim Van Sebroeck#
2107b7e04f8cSWim Van Sebroeck
2108b7e04f8cSWim Van Sebroeckcomment "ISA-based Watchdog Cards"
2109b7e04f8cSWim Van Sebroeck	depends on ISA
2110b7e04f8cSWim Van Sebroeck
2111b7e04f8cSWim Van Sebroeckconfig PCWATCHDOG
2112b7e04f8cSWim Van Sebroeck	tristate "Berkshire Products ISA-PC Watchdog"
2113b7e04f8cSWim Van Sebroeck	depends on ISA
2114a7f7f624SMasahiro Yamada	help
2115b7e04f8cSWim Van Sebroeck	  This is the driver for the Berkshire Products ISA-PC Watchdog card.
2116b7e04f8cSWim Van Sebroeck	  This card simply watches your kernel to make sure it doesn't freeze,
2117b7e04f8cSWim Van Sebroeck	  and if it does, it reboots your computer after a certain amount of
2118b7e04f8cSWim Van Sebroeck	  time. This driver is like the WDT501 driver but for different
211901028829SRandy Dunlap	  hardware. Please read <file:Documentation/watchdog/pcwd-watchdog.rst>.
212001028829SRandy Dunlap	  The PC watchdog cards can be ordered from <http://www.berkprod.com/>.
2121b7e04f8cSWim Van Sebroeck
2122b7e04f8cSWim Van Sebroeck	  To compile this driver as a module, choose M here: the
2123b7e04f8cSWim Van Sebroeck	  module will be called pcwd.
2124b7e04f8cSWim Van Sebroeck
2125b7e04f8cSWim Van Sebroeck	  Most people will say N.
2126b7e04f8cSWim Van Sebroeck
2127b7e04f8cSWim Van Sebroeckconfig MIXCOMWD
2128b7e04f8cSWim Van Sebroeck	tristate "Mixcom Watchdog"
2129b7e04f8cSWim Van Sebroeck	depends on ISA
2130a7f7f624SMasahiro Yamada	help
2131b7e04f8cSWim Van Sebroeck	  This is a driver for the Mixcom hardware watchdog cards.  This
2132b7e04f8cSWim Van Sebroeck	  watchdog simply watches your kernel to make sure it doesn't freeze,
2133b7e04f8cSWim Van Sebroeck	  and if it does, it reboots your computer after a certain amount of
2134b7e04f8cSWim Van Sebroeck	  time.
2135b7e04f8cSWim Van Sebroeck
2136b7e04f8cSWim Van Sebroeck	  To compile this driver as a module, choose M here: the
2137b7e04f8cSWim Van Sebroeck	  module will be called mixcomwd.
2138b7e04f8cSWim Van Sebroeck
2139b7e04f8cSWim Van Sebroeck	  Most people will say N.
2140b7e04f8cSWim Van Sebroeck
2141b7e04f8cSWim Van Sebroeckconfig WDT
2142b7e04f8cSWim Van Sebroeck	tristate "WDT Watchdog timer"
2143b7e04f8cSWim Van Sebroeck	depends on ISA
2144a7f7f624SMasahiro Yamada	help
2145b7e04f8cSWim Van Sebroeck	  If you have a WDT500P or WDT501P watchdog board, say Y here,
2146b7e04f8cSWim Van Sebroeck	  otherwise N. It is not possible to probe for this board, which means
2147b7e04f8cSWim Van Sebroeck	  that you have to inform the kernel about the IO port and IRQ that
2148b7e04f8cSWim Van Sebroeck	  is needed (you can do this via the io and irq parameters)
2149b7e04f8cSWim Van Sebroeck
2150b7e04f8cSWim Van Sebroeck	  To compile this driver as a module, choose M here: the
2151b7e04f8cSWim Van Sebroeck	  module will be called wdt.
2152b7e04f8cSWim Van Sebroeck
2153b7e04f8cSWim Van Sebroeck#
2154b7e04f8cSWim Van Sebroeck# PCI-based Watchdog Cards
2155b7e04f8cSWim Van Sebroeck#
2156b7e04f8cSWim Van Sebroeck
2157b7e04f8cSWim Van Sebroeckcomment "PCI-based Watchdog Cards"
2158b7e04f8cSWim Van Sebroeck	depends on PCI
2159b7e04f8cSWim Van Sebroeck
2160b7e04f8cSWim Van Sebroeckconfig PCIPCWATCHDOG
2161b7e04f8cSWim Van Sebroeck	tristate "Berkshire Products PCI-PC Watchdog"
2162b7e04f8cSWim Van Sebroeck	depends on PCI
2163a7f7f624SMasahiro Yamada	help
2164b7e04f8cSWim Van Sebroeck	  This is the driver for the Berkshire Products PCI-PC Watchdog card.
2165b7e04f8cSWim Van Sebroeck	  This card simply watches your kernel to make sure it doesn't freeze,
2166b7e04f8cSWim Van Sebroeck	  and if it does, it reboots your computer after a certain amount of
2167b7e04f8cSWim Van Sebroeck	  time. The card can also monitor the internal temperature of the PC.
2168b7e04f8cSWim Van Sebroeck	  More info is available at <http://www.berkprod.com/pci_pc_watchdog.htm>.
2169b7e04f8cSWim Van Sebroeck
2170b7e04f8cSWim Van Sebroeck	  To compile this driver as a module, choose M here: the
2171b7e04f8cSWim Van Sebroeck	  module will be called pcwd_pci.
2172b7e04f8cSWim Van Sebroeck
2173b7e04f8cSWim Van Sebroeck	  Most people will say N.
2174b7e04f8cSWim Van Sebroeck
2175b7e04f8cSWim Van Sebroeckconfig WDTPCI
2176b7e04f8cSWim Van Sebroeck	tristate "PCI-WDT500/501 Watchdog timer"
2177b7e04f8cSWim Van Sebroeck	depends on PCI
2178a7f7f624SMasahiro Yamada	help
2179b7e04f8cSWim Van Sebroeck	  If you have a PCI-WDT500/501 watchdog board, say Y here, otherwise N.
2180b7e04f8cSWim Van Sebroeck
21819b901ee0SWim Van Sebroeck	  If you have a PCI-WDT501 watchdog board then you can enable the
21829b901ee0SWim Van Sebroeck	  temperature sensor by setting the type parameter to 501.
2183b7e04f8cSWim Van Sebroeck
2184b7e04f8cSWim Van Sebroeck	  If you want to enable the Fan Tachometer on the PCI-WDT501, then you
2185b7e04f8cSWim Van Sebroeck	  can do this via the tachometer parameter. Only do this if you have a
2186b7e04f8cSWim Van Sebroeck	  fan tachometer actually set up.
2187b7e04f8cSWim Van Sebroeck
21889b901ee0SWim Van Sebroeck	  To compile this driver as a module, choose M here: the
21899b901ee0SWim Van Sebroeck	  module will be called wdt_pci.
21909b901ee0SWim Van Sebroeck
2191b7e04f8cSWim Van Sebroeck#
2192b7e04f8cSWim Van Sebroeck# USB-based Watchdog Cards
2193b7e04f8cSWim Van Sebroeck#
2194b7e04f8cSWim Van Sebroeck
2195b7e04f8cSWim Van Sebroeckcomment "USB-based Watchdog Cards"
2196b7e04f8cSWim Van Sebroeck	depends on USB
2197b7e04f8cSWim Van Sebroeck
2198b7e04f8cSWim Van Sebroeckconfig USBPCWATCHDOG
2199b7e04f8cSWim Van Sebroeck	tristate "Berkshire Products USB-PC Watchdog"
2200b7e04f8cSWim Van Sebroeck	depends on USB
2201a7f7f624SMasahiro Yamada	help
2202b7e04f8cSWim Van Sebroeck	  This is the driver for the Berkshire Products USB-PC Watchdog card.
2203b7e04f8cSWim Van Sebroeck	  This card simply watches your kernel to make sure it doesn't freeze,
2204b7e04f8cSWim Van Sebroeck	  and if it does, it reboots your computer after a certain amount of
2205b7e04f8cSWim Van Sebroeck	  time. The card can also monitor the internal temperature of the PC.
2206b7e04f8cSWim Van Sebroeck	  More info is available at <http://www.berkprod.com/usb_pc_watchdog.htm>.
2207b7e04f8cSWim Van Sebroeck
2208b7e04f8cSWim Van Sebroeck	  To compile this driver as a module, choose M here: the
2209b7e04f8cSWim Van Sebroeck	  module will be called pcwd_usb.
2210b7e04f8cSWim Van Sebroeck
2211b7e04f8cSWim Van Sebroeck	  Most people will say N.
2212b7e04f8cSWim Van Sebroeck
2213fa0f8d51SVijayakannan Ayyathuraiconfig KEEMBAY_WATCHDOG
2214fa0f8d51SVijayakannan Ayyathurai	tristate "Intel Keem Bay SoC non-secure watchdog"
2215fa0f8d51SVijayakannan Ayyathurai	depends on ARCH_KEEMBAY || (ARM64 && COMPILE_TEST)
2216fa0f8d51SVijayakannan Ayyathurai	select WATCHDOG_CORE
2217fa0f8d51SVijayakannan Ayyathurai	help
2218fa0f8d51SVijayakannan Ayyathurai	  This option enable support for an In-secure watchdog timer driver for
2219fa0f8d51SVijayakannan Ayyathurai	  Intel Keem Bay SoC. This WDT has a 32 bit timer and decrements in every
2220fa0f8d51SVijayakannan Ayyathurai	  count unit. An interrupt will be triggered, when the count crosses
2221c891ef7dSWong Vee Khee	  the threshold configured in the register.
2222fa0f8d51SVijayakannan Ayyathurai
2223fa0f8d51SVijayakannan Ayyathurai	  To compile this driver as a module, choose M here: the
2224fa0f8d51SVijayakannan Ayyathurai	  module will be called keembay_wdt.
2225fa0f8d51SVijayakannan Ayyathurai
2226b7e04f8cSWim Van Sebroeckendif # WATCHDOG
2227