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