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