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