xref: /openbmc/linux/drivers/watchdog/Kconfig (revision a5a8cb96)
1# SPDX-License-Identifier: GPL-2.0-only
2
3#
4# Watchdog device configuration
5#
6
7menuconfig WATCHDOG
8	bool "Watchdog Timer Support"
9	---help---
10	  If you say Y here (and to one of the following options) and create a
11	  character special file /dev/watchdog with major number 10 and minor
12	  number 130 using mknod ("man mknod"), you will get a watchdog, i.e.:
13	  subsequently opening the file and then failing to write to it for
14	  longer than 1 minute will result in rebooting the machine. This
15	  could be useful for a networked machine that needs to come back
16	  on-line as fast as possible after a lock-up. There's both a watchdog
17	  implementation entirely in software (which can sometimes fail to
18	  reboot the machine) and a driver for hardware watchdog boards, which
19	  are more robust and can also keep track of the temperature inside
20	  your computer. For details, read
21	  <file:Documentation/watchdog/watchdog-api.rst> in the kernel source.
22
23	  The watchdog is usually used together with the watchdog daemon
24	  which is available from
25	  <ftp://ibiblio.org/pub/Linux/system/daemons/watchdog/>. This daemon can
26	  also monitor NFS connections and can reboot the machine when the process
27	  table is full.
28
29	  If unsure, say N.
30
31if WATCHDOG
32
33config WATCHDOG_CORE
34	tristate "WatchDog Timer Driver Core"
35	---help---
36	  Say Y here if you want to use the new watchdog timer driver core.
37	  This driver provides a framework for all watchdog timer drivers
38	  and gives them the /dev/watchdog interface (and later also the
39	  sysfs interface).
40
41config WATCHDOG_NOWAYOUT
42	bool "Disable watchdog shutdown on close"
43	help
44	  The default watchdog behaviour (which you get if you say N here) is
45	  to stop the timer if the process managing it closes the file
46	  /dev/watchdog. It's always remotely possible that this process might
47	  get killed. If you say Y here, the watchdog cannot be stopped once
48	  it has been started.
49
50config WATCHDOG_HANDLE_BOOT_ENABLED
51	bool "Update boot-enabled watchdog until userspace takes over"
52	default y
53	help
54	  The default watchdog behaviour (which you get if you say Y here) is
55	  to ping watchdog devices that were enabled before the driver has
56	  been loaded until control is taken over from userspace using the
57	  /dev/watchdog file. If you say N here, the kernel will not update
58	  the watchdog on its own. Thus if your userspace does not start fast
59	  enough your device will reboot.
60
61config WATCHDOG_OPEN_TIMEOUT
62	int "Timeout value for opening watchdog device"
63	default 0
64	help
65	  The maximum time, in seconds, for which the watchdog framework takes
66	  care of pinging a hardware watchdog.  A value of 0 means infinite. The
67	  value set here can be overridden by the commandline parameter
68	  "watchdog.open_timeout".
69
70config WATCHDOG_SYSFS
71	bool "Read different watchdog information through sysfs"
72	help
73	  Say Y here if you want to enable watchdog device status read through
74	  sysfs attributes.
75
76comment "Watchdog Pretimeout Governors"
77
78config WATCHDOG_PRETIMEOUT_GOV
79	bool "Enable watchdog pretimeout governors"
80	depends on WATCHDOG_CORE
81	help
82	  The option allows to select watchdog pretimeout governors.
83
84config WATCHDOG_PRETIMEOUT_GOV_SEL
85	tristate
86	depends on WATCHDOG_PRETIMEOUT_GOV
87	default m
88	select WATCHDOG_PRETIMEOUT_GOV_PANIC if WATCHDOG_PRETIMEOUT_GOV_NOOP=n
89
90if WATCHDOG_PRETIMEOUT_GOV
91
92config WATCHDOG_PRETIMEOUT_GOV_NOOP
93	tristate "Noop watchdog pretimeout governor"
94	depends on WATCHDOG_CORE
95	default WATCHDOG_CORE
96	help
97	  Noop watchdog pretimeout governor, only an informational
98	  message is added to kernel log buffer.
99
100config WATCHDOG_PRETIMEOUT_GOV_PANIC
101	tristate "Panic watchdog pretimeout governor"
102	depends on WATCHDOG_CORE
103	default WATCHDOG_CORE
104	help
105	  Panic watchdog pretimeout governor, on watchdog pretimeout
106	  event put the kernel into panic.
107
108choice
109	prompt "Default Watchdog Pretimeout Governor"
110	default WATCHDOG_PRETIMEOUT_DEFAULT_GOV_PANIC
111	help
112	  This option selects a default watchdog pretimeout governor.
113	  The governor takes its action, if a watchdog is capable
114	  to report a pretimeout event.
115
116config WATCHDOG_PRETIMEOUT_DEFAULT_GOV_NOOP
117	bool "noop"
118	depends on WATCHDOG_PRETIMEOUT_GOV_NOOP
119	help
120	  Use noop watchdog pretimeout governor by default. If noop
121	  governor is selected by a user, write a short message to
122	  the kernel log buffer and don't do any system changes.
123
124config WATCHDOG_PRETIMEOUT_DEFAULT_GOV_PANIC
125	bool "panic"
126	depends on WATCHDOG_PRETIMEOUT_GOV_PANIC
127	help
128	  Use panic watchdog pretimeout governor by default, if
129	  a watchdog pretimeout event happens, consider that
130	  a watchdog feeder is dead and reboot is unavoidable.
131
132endchoice
133
134endif # WATCHDOG_PRETIMEOUT_GOV
135
136#
137# General Watchdog drivers
138#
139
140comment "Watchdog Device Drivers"
141
142# Architecture Independent
143
144config SOFT_WATCHDOG
145	tristate "Software watchdog"
146	select WATCHDOG_CORE
147	help
148	  A software monitoring watchdog. This will fail to reboot your system
149	  from some situations that the hardware watchdog will recover
150	  from. Equally it's a lot cheaper to install.
151
152	  To compile this driver as a module, choose M here: the
153	  module will be called softdog.
154
155config SOFT_WATCHDOG_PRETIMEOUT
156	bool "Software watchdog pretimeout governor support"
157	depends on SOFT_WATCHDOG && WATCHDOG_PRETIMEOUT_GOV
158	help
159	  Enable this if you want to use pretimeout governors with the software
160	  watchdog. Be aware that governors might affect the watchdog because it
161	  is purely software, e.g. the panic governor will stall it!
162
163config BD70528_WATCHDOG
164	tristate "ROHM BD70528 PMIC Watchdog"
165	depends on MFD_ROHM_BD70528
166	select WATCHDOG_CORE
167	help
168	  Support for the watchdog in the ROHM BD70528 PMIC. Watchdog trigger
169	  cause system reset.
170
171	  Say Y here to include support for the ROHM BD70528 watchdog.
172	  Alternatively say M to compile the driver as a module,
173	  which will be called bd70528_wdt.
174
175config DA9052_WATCHDOG
176	tristate "Dialog DA9052 Watchdog"
177	depends on PMIC_DA9052 || COMPILE_TEST
178	select WATCHDOG_CORE
179	help
180	  Support for the watchdog in the DA9052 PMIC. Watchdog trigger
181	  cause system reset.
182
183	  Say Y here to include support for the DA9052 watchdog.
184	  Alternatively say M to compile the driver as a module,
185	  which will be called da9052_wdt.
186
187config DA9055_WATCHDOG
188	tristate "Dialog Semiconductor DA9055 Watchdog"
189	depends on MFD_DA9055 || COMPILE_TEST
190	select WATCHDOG_CORE
191	help
192	  If you say yes here you get support for watchdog on the Dialog
193	  Semiconductor DA9055 PMIC.
194
195	  This driver can also be built as a module.  If so, the module
196	  will be called da9055_wdt.
197
198config DA9063_WATCHDOG
199	tristate "Dialog DA9063 Watchdog"
200	depends on MFD_DA9063 || COMPILE_TEST
201	select WATCHDOG_CORE
202	help
203	  Support for the watchdog in the DA9063 PMIC.
204
205	  This driver can be built as a module. The module name is da9063_wdt.
206
207config DA9062_WATCHDOG
208	tristate "Dialog DA9062/61 Watchdog"
209	depends on MFD_DA9062 || COMPILE_TEST
210	select WATCHDOG_CORE
211	help
212	  Support for the watchdog in the DA9062 and DA9061 PMICs.
213
214	  This driver can be built as a module. The module name is da9062_wdt.
215
216config GPIO_WATCHDOG
217	tristate "Watchdog device controlled through GPIO-line"
218	depends on OF_GPIO
219	select WATCHDOG_CORE
220	help
221	  If you say yes here you get support for watchdog device
222	  controlled through GPIO-line.
223
224config GPIO_WATCHDOG_ARCH_INITCALL
225	bool "Register the watchdog as early as possible"
226	depends on GPIO_WATCHDOG=y
227	help
228	  In some situations, the default initcall level (module_init)
229	  in not early enough in the boot process to avoid the watchdog
230	  to be triggered.
231	  If you say yes here, the initcall level would be raised to
232	  arch_initcall.
233	  If in doubt, say N.
234
235config MENF21BMC_WATCHDOG
236	tristate "MEN 14F021P00 BMC Watchdog"
237	depends on MFD_MENF21BMC || COMPILE_TEST
238	depends on I2C
239	select WATCHDOG_CORE
240	help
241	  Say Y here to include support for the MEN 14F021P00 BMC Watchdog.
242
243	  This driver can also be built as a module. If so the module
244	  will be called menf21bmc_wdt.
245
246config MENZ069_WATCHDOG
247	tristate "MEN 16Z069 Watchdog"
248	depends on MCB
249	select WATCHDOG_CORE
250	help
251	  Say Y here to include support for the MEN 16Z069 Watchdog.
252
253	  This driver can also be built as a module. If so the module
254	  will be called menz069_wdt.
255
256config TANGOX_WATCHDOG
257	tristate "Sigma Designs SMP86xx/SMP87xx watchdog"
258	select WATCHDOG_CORE
259	depends on ARCH_TANGO || COMPILE_TEST
260	depends on HAS_IOMEM
261	help
262	  Support for the watchdog in Sigma Designs SMP86xx (tango3)
263	  and SMP87xx (tango4) family chips.
264
265	  This driver can be built as a module. The module name is tangox_wdt.
266
267config WDAT_WDT
268	tristate "ACPI Watchdog Action Table (WDAT)"
269	depends on ACPI
270	select WATCHDOG_CORE
271	select ACPI_WATCHDOG
272	help
273	  This driver adds support for systems with ACPI Watchdog Action
274	  Table (WDAT) table. Servers typically have this but it can be
275	  found on some desktop machines as well. This driver will take
276	  over the native iTCO watchdog driver found on many Intel CPUs.
277
278	  To compile this driver as module, choose M here: the module will
279	  be called wdat_wdt.
280
281config WM831X_WATCHDOG
282	tristate "WM831x watchdog"
283	depends on MFD_WM831X
284	select WATCHDOG_CORE
285	help
286	  Support for the watchdog in the WM831x AudioPlus PMICs.  When
287	  the watchdog triggers the system will be reset.
288
289config WM8350_WATCHDOG
290	tristate "WM8350 watchdog"
291	depends on MFD_WM8350
292	select WATCHDOG_CORE
293	help
294	  Support for the watchdog in the WM8350 AudioPlus PMIC.  When
295	  the watchdog triggers the system will be reset.
296
297config XILINX_WATCHDOG
298	tristate "Xilinx Watchdog timer"
299	depends on HAS_IOMEM
300	select WATCHDOG_CORE
301	help
302	  Watchdog driver for the xps_timebase_wdt ip core.
303
304	  To compile this driver as a module, choose M here: the
305	  module will be called of_xilinx_wdt.
306
307config ZIIRAVE_WATCHDOG
308	tristate "Zodiac RAVE Watchdog Timer"
309	depends on I2C
310	select WATCHDOG_CORE
311	help
312	  Watchdog driver for the Zodiac Aerospace RAVE Switch Watchdog
313	  Processor.
314
315	  To compile this driver as a module, choose M here: the
316	  module will be called ziirave_wdt.
317
318config RAVE_SP_WATCHDOG
319	tristate "RAVE SP Watchdog timer"
320	depends on RAVE_SP_CORE
321	depends on NVMEM || !NVMEM
322	select WATCHDOG_CORE
323	help
324	  Support for the watchdog on RAVE SP device.
325
326config MLX_WDT
327	tristate "Mellanox Watchdog"
328	depends on MELLANOX_PLATFORM
329	select WATCHDOG_CORE
330	select REGMAP
331	help
332	  This is the driver for the hardware watchdog on Mellanox systems.
333	  If you are going to use it, say Y here, otherwise N.
334	  This driver can be used together with the watchdog daemon.
335	  It can also watch your kernel to make sure it doesn't freeze,
336	  and if it does, it reboots your system after a certain amount of
337	  time.
338
339	  To compile this driver as a module, choose M here: the
340	  module will be called mlx-wdt.
341
342# ALPHA Architecture
343
344# ARM Architecture
345
346config ARM_SP805_WATCHDOG
347	tristate "ARM SP805 Watchdog"
348	depends on (ARM || ARM64 || COMPILE_TEST) && ARM_AMBA
349	select WATCHDOG_CORE
350	help
351	  ARM Primecell SP805 Watchdog timer. This will reboot your system when
352	  the timeout is reached.
353
354config ARM_SBSA_WATCHDOG
355	tristate "ARM SBSA Generic Watchdog"
356	depends on ARM64
357	depends on ARM_ARCH_TIMER
358	select WATCHDOG_CORE
359	help
360	  ARM SBSA Generic Watchdog has two stage timeouts:
361	  the first signal (WS0) is for alerting the system by interrupt,
362	  the second one (WS1) is a real hardware reset.
363	  More details: ARM DEN0029B - Server Base System Architecture (SBSA)
364
365	  This driver can operate ARM SBSA Generic Watchdog as a single stage
366	  or a two stages watchdog, it depends on the module parameter "action".
367
368	  Note: the maximum timeout in the two stages mode is half of that in
369	  the single stage mode.
370
371	  To compile this driver as module, choose M here: The module
372	  will be called sbsa_gwdt.
373
374config ARMADA_37XX_WATCHDOG
375	tristate "Armada 37xx watchdog"
376	depends on ARCH_MVEBU || COMPILE_TEST
377	select MFD_SYSCON
378	select WATCHDOG_CORE
379	help
380	   Say Y here to include support for the watchdog timer found on
381	   Marvell Armada 37xx SoCs.
382	   To compile this driver as a module, choose M here: the
383	   module will be called armada_37xx_wdt.
384
385config ASM9260_WATCHDOG
386	tristate "Alphascale ASM9260 watchdog"
387	depends on MACH_ASM9260 || COMPILE_TEST
388	depends on OF
389	select WATCHDOG_CORE
390	select RESET_CONTROLLER
391	help
392	  Watchdog timer embedded into Alphascale asm9260 chips. This will reboot your
393	  system when the timeout is reached.
394
395config AT91RM9200_WATCHDOG
396	tristate "AT91RM9200 watchdog"
397	depends on (SOC_AT91RM9200 && MFD_SYSCON) || COMPILE_TEST
398	help
399	  Watchdog timer embedded into AT91RM9200 chips. This will reboot your
400	  system when the timeout is reached.
401
402config AT91SAM9X_WATCHDOG
403	tristate "AT91SAM9X / AT91CAP9 watchdog"
404	depends on ARCH_AT91 || COMPILE_TEST
405	select WATCHDOG_CORE
406	help
407	  Watchdog timer embedded into AT91SAM9X and AT91CAP9 chips. This will
408	  reboot your system when the timeout is reached.
409
410config SAMA5D4_WATCHDOG
411	tristate "Atmel SAMA5D4 Watchdog Timer"
412	depends on ARCH_AT91 || COMPILE_TEST
413	select WATCHDOG_CORE
414	help
415	  Atmel SAMA5D4 watchdog timer is embedded into SAMA5D4 chips.
416	  Its Watchdog Timer Mode Register can be written more than once.
417	  This will reboot your system when the timeout is reached.
418
419config CADENCE_WATCHDOG
420	tristate "Cadence Watchdog Timer"
421	depends on HAS_IOMEM
422	select WATCHDOG_CORE
423	help
424	  Say Y here if you want to include support for the watchdog
425	  timer in the Xilinx Zynq.
426
427config 21285_WATCHDOG
428	tristate "DC21285 watchdog"
429	depends on FOOTBRIDGE
430	help
431	  The Intel Footbridge chip contains a built-in watchdog circuit. Say Y
432	  here if you wish to use this. Alternatively say M to compile the
433	  driver as a module, which will be called wdt285.
434
435	  This driver does not work on all machines. In particular, early CATS
436	  boards have hardware problems that will cause the machine to simply
437	  lock up if the watchdog fires.
438
439	  "If in doubt, leave it out" - say N.
440
441config 977_WATCHDOG
442	tristate "NetWinder WB83C977 watchdog"
443	depends on (FOOTBRIDGE && ARCH_NETWINDER) || (ARM && COMPILE_TEST)
444	help
445	  Say Y here to include support for the WB977 watchdog included in
446	  NetWinder machines. Alternatively say M to compile the driver as
447	  a module, which will be called wdt977.
448
449	  Not sure? It's safe to say N.
450
451config FTWDT010_WATCHDOG
452	tristate "Faraday Technology FTWDT010 watchdog"
453	depends on ARM || COMPILE_TEST
454	select WATCHDOG_CORE
455	default ARCH_GEMINI
456	help
457	  Say Y here if to include support for the Faraday Technology
458	  FTWDT010 watchdog timer embedded in the Cortina Systems Gemini
459	  family of devices.
460
461	  To compile this driver as a module, choose M here: the
462	  module will be called ftwdt010_wdt.
463
464config IXP4XX_WATCHDOG
465	tristate "IXP4xx Watchdog"
466	depends on ARCH_IXP4XX
467	help
468	  Say Y here if to include support for the watchdog timer
469	  in the Intel IXP4xx network processors. This driver can
470	  be built as a module by choosing M. The module will
471	  be called ixp4xx_wdt.
472
473	  Note: The internal IXP4xx watchdog does a soft CPU reset
474	  which doesn't reset any peripherals. There are circumstances
475	  where the watchdog will fail to reset the board correctly
476	  (e.g., if the boot ROM is in an unreadable state).
477
478	  Say N if you are unsure.
479
480config HAVE_S3C2410_WATCHDOG
481	bool
482	help
483	  This will include watchdog timer support for Samsung SoCs. If
484	  you want to include watchdog support for any machine, kindly
485	  select this in the respective mach-XXXX/Kconfig file.
486
487config S3C2410_WATCHDOG
488	tristate "S3C2410 Watchdog"
489	depends on HAVE_S3C2410_WATCHDOG || COMPILE_TEST
490	select WATCHDOG_CORE
491	select MFD_SYSCON if ARCH_EXYNOS
492	help
493	  Watchdog timer block in the Samsung SoCs. This will reboot
494	  the system when the timer expires with the watchdog enabled.
495
496	  The driver is limited by the speed of the system's PCLK
497	  signal, so with reasonably fast systems (PCLK around 50-66MHz)
498	  then watchdog intervals of over approximately 20seconds are
499	  unavailable.
500
501	  The driver can be built as a module by choosing M, and will
502	  be called s3c2410_wdt
503
504config SA1100_WATCHDOG
505	tristate "SA1100/PXA2xx watchdog"
506	depends on ARCH_SA1100 || ARCH_PXA
507	help
508	  Watchdog timer embedded into SA11x0 and PXA2xx chips. This will
509	  reboot your system when timeout is reached.
510
511	  NOTE: once enabled, this timer cannot be disabled.
512
513	  To compile this driver as a module, choose M here: the
514	  module will be called sa1100_wdt.
515
516config DW_WATCHDOG
517	tristate "Synopsys DesignWare watchdog"
518	depends on HAS_IOMEM
519	select WATCHDOG_CORE
520	help
521	  Say Y here if to include support for the Synopsys DesignWare
522	  watchdog timer found in many chips.
523	  To compile this driver as a module, choose M here: the
524	  module will be called dw_wdt.
525
526config EP93XX_WATCHDOG
527	tristate "EP93xx Watchdog"
528	depends on ARCH_EP93XX || COMPILE_TEST
529	select WATCHDOG_CORE
530	help
531	  Say Y here if to include support for the watchdog timer
532	  embedded in the Cirrus Logic EP93xx family of devices.
533
534	  To compile this driver as a module, choose M here: the
535	  module will be called ep93xx_wdt.
536
537config OMAP_WATCHDOG
538	tristate "OMAP Watchdog"
539	depends on ARCH_OMAP16XX || ARCH_OMAP2PLUS || COMPILE_TEST
540	select WATCHDOG_CORE
541	help
542	  Support for TI OMAP1610/OMAP1710/OMAP2420/OMAP3430/OMAP4430 watchdog.  Say 'Y'
543	  here to enable the OMAP1610/OMAP1710/OMAP2420/OMAP3430/OMAP4430 watchdog timer.
544
545config PNX4008_WATCHDOG
546	tristate "LPC32XX Watchdog"
547	depends on ARCH_LPC32XX || COMPILE_TEST
548	select WATCHDOG_CORE
549	help
550	  Say Y here if to include support for the watchdog timer
551	  in the LPC32XX processor.
552	  This driver can be built as a module by choosing M. The module
553	  will be called pnx4008_wdt.
554
555	  Say N if you are unsure.
556
557config IOP_WATCHDOG
558	tristate "IOP Watchdog"
559	depends on ARCH_IOP13XX
560	select WATCHDOG_NOWAYOUT if (ARCH_IOP32X || ARCH_IOP33X)
561	help
562	  Say Y here if to include support for the watchdog timer
563	  in the Intel IOP3XX & IOP13XX I/O Processors.  This driver can
564	  be built as a module by choosing M. The module will
565	  be called iop_wdt.
566
567	  Note: The IOP13XX watchdog does an Internal Bus Reset which will
568	  affect both cores and the peripherals of the IOP.  The ATU-X
569	  and/or ATUe configuration registers will remain intact, but if
570	  operating as an Root Complex and/or Central Resource, the PCI-X
571	  and/or PCIe busses will also be reset.  THIS IS A VERY BIG HAMMER.
572
573config DAVINCI_WATCHDOG
574	tristate "DaVinci watchdog"
575	depends on ARCH_DAVINCI || ARCH_KEYSTONE || COMPILE_TEST
576	select WATCHDOG_CORE
577	help
578	  Say Y here if to include support for the watchdog timer
579	  in the DaVinci DM644x/DM646x or Keystone processors.
580	  To compile this driver as a module, choose M here: the
581	  module will be called davinci_wdt.
582
583	  NOTE: once enabled, this timer cannot be disabled.
584	  Say N if you are unsure.
585
586config ORION_WATCHDOG
587	tristate "Orion watchdog"
588	depends on ARCH_ORION5X || ARCH_DOVE || MACH_DOVE || ARCH_MVEBU || (COMPILE_TEST && !ARCH_EBSA110)
589	depends on ARM
590	select WATCHDOG_CORE
591	help
592	  Say Y here if to include support for the watchdog timer
593	  in the Marvell Orion5x and Kirkwood ARM SoCs.
594	  To compile this driver as a module, choose M here: the
595	  module will be called orion_wdt.
596
597config RN5T618_WATCHDOG
598	tristate "Ricoh RN5T618 watchdog"
599	depends on MFD_RN5T618 || COMPILE_TEST
600	select WATCHDOG_CORE
601	help
602	  If you say yes here you get support for watchdog on the Ricoh
603	  RN5T618 PMIC.
604
605	  This driver can also be built as a module.  If so, the module
606	  will be called rn5t618_wdt.
607
608config SUNXI_WATCHDOG
609	tristate "Allwinner SoCs watchdog support"
610	depends on ARCH_SUNXI || COMPILE_TEST
611	select WATCHDOG_CORE
612	help
613	  Say Y here to include support for the watchdog timer
614	  in Allwinner SoCs.
615	  To compile this driver as a module, choose M here: the
616	  module will be called sunxi_wdt.
617
618config COH901327_WATCHDOG
619	bool "ST-Ericsson COH 901 327 watchdog"
620	depends on ARCH_U300 || (ARM && COMPILE_TEST)
621	default y if MACH_U300
622	select WATCHDOG_CORE
623	help
624	  Say Y here to include Watchdog timer support for the
625	  watchdog embedded into the ST-Ericsson U300 series platforms.
626	  This watchdog is used to reset the system and thus cannot be
627	  compiled as a module.
628
629config NPCM7XX_WATCHDOG
630	tristate "Nuvoton NPCM750 watchdog"
631	depends on ARCH_NPCM || COMPILE_TEST
632	default y if ARCH_NPCM7XX
633	select WATCHDOG_CORE
634	help
635	  Say Y here to include Watchdog timer support for the
636	  watchdog embedded into the NPCM7xx.
637	  This watchdog is used to reset the system and thus cannot be
638	  compiled as a module.
639
640config TWL4030_WATCHDOG
641	tristate "TWL4030 Watchdog"
642	depends on TWL4030_CORE
643	select WATCHDOG_CORE
644	help
645	  Support for TI TWL4030 watchdog.  Say 'Y' here to enable the
646	  watchdog timer support for TWL4030 chips.
647
648config STMP3XXX_RTC_WATCHDOG
649	tristate "Freescale STMP3XXX & i.MX23/28 watchdog"
650	depends on RTC_DRV_STMP || COMPILE_TEST
651	select WATCHDOG_CORE
652	help
653	  Say Y here to include support for the watchdog timer inside
654	  the RTC for the STMP37XX/378X or i.MX23/28 SoC.
655	  To compile this driver as a module, choose M here: the
656	  module will be called stmp3xxx_rtc_wdt.
657
658config TS4800_WATCHDOG
659	tristate "TS-4800 Watchdog"
660	depends on HAS_IOMEM && OF
661	depends on SOC_IMX51 || COMPILE_TEST
662	select WATCHDOG_CORE
663	select MFD_SYSCON
664	help
665	  Technologic Systems TS-4800 has watchdog timer implemented in
666	  an external FPGA. Say Y here if you want to support for the
667	  watchdog timer on TS-4800 board.
668
669config TS72XX_WATCHDOG
670	tristate "TS-72XX SBC Watchdog"
671	depends on MACH_TS72XX || COMPILE_TEST
672	help
673	  Technologic Systems TS-7200, TS-7250 and TS-7260 boards have
674	  watchdog timer implemented in a external CPLD chip. Say Y here
675	  if you want to support for the watchdog timer on TS-72XX boards.
676
677	  To compile this driver as a module, choose M here: the
678	  module will be called ts72xx_wdt.
679
680config MAX63XX_WATCHDOG
681	tristate "Max63xx watchdog"
682	depends on HAS_IOMEM
683	select WATCHDOG_CORE
684	help
685	  Support for memory mapped max63{69,70,71,72,73,74} watchdog timer.
686
687config MAX77620_WATCHDOG
688	tristate "Maxim Max77620 Watchdog Timer"
689	depends on MFD_MAX77620 || COMPILE_TEST
690	select WATCHDOG_CORE
691	help
692	 This is the driver for the Max77620 watchdog timer.
693	 Say 'Y' here to enable the watchdog timer support for
694	 MAX77620 chips. To compile this driver as a module,
695	 choose M here: the module will be called max77620_wdt.
696
697config IMX2_WDT
698	tristate "IMX2+ Watchdog"
699	depends on ARCH_MXC || ARCH_LAYERSCAPE || COMPILE_TEST
700	select REGMAP_MMIO
701	select WATCHDOG_CORE
702	help
703	  This is the driver for the hardware watchdog
704	  on the Freescale IMX2 and later processors.
705	  If you have one of these processors and wish to have
706	  watchdog support enabled, say Y, otherwise say N.
707
708	  To compile this driver as a module, choose M here: the
709	  module will be called imx2_wdt.
710
711config IMX_SC_WDT
712	tristate "IMX SC Watchdog"
713	depends on HAVE_ARM_SMCCC
714	depends on IMX_SCU
715	select WATCHDOG_CORE
716	help
717	  This is the driver for the system controller watchdog
718	  on the NXP i.MX SoCs with system controller inside, the
719	  watchdog driver will call ARM SMC API and trap into
720	  ARM-Trusted-Firmware for operations, ARM-Trusted-Firmware
721	  will request system controller to execute the operations.
722	  If you have one of these processors and wish to have
723	  watchdog support enabled, say Y, otherwise say N.
724
725	  To compile this driver as a module, choose M here: the
726	  module will be called imx_sc_wdt.
727
728config IMX7ULP_WDT
729	tristate "IMX7ULP Watchdog"
730	depends on ARCH_MXC || COMPILE_TEST
731	select WATCHDOG_CORE
732	help
733	  This is the driver for the hardware watchdog on the Freescale
734	  IMX7ULP and later processors. If you have one of these
735	  processors and wish to have watchdog support enabled,
736	  say Y, otherwise say N.
737
738	  To compile this driver as a module, choose M here: the
739	  module will be called imx7ulp_wdt.
740
741config UX500_WATCHDOG
742	tristate "ST-Ericsson Ux500 watchdog"
743	depends on MFD_DB8500_PRCMU
744	select WATCHDOG_CORE
745	default y
746	help
747	  Say Y here to include Watchdog timer support for the watchdog
748	  existing in the prcmu of ST-Ericsson Ux500 series platforms.
749
750	  To compile this driver as a module, choose M here: the
751	  module will be called ux500_wdt.
752
753config RETU_WATCHDOG
754	tristate "Retu watchdog"
755	depends on MFD_RETU
756	select WATCHDOG_CORE
757	help
758	  Retu watchdog driver for Nokia Internet Tablets (770, N800,
759	  N810). At least on N800 the watchdog cannot be disabled, so
760	  this driver is essential and you should enable it.
761
762	  To compile this driver as a module, choose M here: the
763	  module will be called retu_wdt.
764
765config MOXART_WDT
766	tristate "MOXART watchdog"
767	depends on ARCH_MOXART || COMPILE_TEST
768	help
769	  Say Y here to include Watchdog timer support for the watchdog
770	  existing on the MOXA ART SoC series platforms.
771
772	  To compile this driver as a module, choose M here: the
773	  module will be called moxart_wdt.
774
775config SIRFSOC_WATCHDOG
776	tristate "SiRFSOC watchdog"
777	depends on ARCH_SIRF || COMPILE_TEST
778	select WATCHDOG_CORE
779	default y
780	help
781	  Support for CSR SiRFprimaII and SiRFatlasVI watchdog. When
782	  the watchdog triggers the system will be reset.
783
784config ST_LPC_WATCHDOG
785	tristate "STMicroelectronics LPC Watchdog"
786	depends on ARCH_STI || COMPILE_TEST
787	depends on OF
788	select WATCHDOG_CORE
789	help
790	  Say Y here to include STMicroelectronics Low Power Controller
791	  (LPC) based Watchdog timer support.
792
793	  To compile this driver as a module, choose M here: the
794	  module will be called st_lpc_wdt.
795
796config TEGRA_WATCHDOG
797	tristate "Tegra watchdog"
798	depends on (ARCH_TEGRA || COMPILE_TEST) && HAS_IOMEM
799	select WATCHDOG_CORE
800	help
801	  Say Y here to include support for the watchdog timer
802	  embedded in NVIDIA Tegra SoCs.
803
804	  To compile this driver as a module, choose M here: the
805	  module will be called tegra_wdt.
806
807config QCOM_WDT
808	tristate "QCOM watchdog"
809	depends on HAS_IOMEM
810	depends on ARCH_QCOM || COMPILE_TEST
811	select WATCHDOG_CORE
812	help
813	  Say Y here to include Watchdog timer support for the watchdog found
814	  on QCOM chipsets.  Currently supported targets are the MSM8960,
815	  APQ8064, and IPQ8064.
816
817	  To compile this driver as a module, choose M here: the
818	  module will be called qcom_wdt.
819
820config MESON_GXBB_WATCHDOG
821	tristate "Amlogic Meson GXBB SoCs watchdog support"
822	depends on ARCH_MESON || COMPILE_TEST
823	select WATCHDOG_CORE
824	help
825	  Say Y here to include support for the watchdog timer
826	  in Amlogic Meson GXBB SoCs.
827	  To compile this driver as a module, choose M here: the
828	  module will be called meson_gxbb_wdt.
829
830config MESON_WATCHDOG
831	tristate "Amlogic Meson SoCs watchdog support"
832	depends on ARCH_MESON || COMPILE_TEST
833	select WATCHDOG_CORE
834	help
835	  Say Y here to include support for the watchdog timer
836	  in Amlogic Meson SoCs.
837	  To compile this driver as a module, choose M here: the
838	  module will be called meson_wdt.
839
840config MEDIATEK_WATCHDOG
841	tristate "Mediatek SoCs watchdog support"
842	depends on ARCH_MEDIATEK || COMPILE_TEST
843	select WATCHDOG_CORE
844	help
845	  Say Y here to include support for the watchdog timer
846	  in Mediatek SoCs.
847	  To compile this driver as a module, choose M here: the
848	  module will be called mtk_wdt.
849
850config DIGICOLOR_WATCHDOG
851	tristate "Conexant Digicolor SoCs watchdog support"
852	depends on ARCH_DIGICOLOR || COMPILE_TEST
853	select WATCHDOG_CORE
854	help
855	  Say Y here to include support for the watchdog timer
856	  in Conexant Digicolor SoCs.
857	  To compile this driver as a module, choose M here: the
858	  module will be called digicolor_wdt.
859
860config LPC18XX_WATCHDOG
861	tristate "LPC18xx/43xx Watchdog"
862	depends on ARCH_LPC18XX || COMPILE_TEST
863	depends on HAS_IOMEM
864	select WATCHDOG_CORE
865	help
866	  Say Y here if to include support for the watchdog timer
867	  in NXP LPC SoCs family, which includes LPC18xx/LPC43xx
868	  processors.
869	  To compile this driver as a module, choose M here: the
870	  module will be called lpc18xx_wdt.
871
872config ATLAS7_WATCHDOG
873	tristate "CSRatlas7 watchdog"
874	depends on ARCH_ATLAS7 || COMPILE_TEST
875	help
876	  Say Y here to include Watchdog timer support for the watchdog
877	  existing on the CSRatlas7 series platforms.
878
879	  To compile this driver as a module, choose M here: the
880	  module will be called atlas7_wdt.
881
882config RENESAS_WDT
883	tristate "Renesas WDT Watchdog"
884	depends on ARCH_RENESAS || COMPILE_TEST
885	select WATCHDOG_CORE
886	help
887	  This driver adds watchdog support for the integrated watchdogs in the
888	  Renesas R-Car and other SH-Mobile SoCs (usually named RWDT or SWDT).
889
890config RENESAS_RZAWDT
891	tristate "Renesas RZ/A WDT Watchdog"
892	depends on ARCH_RENESAS || COMPILE_TEST
893	select WATCHDOG_CORE
894	help
895	  This driver adds watchdog support for the integrated watchdogs in the
896	  Renesas RZ/A SoCs. These watchdogs can be used to reset a system.
897
898config ASPEED_WATCHDOG
899	tristate "Aspeed BMC watchdog support"
900	depends on ARCH_ASPEED || COMPILE_TEST
901	select WATCHDOG_CORE
902	help
903	  Say Y here to include support for the watchdog timer
904	  in Aspeed BMC SoCs.
905
906	  This driver is required to reboot the SoC.
907
908	  To compile this driver as a module, choose M here: the
909	  module will be called aspeed_wdt.
910
911config ZX2967_WATCHDOG
912	tristate "ZTE zx2967 SoCs watchdog support"
913	depends on ARCH_ZX
914	select WATCHDOG_CORE
915	help
916	  Say Y here to include support for the watchdog timer
917	  in ZTE zx2967 SoCs.
918	  To compile this driver as a module, choose M here: the
919	  module will be called zx2967_wdt.
920
921config STM32_WATCHDOG
922	tristate "STM32 Independent WatchDoG (IWDG) support"
923	depends on ARCH_STM32
924	select WATCHDOG_CORE
925	default y
926	help
927	  Say Y here to include support for the watchdog timer
928	  in stm32 SoCs.
929
930	  To compile this driver as a module, choose M here: the
931	  module will be called stm32_iwdg.
932
933config STPMIC1_WATCHDOG
934	tristate "STPMIC1 PMIC watchdog support"
935	depends on MFD_STPMIC1
936	select WATCHDOG_CORE
937	help
938	  Say Y here to include watchdog support embedded into STPMIC1 PMIC.
939	  If the watchdog timer expires, stpmic1 will shut down all its power
940	  supplies.
941
942	  To compile this driver as a module, choose M here: the
943	  module will be called spmic1_wdt.
944
945config UNIPHIER_WATCHDOG
946	tristate "UniPhier watchdog support"
947	depends on ARCH_UNIPHIER || COMPILE_TEST
948	depends on OF && MFD_SYSCON
949	select WATCHDOG_CORE
950	help
951	  Say Y here to include support watchdog timer embedded
952	  into the UniPhier system.
953
954	  To compile this driver as a module, choose M here: the
955	  module will be called uniphier_wdt.
956
957config RTD119X_WATCHDOG
958	bool "Realtek RTD119x/RTD129x watchdog support"
959	depends on ARCH_REALTEK || COMPILE_TEST
960	depends on OF
961	select WATCHDOG_CORE
962	default ARCH_REALTEK
963	help
964	  Say Y here to include support for the watchdog timer in
965	  Realtek RTD1295 SoCs.
966
967config SPRD_WATCHDOG
968	tristate "Spreadtrum watchdog support"
969	depends on ARCH_SPRD || COMPILE_TEST
970	select WATCHDOG_CORE
971	help
972	  Say Y here to include watchdog timer supported
973	  by Spreadtrum system.
974
975config PM8916_WATCHDOG
976	tristate "QCOM PM8916 pmic watchdog"
977	depends on OF && MFD_SPMI_PMIC
978	select WATCHDOG_CORE
979	help
980	  Say Y here to include support watchdog timer embedded into the
981	  pm8916 module.
982
983# X86 (i386 + ia64 + x86_64) Architecture
984
985config ACQUIRE_WDT
986	tristate "Acquire SBC Watchdog Timer"
987	depends on X86
988	---help---
989	  This is the driver for the hardware watchdog on Single Board
990	  Computers produced by Acquire Inc (and others). This watchdog
991	  simply watches your kernel to make sure it doesn't freeze, and if
992	  it does, it reboots your computer after a certain amount of time.
993
994	  To compile this driver as a module, choose M here: the
995	  module will be called acquirewdt.
996
997	  Most people will say N.
998
999config ADVANTECH_WDT
1000	tristate "Advantech SBC Watchdog Timer"
1001	depends on X86
1002	help
1003	  If you are configuring a Linux kernel for the Advantech single-board
1004	  computer, say `Y' here to support its built-in watchdog timer
1005	  feature. More information can be found at
1006	  <http://www.advantech.com.tw/products/>
1007
1008config ALIM1535_WDT
1009	tristate "ALi M1535 PMU Watchdog Timer"
1010	depends on X86 && PCI
1011	---help---
1012	  This is the driver for the hardware watchdog on the ALi M1535 PMU.
1013
1014	  To compile this driver as a module, choose M here: the
1015	  module will be called alim1535_wdt.
1016
1017	  Most people will say N.
1018
1019config ALIM7101_WDT
1020	tristate "ALi M7101 PMU Computer Watchdog"
1021	depends on PCI
1022	help
1023	  This is the driver for the hardware watchdog on the ALi M7101 PMU
1024	  as used in the x86 Cobalt servers and also found in some
1025	  SPARC Netra servers too.
1026
1027	  To compile this driver as a module, choose M here: the
1028	  module will be called alim7101_wdt.
1029
1030	  Most people will say N.
1031
1032config EBC_C384_WDT
1033	tristate "WinSystems EBC-C384 Watchdog Timer"
1034	depends on X86
1035	select ISA_BUS_API
1036	select WATCHDOG_CORE
1037	help
1038	  Enables watchdog timer support for the watchdog timer on the
1039	  WinSystems EBC-C384 motherboard. The timeout may be configured via
1040	  the timeout module parameter.
1041
1042config F71808E_WDT
1043	tristate "Fintek F718xx, F818xx Super I/O Watchdog"
1044	depends on X86
1045	help
1046	  This is the driver for the hardware watchdog on the Fintek F71808E,
1047	  F71862FG, F71868, F71869, F71882FG, F71889FG, F81803, F81865, and
1048	  F81866 Super I/O controllers.
1049
1050	  You can compile this driver directly into the kernel, or use
1051	  it as a module.  The module will be called f71808e_wdt.
1052
1053config SP5100_TCO
1054	tristate "AMD/ATI SP5100 TCO Timer/Watchdog"
1055	depends on X86 && PCI
1056	select WATCHDOG_CORE
1057	---help---
1058	  Hardware watchdog driver for the AMD/ATI SP5100 chipset. The TCO
1059	  (Total Cost of Ownership) timer is a watchdog timer that will reboot
1060	  the machine after its expiration. The expiration time can be
1061	  configured with the "heartbeat" parameter.
1062
1063	  To compile this driver as a module, choose M here: the
1064	  module will be called sp5100_tco.
1065
1066config GEODE_WDT
1067	tristate "AMD Geode CS5535/CS5536 Watchdog"
1068	depends on CS5535_MFGPT
1069	help
1070	  This driver enables a watchdog capability built into the
1071	  CS5535/CS5536 companion chips for the AMD Geode GX and LX
1072	  processors.  This watchdog watches your kernel to make sure
1073	  it doesn't freeze, and if it does, it reboots your computer after
1074	  a certain amount of time.
1075
1076	  You can compile this driver directly into the kernel, or use
1077	  it as a module.  The module will be called geodewdt.
1078
1079config SC520_WDT
1080	tristate "AMD Elan SC520 processor Watchdog"
1081	depends on MELAN || COMPILE_TEST
1082	help
1083	  This is the driver for the hardware watchdog built in to the
1084	  AMD "Elan" SC520 microcomputer commonly used in embedded systems.
1085	  This watchdog simply watches your kernel to make sure it doesn't
1086	  freeze, and if it does, it reboots your computer after a certain
1087	  amount of time.
1088
1089	  You can compile this driver directly into the kernel, or use
1090	  it as a module.  The module will be called sc520_wdt.
1091
1092config SBC_FITPC2_WATCHDOG
1093	tristate "Compulab SBC-FITPC2 watchdog"
1094	depends on X86
1095	---help---
1096	  This is the driver for the built-in watchdog timer on the fit-PC2,
1097	  fit-PC2i, CM-iAM single-board computers made by Compulab.
1098
1099	  It`s possible to enable watchdog timer either from BIOS (F2) or from booted Linux.
1100	  When "Watchdog Timer Value" enabled one can set 31-255 s operational range.
1101
1102	  Entering BIOS setup temporary disables watchdog operation regardless to current state,
1103	  so system will not be restarted while user in BIOS setup.
1104
1105	  Once watchdog was enabled the system will be restarted every
1106	  "Watchdog Timer Value" period, so to prevent it user can restart or
1107	  disable the watchdog.
1108
1109	  To compile this driver as a module, choose M here: the
1110	  module will be called sbc_fitpc2_wdt.
1111
1112	  Most people will say N.
1113
1114config EUROTECH_WDT
1115	tristate "Eurotech CPU-1220/1410 Watchdog Timer"
1116	depends on X86
1117	help
1118	  Enable support for the watchdog timer on the Eurotech CPU-1220 and
1119	  CPU-1410 cards.  These are PC/104 SBCs. Spec sheets and product
1120	  information are at <http://www.eurotech.it/>.
1121
1122config IB700_WDT
1123	tristate "IB700 SBC Watchdog Timer"
1124	depends on X86
1125	---help---
1126	  This is the driver for the hardware watchdog on the IB700 Single
1127	  Board Computer produced by TMC Technology (www.tmc-uk.com). This watchdog
1128	  simply watches your kernel to make sure it doesn't freeze, and if
1129	  it does, it reboots your computer after a certain amount of time.
1130
1131	  This driver is like the WDT501 driver but for slightly different hardware.
1132
1133	  To compile this driver as a module, choose M here: the
1134	  module will be called ib700wdt.
1135
1136	  Most people will say N.
1137
1138config IBMASR
1139	tristate "IBM Automatic Server Restart"
1140	depends on X86
1141	help
1142	  This is the driver for the IBM Automatic Server Restart watchdog
1143	  timer built-in into some eServer xSeries machines.
1144
1145	  To compile this driver as a module, choose M here: the
1146	  module will be called ibmasr.
1147
1148config WAFER_WDT
1149	tristate "ICP Single Board Computer Watchdog Timer"
1150	depends on X86
1151	help
1152	  This is a driver for the hardware watchdog on the ICP Single
1153	  Board Computer. This driver is working on (at least) the following
1154	  IPC SBC's: Wafer 5823, Rocky 4783, Rocky 3703 and Rocky 3782.
1155
1156	  To compile this driver as a module, choose M here: the
1157	  module will be called wafer5823wdt.
1158
1159config I6300ESB_WDT
1160	tristate "Intel 6300ESB Timer/Watchdog"
1161	depends on PCI
1162	select WATCHDOG_CORE
1163	---help---
1164	  Hardware driver for the watchdog timer built into the Intel
1165	  6300ESB controller hub.
1166
1167	  To compile this driver as a module, choose M here: the
1168	  module will be called i6300esb.
1169
1170config IE6XX_WDT
1171	tristate "Intel Atom E6xx Watchdog"
1172	depends on X86 && PCI
1173	select WATCHDOG_CORE
1174	select MFD_CORE
1175	select LPC_SCH
1176	---help---
1177	  Hardware driver for the watchdog timer built into the Intel
1178	  Atom E6XX (TunnelCreek) processor.
1179
1180	  To compile this driver as a module, choose M here: the
1181	  module will be called ie6xx_wdt.
1182
1183config INTEL_SCU_WATCHDOG
1184	bool "Intel SCU Watchdog for Mobile Platforms"
1185	depends on X86_INTEL_MID
1186	---help---
1187	  Hardware driver for the watchdog time built into the Intel SCU
1188	  for Intel Mobile Platforms.
1189
1190	  To compile this driver as a module, choose M here.
1191
1192config INTEL_MID_WATCHDOG
1193	tristate "Intel MID Watchdog Timer"
1194	depends on X86_INTEL_MID
1195	select WATCHDOG_CORE
1196	---help---
1197	  Watchdog timer driver built into the Intel SCU for Intel MID
1198	  Platforms.
1199
1200	  This driver currently supports only the watchdog evolution
1201	  implementation in SCU, available for Merrifield generation.
1202
1203	  To compile this driver as a module, choose M here.
1204
1205config ITCO_WDT
1206	tristate "Intel TCO Timer/Watchdog"
1207	depends on (X86 || IA64) && PCI
1208	select WATCHDOG_CORE
1209	depends on I2C || I2C=n
1210	select LPC_ICH if !EXPERT
1211	select I2C_I801 if !EXPERT && I2C
1212	---help---
1213	  Hardware driver for the intel TCO timer based watchdog devices.
1214	  These drivers are included in the Intel 82801 I/O Controller
1215	  Hub family (from ICH0 up to ICH10) and in the Intel 63xxESB
1216	  controller hub.
1217
1218	  The TCO (Total Cost of Ownership) timer is a watchdog timer
1219	  that will reboot the machine after its second expiration. The
1220	  expiration time can be configured with the "heartbeat" parameter.
1221
1222	  On some motherboards the driver may fail to reset the chipset's
1223	  NO_REBOOT flag which prevents the watchdog from rebooting the
1224	  machine. If this is the case you will get a kernel message like
1225	  "failed to reset NO_REBOOT flag, reboot disabled by hardware".
1226
1227	  To compile this driver as a module, choose M here: the
1228	  module will be called iTCO_wdt.
1229
1230config ITCO_VENDOR_SUPPORT
1231	bool "Intel TCO Timer/Watchdog Specific Vendor Support"
1232	depends on ITCO_WDT
1233	---help---
1234	  Add vendor specific support to the intel TCO timer based watchdog
1235	  devices. At this moment we only have additional support for some
1236	  SuperMicro Inc. motherboards.
1237
1238config IT8712F_WDT
1239	tristate "IT8712F (Smart Guardian) Watchdog Timer"
1240	depends on X86
1241	---help---
1242	  This is the driver for the built-in watchdog timer on the IT8712F
1243	  Super I/0 chipset used on many motherboards.
1244
1245	  If the driver does not work, then make sure that the game port in
1246	  the BIOS is enabled.
1247
1248	  To compile this driver as a module, choose M here: the
1249	  module will be called it8712f_wdt.
1250
1251config IT87_WDT
1252	tristate "IT87 Watchdog Timer"
1253	depends on X86
1254	select WATCHDOG_CORE
1255	---help---
1256	  This is the driver for the hardware watchdog on the ITE IT8607,
1257	  IT8620, IT8622, IT8625, IT8628, IT8655, IT8665, IT8686, IT8702,
1258	  IT8712, IT8716, IT8718, IT8720, IT8721, IT8726, IT8728, and
1259	  IT8783 Super I/O chips.
1260
1261	  This watchdog simply watches your kernel to make sure it doesn't
1262	  freeze, and if it does, it reboots your computer after a certain
1263	  amount of time.
1264
1265	  To compile this driver as a module, choose M here: the module will
1266	  be called it87_wdt.
1267
1268config HP_WATCHDOG
1269	tristate "HP ProLiant iLO2+ Hardware Watchdog Timer"
1270	select WATCHDOG_CORE
1271	depends on X86 && PCI
1272	help
1273	  A software monitoring watchdog and NMI handling driver. This driver
1274	  will detect lockups and provide a stack trace. This is a driver that
1275	  will only load on an HP ProLiant system with a minimum of iLO2 support.
1276	  To compile this driver as a module, choose M here: the module will be
1277	  called hpwdt.
1278
1279config HPWDT_NMI_DECODING
1280	bool "NMI support for the HP ProLiant iLO2+ Hardware Watchdog Timer"
1281	depends on HP_WATCHDOG
1282	default y
1283	help
1284	  Enables the NMI handler for the watchdog pretimeout NMI and the iLO
1285	  "Generate NMI to System" virtual button.  When an NMI is claimed
1286	  by the driver, panic is called.
1287
1288config KEMPLD_WDT
1289	tristate "Kontron COM Watchdog Timer"
1290	depends on MFD_KEMPLD
1291	select WATCHDOG_CORE
1292	help
1293	  Support for the PLD watchdog on some Kontron ETX and COMexpress
1294	  (ETXexpress) modules
1295
1296	  This driver can also be built as a module. If so, the module will be
1297	  called kempld_wdt.
1298
1299config SC1200_WDT
1300	tristate "National Semiconductor PC87307/PC97307 (ala SC1200) Watchdog"
1301	depends on X86
1302	help
1303	  This is a driver for National Semiconductor PC87307/PC97307 hardware
1304	  watchdog cards as found on the SC1200. This watchdog is mainly used
1305	  for power management purposes and can be used to power down the device
1306	  during inactivity periods (includes interrupt activity monitoring).
1307
1308	  To compile this driver as a module, choose M here: the
1309	  module will be called sc1200wdt.
1310
1311	  Most people will say N.
1312
1313config SCx200_WDT
1314	tristate "National Semiconductor SCx200 Watchdog"
1315	depends on SCx200 && PCI
1316	help
1317	  Enable the built-in watchdog timer support on the National
1318	  Semiconductor SCx200 processors.
1319
1320	  If compiled as a module, it will be called scx200_wdt.
1321
1322config PC87413_WDT
1323	tristate "NS PC87413 watchdog"
1324	depends on X86
1325	---help---
1326	  This is the driver for the hardware watchdog on the PC87413 chipset
1327	  This watchdog simply watches your kernel to make sure it doesn't
1328	  freeze, and if it does, it reboots your computer after a certain
1329	  amount of time.
1330
1331	  To compile this driver as a module, choose M here: the
1332	  module will be called pc87413_wdt.
1333
1334	  Most people will say N.
1335
1336config NV_TCO
1337	tristate "nVidia TCO Timer/Watchdog"
1338	depends on X86 && PCI
1339	---help---
1340	  Hardware driver for the TCO timer built into the nVidia Hub family
1341	  (such as the MCP51).  The TCO (Total Cost of Ownership) timer is a
1342	  watchdog timer that will reboot the machine after its second
1343	  expiration. The expiration time can be configured with the
1344	  "heartbeat" parameter.
1345
1346	  On some motherboards the driver may fail to reset the chipset's
1347	  NO_REBOOT flag which prevents the watchdog from rebooting the
1348	  machine. If this is the case you will get a kernel message like
1349	  "failed to reset NO_REBOOT flag, reboot disabled by hardware".
1350
1351	  To compile this driver as a module, choose M here: the
1352	  module will be called nv_tco.
1353
1354config RDC321X_WDT
1355	tristate "RDC R-321x SoC watchdog"
1356	depends on X86_RDC321X || COMPILE_TEST
1357	depends on PCI
1358	help
1359	  This is the driver for the built in hardware watchdog
1360	  in the RDC R-321x SoC.
1361
1362	  To compile this driver as a module, choose M here: the
1363	  module will be called rdc321x_wdt.
1364
1365config 60XX_WDT
1366	tristate "SBC-60XX Watchdog Timer"
1367	depends on X86
1368	help
1369	  This driver can be used with the watchdog timer found on some
1370	  single board computers, namely the 6010 PII based computer.
1371	  It may well work with other cards.  It reads port 0x443 to enable
1372	  and re-set the watchdog timer, and reads port 0x45 to disable
1373	  the watchdog.  If you have a card that behave in similar ways,
1374	  you can probably make this driver work with your card as well.
1375
1376	  You can compile this driver directly into the kernel, or use
1377	  it as a module.  The module will be called sbc60xxwdt.
1378
1379config SBC8360_WDT
1380	tristate "SBC8360 Watchdog Timer"
1381	depends on X86_32
1382	---help---
1383
1384	  This is the driver for the hardware watchdog on the SBC8360 Single
1385	  Board Computer produced by Axiomtek Co., Ltd. (www.axiomtek.com).
1386
1387	  To compile this driver as a module, choose M here: the
1388	  module will be called sbc8360.
1389
1390	  Most people will say N.
1391
1392config SBC7240_WDT
1393	tristate "SBC Nano 7240 Watchdog Timer"
1394	depends on X86_32 && !UML
1395	---help---
1396	  This is the driver for the hardware watchdog found on the IEI
1397	  single board computers EPIC Nano 7240 (and likely others). This
1398	  watchdog simply watches your kernel to make sure it doesn't freeze,
1399	  and if it does, it reboots your computer after a certain amount of
1400	  time.
1401
1402	  To compile this driver as a module, choose M here: the
1403	  module will be called sbc7240_wdt.
1404
1405config CPU5_WDT
1406	tristate "SMA CPU5 Watchdog"
1407	depends on X86
1408	---help---
1409	  TBD.
1410	  To compile this driver as a module, choose M here: the
1411	  module will be called cpu5wdt.
1412
1413config SMSC_SCH311X_WDT
1414	tristate "SMSC SCH311X Watchdog Timer"
1415	depends on X86
1416	---help---
1417	  This is the driver for the hardware watchdog timer on the
1418	  SMSC SCH3112, SCH3114 and SCH3116 Super IO chipset
1419	  (LPC IO with 8042 KBC, Reset Generation, HWM and multiple
1420	  serial ports).
1421
1422	  To compile this driver as a module, choose M here: the
1423	  module will be called sch311x_wdt.
1424
1425config SMSC37B787_WDT
1426	tristate "Winbond SMsC37B787 Watchdog Timer"
1427	depends on X86
1428	---help---
1429	  This is the driver for the hardware watchdog component on the
1430	  Winbond SMsC37B787 chipset as used on the NetRunner Mainboard
1431	  from Vision Systems and maybe others.
1432
1433	  This watchdog simply watches your kernel to make sure it doesn't
1434	  freeze, and if it does, it reboots your computer after a certain
1435	  amount of time.
1436
1437	  Usually a userspace daemon will notify the kernel WDT driver that
1438	  userspace is still alive, at regular intervals.
1439
1440	  To compile this driver as a module, choose M here: the
1441	  module will be called smsc37b787_wdt.
1442
1443	  Most people will say N.
1444
1445config TQMX86_WDT
1446	tristate "TQ-Systems TQMX86 Watchdog Timer"
1447	depends on X86
1448	select WATCHDOG_CORE
1449	help
1450	This is the driver for the hardware watchdog timer in the TQMX86 IO
1451	controller found on some of their ComExpress Modules.
1452
1453	To compile this driver as a module, choose M here; the module
1454	will be called tqmx86_wdt.
1455
1456	Most people will say N.
1457
1458config VIA_WDT
1459	tristate "VIA Watchdog Timer"
1460	depends on X86 && PCI
1461	select WATCHDOG_CORE
1462	---help---
1463	This is the driver for the hardware watchdog timer on VIA
1464	southbridge chipset CX700, VX800/VX820 or VX855/VX875.
1465
1466	To compile this driver as a module, choose M here; the module
1467	will be called via_wdt.
1468
1469	Most people will say N.
1470
1471config W83627HF_WDT
1472	tristate "Watchdog timer for W83627HF/W83627DHG and compatibles"
1473	depends on X86
1474	select WATCHDOG_CORE
1475	---help---
1476	  This is the driver for the hardware watchdog on the following
1477	  Super I/O chips.
1478		W83627DHG/DHG-P/EHF/EHG/F/G/HF/S/SF/THF/UHG/UG
1479		W83637HF
1480		W83667HG/HG-B
1481		W83687THF
1482		W83697HF
1483		W83697UG
1484		NCT6775
1485		NCT6776
1486		NCT6779
1487		NCT6791
1488		NCT6792
1489		NCT6102D/04D/06D
1490		NCT6116D
1491
1492	  This watchdog simply watches your kernel to make sure it doesn't
1493	  freeze, and if it does, it reboots your computer after a certain
1494	  amount of time.
1495
1496	  To compile this driver as a module, choose M here: the
1497	  module will be called w83627hf_wdt.
1498
1499	  Most people will say N.
1500
1501config W83877F_WDT
1502	tristate "W83877F (EMACS) Watchdog Timer"
1503	depends on X86
1504	---help---
1505	  This is the driver for the hardware watchdog on the W83877F chipset
1506	  as used in EMACS PC-104 motherboards (and likely others).  This
1507	  watchdog simply watches your kernel to make sure it doesn't freeze,
1508	  and if it does, it reboots your computer after a certain amount of
1509	  time.
1510
1511	  To compile this driver as a module, choose M here: the
1512	  module will be called w83877f_wdt.
1513
1514	  Most people will say N.
1515
1516config W83977F_WDT
1517	tristate "W83977F (PCM-5335) Watchdog Timer"
1518	depends on X86
1519	---help---
1520	  This is the driver for the hardware watchdog on the W83977F I/O chip
1521	  as used in AAEON's PCM-5335 SBC (and likely others).  This
1522	  watchdog simply watches your kernel to make sure it doesn't freeze,
1523	  and if it does, it reboots your computer after a certain amount of
1524	  time.
1525
1526	  To compile this driver as a module, choose M here: the
1527	  module will be called w83977f_wdt.
1528
1529config MACHZ_WDT
1530	tristate "ZF MachZ Watchdog"
1531	depends on X86
1532	---help---
1533	  If you are using a ZF Micro MachZ processor, say Y here, otherwise
1534	  N.  This is the driver for the watchdog timer built-in on that
1535	  processor using ZF-Logic interface.  This watchdog simply watches
1536	  your kernel to make sure it doesn't freeze, and if it does, it
1537	  reboots your computer after a certain amount of time.
1538
1539	  To compile this driver as a module, choose M here: the
1540	  module will be called machzwd.
1541
1542config SBC_EPX_C3_WATCHDOG
1543	tristate "Winsystems SBC EPX-C3 watchdog"
1544	depends on X86
1545	---help---
1546	  This is the driver for the built-in watchdog timer on the EPX-C3
1547	  Single-board computer made by Winsystems, Inc.
1548
1549	  *Note*: This hardware watchdog is not probeable and thus there
1550	  is no way to know if writing to its IO address will corrupt
1551	  your system or have any real effect.  The only way to be sure
1552	  that this driver does what you want is to make sure you
1553	  are running it on an EPX-C3 from Winsystems with the watchdog
1554	  timer at IO address 0x1ee and 0x1ef.  It will write to both those
1555	  IO ports.  Basically, the assumption is made that if you compile
1556	  this driver into your kernel and/or load it as a module, that you
1557	  know what you are doing and that you are in fact running on an
1558	  EPX-C3 board!
1559
1560	  To compile this driver as a module, choose M here: the
1561	  module will be called sbc_epx_c3.
1562
1563config INTEL_MEI_WDT
1564	tristate "Intel MEI iAMT Watchdog"
1565	depends on INTEL_MEI && X86
1566	select WATCHDOG_CORE
1567	---help---
1568	  A device driver for the Intel MEI iAMT watchdog.
1569
1570	  The Intel AMT Watchdog is an OS Health (Hang/Crash) watchdog.
1571	  Whenever the OS hangs or crashes, iAMT will send an event
1572	  to any subscriber to this event. The watchdog doesn't reset the
1573	  the platform.
1574
1575	  To compile this driver as a module, choose M here:
1576	  the module will be called mei_wdt.
1577
1578config NI903X_WDT
1579	tristate "NI 903x/913x Watchdog"
1580	depends on X86 && ACPI
1581	select WATCHDOG_CORE
1582	---help---
1583	  This is the driver for the watchdog timer on the National Instruments
1584	  903x/913x real-time controllers.
1585
1586	  To compile this driver as a module, choose M here: the module will be
1587	  called ni903x_wdt.
1588
1589config NIC7018_WDT
1590	tristate "NIC7018 Watchdog"
1591	depends on X86 && ACPI
1592	select WATCHDOG_CORE
1593	---help---
1594	  Support for National Instruments NIC7018 Watchdog.
1595
1596	  To compile this driver as a module, choose M here: the module will be
1597	  called nic7018_wdt.
1598
1599# M68K Architecture
1600
1601config M54xx_WATCHDOG
1602	tristate "MCF54xx watchdog support"
1603	depends on M548x
1604	help
1605	  To compile this driver as a module, choose M here: the
1606	  module will be called m54xx_wdt.
1607
1608# MicroBlaze Architecture
1609
1610# MIPS Architecture
1611
1612config ATH79_WDT
1613	tristate "Atheros AR71XX/AR724X/AR913X hardware watchdog"
1614	depends on ATH79 || (ARM && COMPILE_TEST)
1615	help
1616	  Hardware driver for the built-in watchdog timer on the Atheros
1617	  AR71XX/AR724X/AR913X SoCs.
1618
1619config BCM47XX_WDT
1620	tristate "Broadcom BCM47xx Watchdog Timer"
1621	depends on BCM47XX || ARCH_BCM_5301X || COMPILE_TEST
1622	select WATCHDOG_CORE
1623	help
1624	  Hardware driver for the Broadcom BCM47xx Watchdog Timer.
1625
1626config RC32434_WDT
1627	tristate "IDT RC32434 SoC Watchdog Timer"
1628	depends on MIKROTIK_RB532
1629	help
1630	  Hardware driver for the IDT RC32434 SoC built-in
1631	  watchdog timer.
1632
1633	  To compile this driver as a module, choose M here: the
1634	  module will be called rc32434_wdt.
1635
1636config INDYDOG
1637	tristate "Indy/I2 Hardware Watchdog"
1638	depends on SGI_HAS_INDYDOG
1639	help
1640	  Hardware driver for the Indy's/I2's watchdog. This is a
1641	  watchdog timer that will reboot the machine after a 60 second
1642	  timer expired and no process has written to /dev/watchdog during
1643	  that time.
1644
1645config JZ4740_WDT
1646	tristate "Ingenic jz4740 SoC hardware watchdog"
1647	depends on MIPS
1648	depends on COMMON_CLK
1649	select WATCHDOG_CORE
1650	select MFD_SYSCON
1651	help
1652	  Hardware driver for the built-in watchdog timer on Ingenic jz4740 SoCs.
1653
1654config WDT_MTX1
1655	tristate "MTX-1 Hardware Watchdog"
1656	depends on MIPS_MTX1 || (MIPS && COMPILE_TEST)
1657	help
1658	  Hardware driver for the MTX-1 boards. This is a watchdog timer that
1659	  will reboot the machine after a 100 seconds timer expired.
1660
1661config PNX833X_WDT
1662	tristate "PNX833x Hardware Watchdog"
1663	depends on SOC_PNX8335
1664	depends on BROKEN
1665	help
1666	  Hardware driver for the PNX833x's watchdog. This is a
1667	  watchdog timer that will reboot the machine after a programmable
1668	  timer has expired and no process has written to /dev/watchdog during
1669	  that time.
1670
1671config SIBYTE_WDOG
1672	tristate "Sibyte SoC hardware watchdog"
1673	depends on CPU_SB1 || (MIPS && COMPILE_TEST)
1674	help
1675	  Watchdog driver for the built in watchdog hardware in Sibyte
1676	  SoC processors.  There are apparently two watchdog timers
1677	  on such processors; this driver supports only the first one,
1678	  because currently Linux only supports exporting one watchdog
1679	  to userspace.
1680
1681	  To compile this driver as a loadable module, choose M here.
1682	  The module will be called sb_wdog.
1683
1684config AR7_WDT
1685	tristate "TI AR7 Watchdog Timer"
1686	depends on AR7 || (MIPS && COMPILE_TEST)
1687	help
1688	  Hardware driver for the TI AR7 Watchdog Timer.
1689
1690config TXX9_WDT
1691	tristate "Toshiba TXx9 Watchdog Timer"
1692	depends on CPU_TX39XX || CPU_TX49XX || (MIPS && COMPILE_TEST)
1693	select WATCHDOG_CORE
1694	help
1695	  Hardware driver for the built-in watchdog timer on TXx9 MIPS SoCs.
1696
1697config OCTEON_WDT
1698	tristate "Cavium OCTEON SOC family Watchdog Timer"
1699	depends on CAVIUM_OCTEON_SOC
1700	default y
1701	select WATCHDOG_CORE
1702	select EXPORT_UASM if OCTEON_WDT = m
1703	help
1704	  Hardware driver for OCTEON's on chip watchdog timer.
1705	  Enables the watchdog for all cores running Linux. It
1706	  installs a NMI handler and pokes the watchdog based on an
1707	  interrupt.  On first expiration of the watchdog, the
1708	  interrupt handler pokes it.  The second expiration causes an
1709	  NMI that prints a message. The third expiration causes a
1710	  global soft reset.
1711
1712	  When userspace has /dev/watchdog open, no poking is done
1713	  from the first interrupt, it is then only poked when the
1714	  device is written.
1715
1716config BCM63XX_WDT
1717	tristate "Broadcom BCM63xx hardware watchdog"
1718	depends on BCM63XX
1719	help
1720	  Watchdog driver for the built in watchdog hardware in Broadcom
1721	  BCM63xx SoC.
1722
1723	  To compile this driver as a loadable module, choose M here.
1724	  The module will be called bcm63xx_wdt.
1725
1726config BCM2835_WDT
1727	tristate "Broadcom BCM2835 hardware watchdog"
1728	depends on ARCH_BCM2835 || (OF && COMPILE_TEST)
1729	select WATCHDOG_CORE
1730	help
1731	  Watchdog driver for the built in watchdog hardware in Broadcom
1732	  BCM2835 SoC.
1733
1734	  To compile this driver as a loadable module, choose M here.
1735	  The module will be called bcm2835_wdt.
1736
1737config BCM_KONA_WDT
1738	tristate "BCM Kona Watchdog"
1739	depends on ARCH_BCM_MOBILE || COMPILE_TEST
1740	select WATCHDOG_CORE
1741	help
1742	  Support for the watchdog timer on the following Broadcom BCM281xx
1743	  family, which includes BCM11130, BCM11140, BCM11351, BCM28145 and
1744	  BCM28155 variants.
1745
1746	  Say 'Y' or 'M' here to enable the driver. The module will be called
1747	  bcm_kona_wdt.
1748
1749config BCM_KONA_WDT_DEBUG
1750	bool "DEBUGFS support for BCM Kona Watchdog"
1751	depends on BCM_KONA_WDT
1752	help
1753	  If enabled, adds /sys/kernel/debug/bcm_kona_wdt/info which provides
1754	  access to the driver's internal data structures as well as watchdog
1755	  timer hardware registres.
1756
1757	  If in doubt, say 'N'.
1758
1759config BCM7038_WDT
1760	tristate "BCM7038 Watchdog"
1761	select WATCHDOG_CORE
1762	depends on HAS_IOMEM
1763	depends on ARCH_BRCMSTB || BMIPS_GENERIC || COMPILE_TEST
1764	help
1765	 Watchdog driver for the built-in hardware in Broadcom 7038 and
1766	 later SoCs used in set-top boxes.  BCM7038 was made public
1767	 during the 2004 CES, and since then, many Broadcom chips use this
1768	 watchdog block, including some cable modem chips.
1769
1770config IMGPDC_WDT
1771	tristate "Imagination Technologies PDC Watchdog Timer"
1772	depends on HAS_IOMEM
1773	depends on MIPS || COMPILE_TEST
1774	select WATCHDOG_CORE
1775	help
1776	  Driver for Imagination Technologies PowerDown Controller
1777	  Watchdog Timer.
1778
1779	  To compile this driver as a loadable module, choose M here.
1780	  The module will be called imgpdc_wdt.
1781
1782config LANTIQ_WDT
1783	tristate "Lantiq SoC watchdog"
1784	depends on LANTIQ
1785	select WATCHDOG_CORE
1786	help
1787	  Hardware driver for the Lantiq SoC Watchdog Timer.
1788
1789config LOONGSON1_WDT
1790	tristate "Loongson1 SoC hardware watchdog"
1791	depends on MACH_LOONGSON32
1792	select WATCHDOG_CORE
1793	help
1794	  Hardware driver for the Loongson1 SoC Watchdog Timer.
1795
1796config RALINK_WDT
1797	tristate "Ralink SoC watchdog"
1798	select WATCHDOG_CORE
1799	depends on RALINK
1800	help
1801	  Hardware driver for the Ralink SoC Watchdog Timer.
1802
1803config MT7621_WDT
1804	tristate "Mediatek SoC watchdog"
1805	select WATCHDOG_CORE
1806	depends on SOC_MT7620 || SOC_MT7621
1807	help
1808	  Hardware driver for the Mediatek/Ralink MT7621/8 SoC Watchdog Timer.
1809
1810config PIC32_WDT
1811	tristate "Microchip PIC32 hardware watchdog"
1812	select WATCHDOG_CORE
1813	depends on MACH_PIC32 || (MIPS && COMPILE_TEST)
1814	help
1815	  Watchdog driver for the built in watchdog hardware in a PIC32.
1816
1817	  Configuration bits must be set appropriately for the watchdog to be
1818	  controlled by this driver.
1819
1820	  To compile this driver as a loadable module, choose M here.
1821	  The module will be called pic32-wdt.
1822
1823config PIC32_DMT
1824	tristate "Microchip PIC32 Deadman Timer"
1825	select WATCHDOG_CORE
1826	depends on MACH_PIC32 || (MIPS && COMPILE_TEST)
1827	help
1828	  Watchdog driver for PIC32 instruction fetch counting timer. This specific
1829	  timer is typically be used in misson critical and safety critical
1830	  applications, where any single failure of the software functionality
1831	  and sequencing must be detected.
1832
1833	  To compile this driver as a loadable module, choose M here.
1834	  The module will be called pic32-dmt.
1835
1836# PARISC Architecture
1837
1838# POWERPC Architecture
1839
1840config GEF_WDT
1841	tristate "GE Watchdog Timer"
1842	depends on GE_FPGA
1843	---help---
1844	  Watchdog timer found in a number of GE single board computers.
1845
1846config MPC5200_WDT
1847	bool "MPC52xx Watchdog Timer"
1848	depends on PPC_MPC52xx || COMPILE_TEST
1849	help
1850	  Use General Purpose Timer (GPT) 0 on the MPC5200 as Watchdog.
1851
1852config 8xxx_WDT
1853	tristate "MPC8xxx Platform Watchdog Timer"
1854	depends on PPC_8xx || PPC_83xx || PPC_86xx || PPC_MPC512x
1855	select WATCHDOG_CORE
1856	help
1857	  This driver is for a SoC level watchdog that exists on some
1858	  Freescale PowerPC processors. So far this driver supports:
1859	  - MPC8xx watchdogs
1860	  - MPC83xx watchdogs
1861	  - MPC86xx watchdogs
1862
1863	  For BookE processors (MPC85xx) use the BOOKE_WDT driver instead.
1864
1865config MV64X60_WDT
1866	tristate "MV64X60 (Marvell Discovery) Watchdog Timer"
1867	depends on MV64X60 || COMPILE_TEST
1868
1869config PIKA_WDT
1870	tristate "PIKA FPGA Watchdog"
1871	depends on WARP || (PPC64 && COMPILE_TEST)
1872	default y
1873	help
1874	  This enables the watchdog in the PIKA FPGA. Currently used on
1875	  the Warp platform.
1876
1877config BOOKE_WDT
1878	tristate "PowerPC Book-E Watchdog Timer"
1879	depends on BOOKE || 4xx
1880	select WATCHDOG_CORE
1881	---help---
1882	  Watchdog driver for PowerPC Book-E chips, such as the Freescale
1883	  MPC85xx SOCs and the IBM PowerPC 440.
1884
1885	  Please see Documentation/watchdog/watchdog-api.rst for
1886	  more information.
1887
1888config BOOKE_WDT_DEFAULT_TIMEOUT
1889	int "PowerPC Book-E Watchdog Timer Default Timeout"
1890	depends on BOOKE_WDT
1891	default 38 if PPC_FSL_BOOK3E
1892	range 0 63 if PPC_FSL_BOOK3E
1893	default 3 if !PPC_FSL_BOOK3E
1894	range 0 3 if !PPC_FSL_BOOK3E
1895	help
1896	  Select the default watchdog timer period to be used by the PowerPC
1897	  Book-E watchdog driver.  A watchdog "event" occurs when the bit
1898	  position represented by this number transitions from zero to one.
1899
1900	  For Freescale Book-E processors, this is a number between 0 and 63.
1901	  For other Book-E processors, this is a number between 0 and 3.
1902
1903	  The value can be overridden by the wdt_period command-line parameter.
1904
1905config MEN_A21_WDT
1906	tristate "MEN A21 VME CPU Carrier Board Watchdog Timer"
1907	select WATCHDOG_CORE
1908	depends on GPIOLIB || COMPILE_TEST
1909	help
1910	  Watchdog driver for MEN A21 VMEbus CPU Carrier Boards.
1911
1912	  The driver can also be built as a module. If so, the module will be
1913	  called mena21_wdt.
1914
1915	  If unsure select N here.
1916
1917# PPC64 Architecture
1918
1919config WATCHDOG_RTAS
1920	tristate "RTAS watchdog"
1921	depends on PPC_RTAS
1922	help
1923	  This driver adds watchdog support for the RTAS watchdog.
1924
1925	  To compile this driver as a module, choose M here. The module
1926	  will be called wdrtas.
1927
1928# S390 Architecture
1929
1930config DIAG288_WATCHDOG
1931	tristate "System z diag288 Watchdog"
1932	depends on S390
1933	select WATCHDOG_CORE
1934	help
1935	  IBM s/390 and zSeries machines running under z/VM 5.1 or later
1936	  provide a virtual watchdog timer to their guest that cause a
1937	  user define Control Program command to be executed after a
1938	  timeout.
1939	  LPAR provides a very similar interface. This driver handles
1940	  both.
1941
1942	  To compile this driver as a module, choose M here. The module
1943	  will be called diag288_wdt.
1944
1945# SUPERH (sh + sh64) Architecture
1946
1947config SH_WDT
1948	tristate "SuperH Watchdog"
1949	depends on SUPERH && (CPU_SH3 || CPU_SH4 || COMPILE_TEST)
1950	select WATCHDOG_CORE
1951	help
1952	  This driver adds watchdog support for the integrated watchdog in the
1953	  SuperH processors. If you have one of these processors and wish
1954	  to have watchdog support enabled, say Y, otherwise say N.
1955
1956	  As a side note, saying Y here will automatically boost HZ to 1000
1957	  so that the timer has a chance to clear the overflow counter. On
1958	  slower systems (such as the SH-2 and SH-3) this will likely yield
1959	  some performance issues. As such, the WDT should be avoided here
1960	  unless it is absolutely necessary.
1961
1962	  To compile this driver as a module, choose M here: the
1963	  module will be called shwdt.
1964
1965# SPARC Architecture
1966
1967# SPARC64 Architecture
1968
1969config WATCHDOG_CP1XXX
1970	tristate "CP1XXX Hardware Watchdog support"
1971	depends on SPARC64 && PCI
1972	---help---
1973	  This is the driver for the hardware watchdog timers present on
1974	  Sun Microsystems CompactPCI models CP1400 and CP1500.
1975
1976	  To compile this driver as a module, choose M here: the
1977	  module will be called cpwatchdog.
1978
1979	  If you do not have a CompactPCI model CP1400 or CP1500, or
1980	  another UltraSPARC-IIi-cEngine boardset with hardware watchdog,
1981	  you should say N to this option.
1982
1983config WATCHDOG_RIO
1984	tristate "RIO Hardware Watchdog support"
1985	depends on SPARC64 && PCI
1986	help
1987	  Say Y here to support the hardware watchdog capability on Sun RIO
1988	  machines.  The watchdog timeout period is normally one minute but
1989	  can be changed with a boot-time parameter.
1990
1991config WATCHDOG_SUN4V
1992	tristate "Sun4v Watchdog support"
1993	select WATCHDOG_CORE
1994	depends on SPARC64
1995	help
1996	  Say Y here to support the hypervisor watchdog capability embedded
1997	  in the SPARC sun4v architecture.
1998
1999	  To compile this driver as a module, choose M here. The module will
2000	  be called sun4v_wdt.
2001
2002# XTENSA Architecture
2003
2004# Xen Architecture
2005
2006config XEN_WDT
2007	tristate "Xen Watchdog support"
2008	depends on XEN
2009	select WATCHDOG_CORE
2010	help
2011	  Say Y here to support the hypervisor watchdog capability provided
2012	  by Xen 4.0 and newer.  The watchdog timeout period is normally one
2013	  minute but can be changed with a boot-time parameter.
2014
2015config UML_WATCHDOG
2016	tristate "UML watchdog"
2017	depends on UML || COMPILE_TEST
2018
2019#
2020# ISA-based Watchdog Cards
2021#
2022
2023comment "ISA-based Watchdog Cards"
2024	depends on ISA
2025
2026config PCWATCHDOG
2027	tristate "Berkshire Products ISA-PC Watchdog"
2028	depends on ISA
2029	---help---
2030	  This is the driver for the Berkshire Products ISA-PC Watchdog card.
2031	  This card simply watches your kernel to make sure it doesn't freeze,
2032	  and if it does, it reboots your computer after a certain amount of
2033	  time. This driver is like the WDT501 driver but for different
2034	  hardware. Please read <file:Documentation/watchdog/pcwd-watchdog.rst>. The PC
2035	  watchdog cards can be ordered from <http://www.berkprod.com/>.
2036
2037	  To compile this driver as a module, choose M here: the
2038	  module will be called pcwd.
2039
2040	  Most people will say N.
2041
2042config MIXCOMWD
2043	tristate "Mixcom Watchdog"
2044	depends on ISA
2045	---help---
2046	  This is a driver for the Mixcom hardware watchdog cards.  This
2047	  watchdog simply watches your kernel to make sure it doesn't freeze,
2048	  and if it does, it reboots your computer after a certain amount of
2049	  time.
2050
2051	  To compile this driver as a module, choose M here: the
2052	  module will be called mixcomwd.
2053
2054	  Most people will say N.
2055
2056config WDT
2057	tristate "WDT Watchdog timer"
2058	depends on ISA
2059	---help---
2060	  If you have a WDT500P or WDT501P watchdog board, say Y here,
2061	  otherwise N. It is not possible to probe for this board, which means
2062	  that you have to inform the kernel about the IO port and IRQ that
2063	  is needed (you can do this via the io and irq parameters)
2064
2065	  To compile this driver as a module, choose M here: the
2066	  module will be called wdt.
2067
2068#
2069# PCI-based Watchdog Cards
2070#
2071
2072comment "PCI-based Watchdog Cards"
2073	depends on PCI
2074
2075config PCIPCWATCHDOG
2076	tristate "Berkshire Products PCI-PC Watchdog"
2077	depends on PCI
2078	---help---
2079	  This is the driver for the Berkshire Products PCI-PC Watchdog card.
2080	  This card simply watches your kernel to make sure it doesn't freeze,
2081	  and if it does, it reboots your computer after a certain amount of
2082	  time. The card can also monitor the internal temperature of the PC.
2083	  More info is available at <http://www.berkprod.com/pci_pc_watchdog.htm>.
2084
2085	  To compile this driver as a module, choose M here: the
2086	  module will be called pcwd_pci.
2087
2088	  Most people will say N.
2089
2090config WDTPCI
2091	tristate "PCI-WDT500/501 Watchdog timer"
2092	depends on PCI
2093	---help---
2094	  If you have a PCI-WDT500/501 watchdog board, say Y here, otherwise N.
2095
2096	  If you have a PCI-WDT501 watchdog board then you can enable the
2097	  temperature sensor by setting the type parameter to 501.
2098
2099	  If you want to enable the Fan Tachometer on the PCI-WDT501, then you
2100	  can do this via the tachometer parameter. Only do this if you have a
2101	  fan tachometer actually set up.
2102
2103	  To compile this driver as a module, choose M here: the
2104	  module will be called wdt_pci.
2105
2106#
2107# USB-based Watchdog Cards
2108#
2109
2110comment "USB-based Watchdog Cards"
2111	depends on USB
2112
2113config USBPCWATCHDOG
2114	tristate "Berkshire Products USB-PC Watchdog"
2115	depends on USB
2116	---help---
2117	  This is the driver for the Berkshire Products USB-PC Watchdog card.
2118	  This card simply watches your kernel to make sure it doesn't freeze,
2119	  and if it does, it reboots your computer after a certain amount of
2120	  time. The card can also monitor the internal temperature of the PC.
2121	  More info is available at <http://www.berkprod.com/usb_pc_watchdog.htm>.
2122
2123	  To compile this driver as a module, choose M here: the
2124	  module will be called pcwd_usb.
2125
2126	  Most people will say N.
2127
2128endif # WATCHDOG
2129