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