xref: /openbmc/linux/drivers/watchdog/Kconfig (revision 25eb650a690b95cb0e2cf0c3b03f4900a59e0135)
1#
2# Watchdog device configuration
3#
4
5menuconfig WATCHDOG
6	bool "Watchdog Timer Support"
7	---help---
8	  If you say Y here (and to one of the following options) and create a
9	  character special file /dev/watchdog with major number 10 and minor
10	  number 130 using mknod ("man mknod"), you will get a watchdog, i.e.:
11	  subsequently opening the file and then failing to write to it for
12	  longer than 1 minute will result in rebooting the machine. This
13	  could be useful for a networked machine that needs to come back
14	  on-line as fast as possible after a lock-up. There's both a watchdog
15	  implementation entirely in software (which can sometimes fail to
16	  reboot the machine) and a driver for hardware watchdog boards, which
17	  are more robust and can also keep track of the temperature inside
18	  your computer. For details, read
19	  <file:Documentation/watchdog/watchdog-api.txt> in the kernel source.
20
21	  The watchdog is usually used together with the watchdog daemon
22	  which is available from
23	  <ftp://ibiblio.org/pub/Linux/system/daemons/watchdog/>. This daemon can
24	  also monitor NFS connections and can reboot the machine when the process
25	  table is full.
26
27	  If unsure, say N.
28
29if WATCHDOG
30
31config WATCHDOG_NOWAYOUT
32	bool "Disable watchdog shutdown on close"
33	help
34	  The default watchdog behaviour (which you get if you say N here) is
35	  to stop the timer if the process managing it closes the file
36	  /dev/watchdog. It's always remotely possible that this process might
37	  get killed. If you say Y here, the watchdog cannot be stopped once
38	  it has been started.
39
40#
41# General Watchdog drivers
42#
43
44comment "Watchdog Device Drivers"
45
46# Architecture Independent
47
48config SOFT_WATCHDOG
49	tristate "Software watchdog"
50	help
51	  A software monitoring watchdog. This will fail to reboot your system
52	  from some situations that the hardware watchdog will recover
53	  from. Equally it's a lot cheaper to install.
54
55	  To compile this driver as a module, choose M here: the
56	  module will be called softdog.
57
58config WM831X_WATCHDOG
59	tristate "WM831x watchdog"
60	depends on MFD_WM831X
61	help
62	  Support for the watchdog in the WM831x AudioPlus PMICs.  When
63	  the watchdog triggers the system will be reset.
64
65config WM8350_WATCHDOG
66	tristate "WM8350 watchdog"
67	depends on MFD_WM8350
68	help
69	  Support for the watchdog in the WM8350 AudioPlus PMIC.  When
70	  the watchdog triggers the system will be reset.
71
72# ALPHA Architecture
73
74# ARM Architecture
75
76config ARM_SP805_WATCHDOG
77	tristate "ARM SP805 Watchdog"
78	depends on ARM_AMBA
79	help
80	  ARM Primecell SP805 Watchdog timer. This will reboot your system when
81	  the timeout is reached.
82
83config AT91RM9200_WATCHDOG
84	tristate "AT91RM9200 watchdog"
85	depends on ARCH_AT91RM9200
86	help
87	  Watchdog timer embedded into AT91RM9200 chips. This will reboot your
88	  system when the timeout is reached.
89
90config AT91SAM9X_WATCHDOG
91	tristate "AT91SAM9X / AT91CAP9 watchdog"
92	depends on ARCH_AT91 && !ARCH_AT91RM9200
93	help
94	  Watchdog timer embedded into AT91SAM9X and AT91CAP9 chips. This will
95	  reboot your system when the timeout is reached.
96
97config 21285_WATCHDOG
98	tristate "DC21285 watchdog"
99	depends on FOOTBRIDGE
100	help
101	  The Intel Footbridge chip contains a built-in watchdog circuit. Say Y
102	  here if you wish to use this. Alternatively say M to compile the
103	  driver as a module, which will be called wdt285.
104
105	  This driver does not work on all machines. In particular, early CATS
106	  boards have hardware problems that will cause the machine to simply
107	  lock up if the watchdog fires.
108
109	  "If in doubt, leave it out" - say N.
110
111config 977_WATCHDOG
112	tristate "NetWinder WB83C977 watchdog"
113	depends on FOOTBRIDGE && ARCH_NETWINDER
114	help
115	  Say Y here to include support for the WB977 watchdog included in
116	  NetWinder machines. Alternatively say M to compile the driver as
117	  a module, which will be called wdt977.
118
119	  Not sure? It's safe to say N.
120
121config IXP2000_WATCHDOG
122	tristate "IXP2000 Watchdog"
123	depends on ARCH_IXP2000
124	help
125	  Say Y here if to include support for the watchdog timer
126	  in the Intel IXP2000(2400, 2800, 2850) network processors.
127	  This driver can be built as a module by choosing M. The module
128	  will be called ixp2000_wdt.
129
130	  Say N if you are unsure.
131
132config IXP4XX_WATCHDOG
133	tristate "IXP4xx Watchdog"
134	depends on ARCH_IXP4XX
135	help
136	  Say Y here if to include support for the watchdog timer
137	  in the Intel IXP4xx network processors. This driver can
138	  be built as a module by choosing M. The module will
139	  be called ixp4xx_wdt.
140
141	  Note: The internal IXP4xx watchdog does a soft CPU reset
142	  which doesn't reset any peripherals. There are circumstances
143	  where the watchdog will fail to reset the board correctly
144	  (e.g., if the boot ROM is in an unreadable state).
145
146	  Say N if you are unsure.
147
148config KS8695_WATCHDOG
149	tristate "KS8695 watchdog"
150	depends on ARCH_KS8695
151	help
152	  Watchdog timer embedded into KS8695 processor. This will reboot your
153	  system when the timeout is reached.
154
155config HAVE_S3C2410_WATCHDOG
156	bool
157	help
158	  This will include watchdog timer support for Samsung SoCs. If
159	  you want to include watchdog support for any machine, kindly
160	  select this in the respective mach-XXXX/Kconfig file.
161
162config S3C2410_WATCHDOG
163	tristate "S3C2410 Watchdog"
164	depends on ARCH_S3C2410 || HAVE_S3C2410_WATCHDOG
165	help
166	  Watchdog timer block in the Samsung SoCs. This will reboot
167	  the system when the timer expires with the watchdog enabled.
168
169	  The driver is limited by the speed of the system's PCLK
170	  signal, so with reasonably fast systems (PCLK around 50-66MHz)
171	  then watchdog intervals of over approximately 20seconds are
172	  unavailable.
173
174	  The driver can be built as a module by choosing M, and will
175	  be called s3c2410_wdt
176
177config SA1100_WATCHDOG
178	tristate "SA1100/PXA2xx watchdog"
179	depends on ARCH_SA1100 || ARCH_PXA
180	help
181	  Watchdog timer embedded into SA11x0 and PXA2xx chips. This will
182	  reboot your system when timeout is reached.
183
184	  NOTE: once enabled, this timer cannot be disabled.
185
186	  To compile this driver as a module, choose M here: the
187	  module will be called sa1100_wdt.
188
189config MPCORE_WATCHDOG
190	tristate "MPcore watchdog"
191	depends on HAVE_ARM_TWD
192	help
193	  Watchdog timer embedded into the MPcore system.
194
195	  To compile this driver as a module, choose M here: the
196	  module will be called mpcore_wdt.
197
198config EP93XX_WATCHDOG
199	tristate "EP93xx Watchdog"
200	depends on ARCH_EP93XX
201	help
202	  Say Y here if to include support for the watchdog timer
203	  embedded in the Cirrus Logic EP93xx family of devices.
204
205	  To compile this driver as a module, choose M here: the
206	  module will be called ep93xx_wdt.
207
208config OMAP_WATCHDOG
209	tristate "OMAP Watchdog"
210	depends on ARCH_OMAP16XX || ARCH_OMAP2PLUS
211	help
212	  Support for TI OMAP1610/OMAP1710/OMAP2420/OMAP3430/OMAP4430 watchdog.  Say 'Y'
213	  here to enable the OMAP1610/OMAP1710/OMAP2420/OMAP3430/OMAP4430 watchdog timer.
214
215config PNX4008_WATCHDOG
216	tristate "PNX4008 and LPC32XX Watchdog"
217	depends on ARCH_PNX4008 || ARCH_LPC32XX
218	help
219	  Say Y here if to include support for the watchdog timer
220	  in the PNX4008 or LPC32XX processor.
221	  This driver can be built as a module by choosing M. The module
222	  will be called pnx4008_wdt.
223
224	  Say N if you are unsure.
225
226config IOP_WATCHDOG
227	tristate "IOP Watchdog"
228	depends on PLAT_IOP
229	select WATCHDOG_NOWAYOUT if (ARCH_IOP32X || ARCH_IOP33X)
230	help
231	  Say Y here if to include support for the watchdog timer
232	  in the Intel IOP3XX & IOP13XX I/O Processors.  This driver can
233	  be built as a module by choosing M. The module will
234	  be called iop_wdt.
235
236	  Note: The IOP13XX watchdog does an Internal Bus Reset which will
237	  affect both cores and the peripherals of the IOP.  The ATU-X
238	  and/or ATUe configuration registers will remain intact, but if
239	  operating as an Root Complex and/or Central Resource, the PCI-X
240	  and/or PCIe busses will also be reset.  THIS IS A VERY BIG HAMMER.
241
242config DAVINCI_WATCHDOG
243	tristate "DaVinci watchdog"
244	depends on ARCH_DAVINCI
245	help
246	  Say Y here if to include support for the watchdog timer
247	  in the DaVinci DM644x/DM646x processors.
248	  To compile this driver as a module, choose M here: the
249	  module will be called davinci_wdt.
250
251	  NOTE: once enabled, this timer cannot be disabled.
252	  Say N if you are unsure.
253
254config ORION_WATCHDOG
255	tristate "Orion watchdog"
256	depends on ARCH_ORION5X || ARCH_KIRKWOOD
257	help
258	  Say Y here if to include support for the watchdog timer
259	  in the Marvell Orion5x and Kirkwood ARM SoCs.
260	  To compile this driver as a module, choose M here: the
261	  module will be called orion_wdt.
262
263config COH901327_WATCHDOG
264	bool "ST-Ericsson COH 901 327 watchdog"
265	depends on ARCH_U300
266	default y if MACH_U300
267	help
268	  Say Y here to include Watchdog timer support for the
269	  watchdog embedded into the ST-Ericsson U300 series platforms.
270	  This watchdog is used to reset the system and thus cannot be
271	  compiled as a module.
272
273config TWL4030_WATCHDOG
274	tristate "TWL4030 Watchdog"
275	depends on TWL4030_CORE
276	help
277	  Support for TI TWL4030 watchdog.  Say 'Y' here to enable the
278	  watchdog timer support for TWL4030 chips.
279
280config STMP3XXX_WATCHDOG
281	tristate "Freescale STMP3XXX watchdog"
282	depends on ARCH_STMP3XXX
283	help
284	  Say Y here if to include support for the watchdog timer
285	  for the Sigmatel STMP37XX/378X SoC.
286	  To compile this driver as a module, choose M here: the
287	  module will be called stmp3xxx_wdt.
288
289config NUC900_WATCHDOG
290	tristate "Nuvoton NUC900 watchdog"
291	depends on ARCH_W90X900
292	help
293	  Say Y here if to include support for the watchdog timer
294	  for the Nuvoton NUC900 series SoCs.
295	  To compile this driver as a module, choose M here: the
296	  module will be called nuc900_wdt.
297
298config ADX_WATCHDOG
299	tristate "Avionic Design Xanthos watchdog"
300	depends on ARCH_PXA_ADX
301	help
302	  Say Y here if you want support for the watchdog timer on Avionic
303	  Design Xanthos boards.
304
305config TS72XX_WATCHDOG
306	tristate "TS-72XX SBC Watchdog"
307	depends on MACH_TS72XX
308	help
309	  Technologic Systems TS-7200, TS-7250 and TS-7260 boards have
310	  watchdog timer implemented in a external CPLD chip. Say Y here
311	  if you want to support for the watchdog timer on TS-72XX boards.
312
313	  To compile this driver as a module, choose M here: the
314	  module will be called ts72xx_wdt.
315
316config MAX63XX_WATCHDOG
317	tristate "Max63xx watchdog"
318	depends on ARM && HAS_IOMEM
319	help
320	  Support for memory mapped max63{69,70,71,72,73,74} watchdog timer.
321
322config IMX2_WDT
323	tristate "IMX2+ Watchdog"
324	depends on ARCH_MX2 || ARCH_MX25 || ARCH_MX3 || ARCH_MX5
325	help
326	  This is the driver for the hardware watchdog
327	  on the Freescale IMX2 and later processors.
328	  If you have one of these processors and wish to have
329	  watchdog support enabled, say Y, otherwise say N.
330
331	  To compile this driver as a module, choose M here: the
332	  module will be called imx2_wdt.
333
334# AVR32 Architecture
335
336config AT32AP700X_WDT
337	tristate "AT32AP700x watchdog"
338	depends on CPU_AT32AP700X
339	help
340	  Watchdog timer embedded into AT32AP700x devices. This will reboot
341	  your system when the timeout is reached.
342
343# BLACKFIN Architecture
344
345config BFIN_WDT
346	tristate "Blackfin On-Chip Watchdog Timer"
347	depends on BLACKFIN
348	---help---
349	  If you say yes here you will get support for the Blackfin On-Chip
350	  Watchdog Timer. If you have one of these processors and wish to
351	  have watchdog support enabled, say Y, otherwise say N.
352
353	  To compile this driver as a module, choose M here: the
354	  module will be called bfin_wdt.
355
356# CRIS Architecture
357
358# FRV Architecture
359
360# H8300 Architecture
361
362# X86 (i386 + ia64 + x86_64) Architecture
363
364config ACQUIRE_WDT
365	tristate "Acquire SBC Watchdog Timer"
366	depends on X86
367	---help---
368	  This is the driver for the hardware watchdog on Single Board
369	  Computers produced by Acquire Inc (and others). This watchdog
370	  simply watches your kernel to make sure it doesn't freeze, and if
371	  it does, it reboots your computer after a certain amount of time.
372
373	  To compile this driver as a module, choose M here: the
374	  module will be called acquirewdt.
375
376	  Most people will say N.
377
378config ADVANTECH_WDT
379	tristate "Advantech SBC Watchdog Timer"
380	depends on X86
381	help
382	  If you are configuring a Linux kernel for the Advantech single-board
383	  computer, say `Y' here to support its built-in watchdog timer
384	  feature. More information can be found at
385	  <http://www.advantech.com.tw/products/>
386
387config ALIM1535_WDT
388	tristate "ALi M1535 PMU Watchdog Timer"
389	depends on X86 && PCI
390	---help---
391	  This is the driver for the hardware watchdog on the ALi M1535 PMU.
392
393	  To compile this driver as a module, choose M here: the
394	  module will be called alim1535_wdt.
395
396	  Most people will say N.
397
398config ALIM7101_WDT
399	tristate "ALi M7101 PMU Computer Watchdog"
400	depends on PCI
401	help
402	  This is the driver for the hardware watchdog on the ALi M7101 PMU
403	  as used in the x86 Cobalt servers and also found in some
404	  SPARC Netra servers too.
405
406	  To compile this driver as a module, choose M here: the
407	  module will be called alim7101_wdt.
408
409	  Most people will say N.
410
411config F71808E_WDT
412	tristate "Fintek F71808E, F71862FG, F71869, F71882FG and F71889FG Watchdog"
413	depends on X86 && EXPERIMENTAL
414	help
415	  This is the driver for the hardware watchdog on the Fintek
416	  F71808E, F71862FG, F71869, F71882FG and F71889FG Super I/O controllers.
417
418	  You can compile this driver directly into the kernel, or use
419	  it as a module.  The module will be called f71808e_wdt.
420
421config SP5100_TCO
422	tristate "AMD/ATI SP5100 TCO Timer/Watchdog"
423	depends on X86 && PCI
424	---help---
425	  Hardware watchdog driver for the AMD/ATI SP5100 chipset. The TCO
426	  (Total Cost of Ownership) timer is a watchdog timer that will reboot
427	  the machine after its expiration. The expiration time can be
428	  configured with the "heartbeat" parameter.
429
430	  To compile this driver as a module, choose M here: the
431	  module will be called sp5100_tco.
432
433config GEODE_WDT
434	tristate "AMD Geode CS5535/CS5536 Watchdog"
435	depends on CS5535_MFGPT
436	help
437	  This driver enables a watchdog capability built into the
438	  CS5535/CS5536 companion chips for the AMD Geode GX and LX
439	  processors.  This watchdog watches your kernel to make sure
440	  it doesn't freeze, and if it does, it reboots your computer after
441	  a certain amount of time.
442
443	  You can compile this driver directly into the kernel, or use
444	  it as a module.  The module will be called geodewdt.
445
446config SC520_WDT
447	tristate "AMD Elan SC520 processor Watchdog"
448	depends on X86
449	help
450	  This is the driver for the hardware watchdog built in to the
451	  AMD "Elan" SC520 microcomputer commonly used in embedded systems.
452	  This watchdog simply watches your kernel to make sure it doesn't
453	  freeze, and if it does, it reboots your computer after a certain
454	  amount of time.
455
456	  You can compile this driver directly into the kernel, or use
457	  it as a module.  The module will be called sc520_wdt.
458
459config SBC_FITPC2_WATCHDOG
460	tristate "Compulab SBC-FITPC2 watchdog"
461	depends on X86
462	---help---
463	  This is the driver for the built-in watchdog timer on the fit-PC2,
464	  fit-PC2i, CM-iAM single-board computers made by Compulab.
465
466	  It`s possible to enable watchdog timer either from BIOS (F2) or from booted Linux.
467	  When "Watchdog Timer Value" enabled one can set 31-255 s operational range.
468
469	  Entering BIOS setup temporary disables watchdog operation regardless to current state,
470	  so system will not be restarted while user in BIOS setup.
471
472	  Once watchdog was enabled the system will be restarted every
473	  "Watchdog Timer Value" period, so to prevent it user can restart or
474	  disable the watchdog.
475
476	  To compile this driver as a module, choose M here: the
477	  module will be called sbc_fitpc2_wdt.
478
479	  Most people will say N.
480
481config EUROTECH_WDT
482	tristate "Eurotech CPU-1220/1410 Watchdog Timer"
483	depends on X86
484	help
485	  Enable support for the watchdog timer on the Eurotech CPU-1220 and
486	  CPU-1410 cards.  These are PC/104 SBCs. Spec sheets and product
487	  information are at <http://www.eurotech.it/>.
488
489config IB700_WDT
490	tristate "IB700 SBC Watchdog Timer"
491	depends on X86
492	---help---
493	  This is the driver for the hardware watchdog on the IB700 Single
494	  Board Computer produced by TMC Technology (www.tmc-uk.com). This watchdog
495	  simply watches your kernel to make sure it doesn't freeze, and if
496	  it does, it reboots your computer after a certain amount of time.
497
498	  This driver is like the WDT501 driver but for slightly different hardware.
499
500	  To compile this driver as a module, choose M here: the
501	  module will be called ib700wdt.
502
503	  Most people will say N.
504
505config IBMASR
506	tristate "IBM Automatic Server Restart"
507	depends on X86
508	help
509	  This is the driver for the IBM Automatic Server Restart watchdog
510	  timer built-in into some eServer xSeries machines.
511
512	  To compile this driver as a module, choose M here: the
513	  module will be called ibmasr.
514
515config WAFER_WDT
516	tristate "ICP Single Board Computer Watchdog Timer"
517	depends on X86
518	help
519	  This is a driver for the hardware watchdog on the ICP Single
520	  Board Computer. This driver is working on (at least) the following
521	  IPC SBC's: Wafer 5823, Rocky 4783, Rocky 3703 and Rocky 3782.
522
523	  To compile this driver as a module, choose M here: the
524	  module will be called wafer5823wdt.
525
526config I6300ESB_WDT
527	tristate "Intel 6300ESB Timer/Watchdog"
528	depends on X86 && PCI
529	---help---
530	  Hardware driver for the watchdog timer built into the Intel
531	  6300ESB controller hub.
532
533	  To compile this driver as a module, choose M here: the
534	  module will be called i6300esb.
535
536config INTEL_SCU_WATCHDOG
537	bool "Intel SCU Watchdog for Mobile Platforms"
538	depends on WATCHDOG
539	depends on INTEL_SCU_IPC
540	---help---
541	  Hardware driver for the watchdog time built into the Intel SCU
542	  for Intel Mobile Platforms.
543
544	  To compile this driver as a module, choose M here.
545
546config ITCO_WDT
547	tristate "Intel TCO Timer/Watchdog"
548	depends on (X86 || IA64) && PCI
549	---help---
550	  Hardware driver for the intel TCO timer based watchdog devices.
551	  These drivers are included in the Intel 82801 I/O Controller
552	  Hub family (from ICH0 up to ICH10) and in the Intel 63xxESB
553	  controller hub.
554
555	  The TCO (Total Cost of Ownership) timer is a watchdog timer
556	  that will reboot the machine after its second expiration. The
557	  expiration time can be configured with the "heartbeat" parameter.
558
559	  On some motherboards the driver may fail to reset the chipset's
560	  NO_REBOOT flag which prevents the watchdog from rebooting the
561	  machine. If this is the case you will get a kernel message like
562	  "failed to reset NO_REBOOT flag, reboot disabled by hardware".
563
564	  To compile this driver as a module, choose M here: the
565	  module will be called iTCO_wdt.
566
567config ITCO_VENDOR_SUPPORT
568	bool "Intel TCO Timer/Watchdog Specific Vendor Support"
569	depends on ITCO_WDT
570	---help---
571	  Add vendor specific support to the intel TCO timer based watchdog
572	  devices. At this moment we only have additional support for some
573	  SuperMicro Inc. motherboards.
574
575config IT8712F_WDT
576	tristate "IT8712F (Smart Guardian) Watchdog Timer"
577	depends on X86
578	---help---
579	  This is the driver for the built-in watchdog timer on the IT8712F
580	  Super I/0 chipset used on many motherboards.
581
582	  If the driver does not work, then make sure that the game port in
583	  the BIOS is enabled.
584
585	  To compile this driver as a module, choose M here: the
586	  module will be called it8712f_wdt.
587
588config IT87_WDT
589	tristate "IT87 Watchdog Timer"
590	depends on X86 && EXPERIMENTAL
591	---help---
592	  This is the driver for the hardware watchdog on the ITE IT8702,
593	  IT8712, IT8716, IT8718, IT8720, IT8721, IT8726 Super I/O chips.
594	  This watchdog simply watches your kernel to make sure it doesn't
595	  freeze, and if it does, it reboots your computer after a certain
596	  amount of time.
597
598	  To compile this driver as a module, choose M here: the module will
599	  be called it87_wdt.
600
601config HP_WATCHDOG
602	tristate "HP ProLiant iLO2+ Hardware Watchdog Timer"
603	depends on X86
604	default m
605	help
606	  A software monitoring watchdog and NMI sourcing driver. This driver
607	  will detect lockups and provide a stack trace. This is a driver that
608	  will only load on an HP ProLiant system with a minimum of iLO2 support.
609	  To compile this driver as a module, choose M here: the module will be
610	  called hpwdt.
611
612config HPWDT_NMI_DECODING
613	bool "NMI decoding support for the HP ProLiant iLO2+ Hardware Watchdog Timer"
614	depends on HP_WATCHDOG
615	default y
616	help
617	  When an NMI occurs this feature will make the necessary BIOS calls to
618	  log the cause of the NMI.
619
620config SC1200_WDT
621	tristate "National Semiconductor PC87307/PC97307 (ala SC1200) Watchdog"
622	depends on X86
623	help
624	  This is a driver for National Semiconductor PC87307/PC97307 hardware
625	  watchdog cards as found on the SC1200. This watchdog is mainly used
626	  for power management purposes and can be used to power down the device
627	  during inactivity periods (includes interrupt activity monitoring).
628
629	  To compile this driver as a module, choose M here: the
630	  module will be called sc1200wdt.
631
632	  Most people will say N.
633
634config SCx200_WDT
635	tristate "National Semiconductor SCx200 Watchdog"
636	depends on SCx200 && PCI
637	help
638	  Enable the built-in watchdog timer support on the National
639	  Semiconductor SCx200 processors.
640
641	  If compiled as a module, it will be called scx200_wdt.
642
643config PC87413_WDT
644	tristate "NS PC87413 watchdog"
645	depends on X86
646	---help---
647	  This is the driver for the hardware watchdog on the PC87413 chipset
648	  This watchdog simply watches your kernel to make sure it doesn't
649	  freeze, and if it does, it reboots your computer after a certain
650	  amount of time.
651
652	  To compile this driver as a module, choose M here: the
653	  module will be called pc87413_wdt.
654
655	  Most people will say N.
656
657config NV_TCO
658	tristate "nVidia TCO Timer/Watchdog"
659	depends on X86 && PCI
660	---help---
661	  Hardware driver for the TCO timer built into the nVidia Hub family
662	  (such as the MCP51).  The TCO (Total Cost of Ownership) timer is a
663	  watchdog timer that will reboot the machine after its second
664	  expiration. The expiration time can be configured with the
665	  "heartbeat" parameter.
666
667	  On some motherboards the driver may fail to reset the chipset's
668	  NO_REBOOT flag which prevents the watchdog from rebooting the
669	  machine. If this is the case you will get a kernel message like
670	  "failed to reset NO_REBOOT flag, reboot disabled by hardware".
671
672	  To compile this driver as a module, choose M here: the
673	  module will be called nv_tco.
674
675config RDC321X_WDT
676	tristate "RDC R-321x SoC watchdog"
677	depends on X86_RDC321X
678	help
679	  This is the driver for the built in hardware watchdog
680	  in the RDC R-321x SoC.
681
682	  To compile this driver as a module, choose M here: the
683	  module will be called rdc321x_wdt.
684
685config 60XX_WDT
686	tristate "SBC-60XX Watchdog Timer"
687	depends on X86
688	help
689	  This driver can be used with the watchdog timer found on some
690	  single board computers, namely the 6010 PII based computer.
691	  It may well work with other cards.  It reads port 0x443 to enable
692	  and re-set the watchdog timer, and reads port 0x45 to disable
693	  the watchdog.  If you have a card that behave in similar ways,
694	  you can probably make this driver work with your card as well.
695
696	  You can compile this driver directly into the kernel, or use
697	  it as a module.  The module will be called sbc60xxwdt.
698
699config SBC8360_WDT
700	tristate "SBC8360 Watchdog Timer"
701	depends on X86
702	---help---
703
704	  This is the driver for the hardware watchdog on the SBC8360 Single
705	  Board Computer produced by Axiomtek Co., Ltd. (www.axiomtek.com).
706
707	  To compile this driver as a module, choose M here: the
708	  module will be called sbc8360.
709
710	  Most people will say N.
711
712config SBC7240_WDT
713	tristate "SBC Nano 7240 Watchdog Timer"
714	depends on X86_32
715	---help---
716	  This is the driver for the hardware watchdog found on the IEI
717	  single board computers EPIC Nano 7240 (and likely others). This
718	  watchdog simply watches your kernel to make sure it doesn't freeze,
719	  and if it does, it reboots your computer after a certain amount of
720	  time.
721
722	  To compile this driver as a module, choose M here: the
723	  module will be called sbc7240_wdt.
724
725config CPU5_WDT
726	tristate "SMA CPU5 Watchdog"
727	depends on X86
728	---help---
729	  TBD.
730	  To compile this driver as a module, choose M here: the
731	  module will be called cpu5wdt.
732
733config SMSC_SCH311X_WDT
734	tristate "SMSC SCH311X Watchdog Timer"
735	depends on X86
736	---help---
737	  This is the driver for the hardware watchdog timer on the
738	  SMSC SCH3112, SCH3114 and SCH3116 Super IO chipset
739	  (LPC IO with 8042 KBC, Reset Generation, HWM and multiple
740	  serial ports).
741
742	  To compile this driver as a module, choose M here: the
743	  module will be called sch311x_wdt.
744
745config SMSC37B787_WDT
746	tristate "Winbond SMsC37B787 Watchdog Timer"
747	depends on X86
748	---help---
749	  This is the driver for the hardware watchdog component on the
750	  Winbond SMsC37B787 chipset as used on the NetRunner Mainboard
751	  from Vision Systems and maybe others.
752
753	  This watchdog simply watches your kernel to make sure it doesn't
754	  freeze, and if it does, it reboots your computer after a certain
755	  amount of time.
756
757	  Usually a userspace daemon will notify the kernel WDT driver that
758	  userspace is still alive, at regular intervals.
759
760	  To compile this driver as a module, choose M here: the
761	  module will be called smsc37b787_wdt.
762
763	  Most people will say N.
764
765config W83627HF_WDT
766	tristate "W83627HF/W83627DHG Watchdog Timer"
767	depends on X86
768	---help---
769	  This is the driver for the hardware watchdog on the W83627HF chipset
770	  as used in Advantech PC-9578 and Tyan S2721-533 motherboards
771	  (and likely others). The driver also supports the W83627DHG chip.
772	  This watchdog simply watches your kernel to make sure it doesn't
773	  freeze, and if it does, it reboots your computer after a certain
774	  amount of time.
775
776	  To compile this driver as a module, choose M here: the
777	  module will be called w83627hf_wdt.
778
779	  Most people will say N.
780
781config W83697HF_WDT
782	tristate "W83697HF/W83697HG Watchdog Timer"
783	depends on X86
784	---help---
785	  This is the driver for the hardware watchdog on the W83697HF/HG
786	  chipset as used in Dedibox/VIA motherboards (and likely others).
787	  This watchdog simply watches your kernel to make sure it doesn't
788	  freeze, and if it does, it reboots your computer after a certain
789	  amount of time.
790
791	  To compile this driver as a module, choose M here: the
792	  module will be called w83697hf_wdt.
793
794	  Most people will say N.
795
796config W83697UG_WDT
797	tristate "W83697UG/W83697UF Watchdog Timer"
798	depends on X86
799	---help---
800	  This is the driver for the hardware watchdog on the W83697UG/UF
801	  chipset as used in MSI Fuzzy CX700 VIA motherboards (and likely others).
802	  This watchdog simply watches your kernel to make sure it doesn't
803	  freeze, and if it does, it reboots your computer after a certain
804	  amount of time.
805
806	  To compile this driver as a module, choose M here: the
807	  module will be called w83697ug_wdt.
808
809	  Most people will say N.
810
811config W83877F_WDT
812	tristate "W83877F (EMACS) Watchdog Timer"
813	depends on X86
814	---help---
815	  This is the driver for the hardware watchdog on the W83877F chipset
816	  as used in EMACS PC-104 motherboards (and likely others).  This
817	  watchdog simply watches your kernel to make sure it doesn't freeze,
818	  and if it does, it reboots your computer after a certain amount of
819	  time.
820
821	  To compile this driver as a module, choose M here: the
822	  module will be called w83877f_wdt.
823
824	  Most people will say N.
825
826config W83977F_WDT
827	tristate "W83977F (PCM-5335) Watchdog Timer"
828	depends on X86
829	---help---
830	  This is the driver for the hardware watchdog on the W83977F I/O chip
831	  as used in AAEON's PCM-5335 SBC (and likely others).  This
832	  watchdog simply watches your kernel to make sure it doesn't freeze,
833	  and if it does, it reboots your computer after a certain amount of
834	  time.
835
836	  To compile this driver as a module, choose M here: the
837	  module will be called w83977f_wdt.
838
839config MACHZ_WDT
840	tristate "ZF MachZ Watchdog"
841	depends on X86
842	---help---
843	  If you are using a ZF Micro MachZ processor, say Y here, otherwise
844	  N.  This is the driver for the watchdog timer built-in on that
845	  processor using ZF-Logic interface.  This watchdog simply watches
846	  your kernel to make sure it doesn't freeze, and if it does, it
847	  reboots your computer after a certain amount of time.
848
849	  To compile this driver as a module, choose M here: the
850	  module will be called machzwd.
851
852config SBC_EPX_C3_WATCHDOG
853	tristate "Winsystems SBC EPX-C3 watchdog"
854	depends on X86
855	---help---
856	  This is the driver for the built-in watchdog timer on the EPX-C3
857	  Single-board computer made by Winsystems, Inc.
858
859	  *Note*: This hardware watchdog is not probeable and thus there
860	  is no way to know if writing to its IO address will corrupt
861	  your system or have any real effect.  The only way to be sure
862	  that this driver does what you want is to make sure you
863	  are running it on an EPX-C3 from Winsystems with the watchdog
864	  timer at IO address 0x1ee and 0x1ef.  It will write to both those
865	  IO ports.  Basically, the assumption is made that if you compile
866	  this driver into your kernel and/or load it as a module, that you
867	  know what you are doing and that you are in fact running on an
868	  EPX-C3 board!
869
870	  To compile this driver as a module, choose M here: the
871	  module will be called sbc_epx_c3.
872
873# M32R Architecture
874
875# M68K Architecture
876
877config M54xx_WATCHDOG
878	tristate "MCF54xx watchdog support"
879	depends on M548x
880	help
881	  To compile this driver as a module, choose M here: the
882	  module will be called m54xx_wdt.
883
884# MIPS Architecture
885
886config ATH79_WDT
887	tristate "Atheros AR71XX/AR724X/AR913X hardware watchdog"
888	depends on ATH79
889	help
890	  Hardware driver for the built-in watchdog timer on the Atheros
891	  AR71XX/AR724X/AR913X SoCs.
892
893config BCM47XX_WDT
894	tristate "Broadcom BCM47xx Watchdog Timer"
895	depends on BCM47XX
896	help
897	  Hardware driver for the Broadcom BCM47xx Watchog Timer.
898
899config RC32434_WDT
900	tristate "IDT RC32434 SoC Watchdog Timer"
901	depends on MIKROTIK_RB532
902	help
903	  Hardware driver for the IDT RC32434 SoC built-in
904	  watchdog timer.
905
906	  To compile this driver as a module, choose M here: the
907	  module will be called rc32434_wdt.
908
909config INDYDOG
910	tristate "Indy/I2 Hardware Watchdog"
911	depends on SGI_HAS_INDYDOG
912	help
913	  Hardware driver for the Indy's/I2's watchdog. This is a
914	  watchdog timer that will reboot the machine after a 60 second
915	  timer expired and no process has written to /dev/watchdog during
916	  that time.
917
918config JZ4740_WDT
919	tristate "Ingenic jz4740 SoC hardware watchdog"
920	depends on MACH_JZ4740
921	help
922	  Hardware driver for the built-in watchdog timer on Ingenic jz4740 SoCs.
923
924config WDT_MTX1
925	tristate "MTX-1 Hardware Watchdog"
926	depends on MIPS_MTX1
927	help
928	  Hardware driver for the MTX-1 boards. This is a watchdog timer that
929	  will reboot the machine after a 100 seconds timer expired.
930
931config PNX833X_WDT
932	tristate "PNX833x Hardware Watchdog"
933	depends on SOC_PNX8335
934	help
935	  Hardware driver for the PNX833x's watchdog. This is a
936	  watchdog timer that will reboot the machine after a programmable
937	  timer has expired and no process has written to /dev/watchdog during
938	  that time.
939
940config SIBYTE_WDOG
941	tristate "Sibyte SoC hardware watchdog"
942	depends on CPU_SB1
943	help
944	  Watchdog driver for the built in watchdog hardware in Sibyte
945	  SoC processors.  There are apparently two watchdog timers
946	  on such processors; this driver supports only the first one,
947	  because currently Linux only supports exporting one watchdog
948	  to userspace.
949
950	  To compile this driver as a loadable module, choose M here.
951	  The module will be called sb_wdog.
952
953config AR7_WDT
954	tristate "TI AR7 Watchdog Timer"
955	depends on AR7
956	help
957	  Hardware driver for the TI AR7 Watchdog Timer.
958
959config TXX9_WDT
960	tristate "Toshiba TXx9 Watchdog Timer"
961	depends on CPU_TX39XX || CPU_TX49XX
962	help
963	  Hardware driver for the built-in watchdog timer on TXx9 MIPS SoCs.
964
965config OCTEON_WDT
966	tristate "Cavium OCTEON SOC family Watchdog Timer"
967	depends on CPU_CAVIUM_OCTEON
968	default y
969	select EXPORT_UASM if OCTEON_WDT = m
970	help
971	  Hardware driver for OCTEON's on chip watchdog timer.
972	  Enables the watchdog for all cores running Linux. It
973	  installs a NMI handler and pokes the watchdog based on an
974	  interrupt.  On first expiration of the watchdog, the
975	  interrupt handler pokes it.  The second expiration causes an
976	  NMI that prints a message. The third expiration causes a
977	  global soft reset.
978
979	  When userspace has /dev/watchdog open, no poking is done
980	  from the first interrupt, it is then only poked when the
981	  device is written.
982
983config BCM63XX_WDT
984	tristate "Broadcom BCM63xx hardware watchdog"
985	depends on BCM63XX
986	help
987	  Watchdog driver for the built in watchdog hardware in Broadcom
988	  BCM63xx SoC.
989
990	  To compile this driver as a loadable module, choose M here.
991	  The module will be called bcm63xx_wdt.
992
993config LANTIQ_WDT
994	tristate "Lantiq SoC watchdog"
995	depends on LANTIQ
996	help
997	  Hardware driver for the Lantiq SoC Watchdog Timer.
998
999# PARISC Architecture
1000
1001# POWERPC Architecture
1002
1003config GEF_WDT
1004	tristate "GE Watchdog Timer"
1005	depends on GEF_SBC610 || GEF_SBC310 || GEF_PPC9A
1006	---help---
1007	  Watchdog timer found in a number of GE single board computers.
1008
1009config MPC5200_WDT
1010	bool "MPC52xx Watchdog Timer"
1011	depends on PPC_MPC52xx
1012	help
1013	  Use General Purpose Timer (GPT) 0 on the MPC5200 as Watchdog.
1014
1015config 8xxx_WDT
1016	tristate "MPC8xxx Platform Watchdog Timer"
1017	depends on PPC_8xx || PPC_83xx || PPC_86xx
1018	help
1019	  This driver is for a SoC level watchdog that exists on some
1020	  Freescale PowerPC processors. So far this driver supports:
1021	  - MPC8xx watchdogs
1022	  - MPC83xx watchdogs
1023	  - MPC86xx watchdogs
1024
1025	  For BookE processors (MPC85xx) use the BOOKE_WDT driver instead.
1026
1027config MV64X60_WDT
1028	tristate "MV64X60 (Marvell Discovery) Watchdog Timer"
1029	depends on MV64X60
1030
1031config PIKA_WDT
1032	tristate "PIKA FPGA Watchdog"
1033	depends on WARP
1034	default y
1035	help
1036	  This enables the watchdog in the PIKA FPGA. Currently used on
1037	  the Warp platform.
1038
1039config BOOKE_WDT
1040	tristate "PowerPC Book-E Watchdog Timer"
1041	depends on BOOKE || 4xx
1042	---help---
1043	  Watchdog driver for PowerPC Book-E chips, such as the Freescale
1044	  MPC85xx SOCs and the IBM PowerPC 440.
1045
1046	  Please see Documentation/watchdog/watchdog-api.txt for
1047	  more information.
1048
1049config BOOKE_WDT_DEFAULT_TIMEOUT
1050	int "PowerPC Book-E Watchdog Timer Default Timeout"
1051	depends on BOOKE_WDT
1052	default 38 if FSL_BOOKE
1053	range 0 63 if FSL_BOOKE
1054	default 3 if !FSL_BOOKE
1055	range 0 3 if !FSL_BOOKE
1056	help
1057	  Select the default watchdog timer period to be used by the PowerPC
1058	  Book-E watchdog driver.  A watchdog "event" occurs when the bit
1059	  position represented by this number transitions from zero to one.
1060
1061	  For Freescale Book-E processors, this is a number between 0 and 63.
1062	  For other Book-E processors, this is a number between 0 and 3.
1063
1064	  The value can be overidden by the wdt_period command-line parameter.
1065
1066# PPC64 Architecture
1067
1068config WATCHDOG_RTAS
1069	tristate "RTAS watchdog"
1070	depends on PPC_RTAS
1071	help
1072	  This driver adds watchdog support for the RTAS watchdog.
1073
1074	  To compile this driver as a module, choose M here. The module
1075	  will be called wdrtas.
1076
1077# S390 Architecture
1078
1079config ZVM_WATCHDOG
1080	tristate "z/VM Watchdog Timer"
1081	depends on S390
1082	help
1083	  IBM s/390 and zSeries machines running under z/VM 5.1 or later
1084	  provide a virtual watchdog timer to their guest that cause a
1085	  user define Control Program command to be executed after a
1086	  timeout.
1087
1088	  To compile this driver as a module, choose M here. The module
1089	  will be called vmwatchdog.
1090
1091# SUPERH (sh + sh64) Architecture
1092
1093config SH_WDT
1094	tristate "SuperH Watchdog"
1095	depends on SUPERH && (CPU_SH3 || CPU_SH4)
1096	help
1097	  This driver adds watchdog support for the integrated watchdog in the
1098	  SuperH processors. If you have one of these processors and wish
1099	  to have watchdog support enabled, say Y, otherwise say N.
1100
1101	  As a side note, saying Y here will automatically boost HZ to 1000
1102	  so that the timer has a chance to clear the overflow counter. On
1103	  slower systems (such as the SH-2 and SH-3) this will likely yield
1104	  some performance issues. As such, the WDT should be avoided here
1105	  unless it is absolutely necessary.
1106
1107	  To compile this driver as a module, choose M here: the
1108	  module will be called shwdt.
1109
1110# SPARC Architecture
1111
1112# SPARC64 Architecture
1113
1114config WATCHDOG_CP1XXX
1115	tristate "CP1XXX Hardware Watchdog support"
1116	depends on SPARC64 && PCI
1117	---help---
1118	  This is the driver for the hardware watchdog timers present on
1119	  Sun Microsystems CompactPCI models CP1400 and CP1500.
1120
1121	  To compile this driver as a module, choose M here: the
1122	  module will be called cpwatchdog.
1123
1124	  If you do not have a CompactPCI model CP1400 or CP1500, or
1125	  another UltraSPARC-IIi-cEngine boardset with hardware watchdog,
1126	  you should say N to this option.
1127
1128config WATCHDOG_RIO
1129	tristate "RIO Hardware Watchdog support"
1130	depends on SPARC64 && PCI
1131	help
1132	  Say Y here to support the hardware watchdog capability on Sun RIO
1133	  machines.  The watchdog timeout period is normally one minute but
1134	  can be changed with a boot-time parameter.
1135
1136# XTENSA Architecture
1137
1138# Xen Architecture
1139
1140config XEN_WDT
1141	tristate "Xen Watchdog support"
1142	depends on XEN
1143	help
1144	  Say Y here to support the hypervisor watchdog capability provided
1145	  by Xen 4.0 and newer.  The watchdog timeout period is normally one
1146	  minute but can be changed with a boot-time parameter.
1147
1148#
1149# ISA-based Watchdog Cards
1150#
1151
1152comment "ISA-based Watchdog Cards"
1153	depends on ISA
1154
1155config PCWATCHDOG
1156	tristate "Berkshire Products ISA-PC Watchdog"
1157	depends on ISA
1158	---help---
1159	  This is the driver for the Berkshire Products ISA-PC Watchdog card.
1160	  This card simply watches your kernel to make sure it doesn't freeze,
1161	  and if it does, it reboots your computer after a certain amount of
1162	  time. This driver is like the WDT501 driver but for different
1163	  hardware. Please read <file:Documentation/watchdog/pcwd-watchdog.txt>. The PC
1164	  watchdog cards can be ordered from <http://www.berkprod.com/>.
1165
1166	  To compile this driver as a module, choose M here: the
1167	  module will be called pcwd.
1168
1169	  Most people will say N.
1170
1171config MIXCOMWD
1172	tristate "Mixcom Watchdog"
1173	depends on ISA
1174	---help---
1175	  This is a driver for the Mixcom hardware watchdog cards.  This
1176	  watchdog simply watches your kernel to make sure it doesn't freeze,
1177	  and if it does, it reboots your computer after a certain amount of
1178	  time.
1179
1180	  To compile this driver as a module, choose M here: the
1181	  module will be called mixcomwd.
1182
1183	  Most people will say N.
1184
1185config WDT
1186	tristate "WDT Watchdog timer"
1187	depends on ISA
1188	---help---
1189	  If you have a WDT500P or WDT501P watchdog board, say Y here,
1190	  otherwise N. It is not possible to probe for this board, which means
1191	  that you have to inform the kernel about the IO port and IRQ that
1192	  is needed (you can do this via the io and irq parameters)
1193
1194	  To compile this driver as a module, choose M here: the
1195	  module will be called wdt.
1196
1197#
1198# PCI-based Watchdog Cards
1199#
1200
1201comment "PCI-based Watchdog Cards"
1202	depends on PCI
1203
1204config PCIPCWATCHDOG
1205	tristate "Berkshire Products PCI-PC Watchdog"
1206	depends on PCI
1207	---help---
1208	  This is the driver for the Berkshire Products PCI-PC Watchdog card.
1209	  This card simply watches your kernel to make sure it doesn't freeze,
1210	  and if it does, it reboots your computer after a certain amount of
1211	  time. The card can also monitor the internal temperature of the PC.
1212	  More info is available at <http://www.berkprod.com/pci_pc_watchdog.htm>.
1213
1214	  To compile this driver as a module, choose M here: the
1215	  module will be called pcwd_pci.
1216
1217	  Most people will say N.
1218
1219config WDTPCI
1220	tristate "PCI-WDT500/501 Watchdog timer"
1221	depends on PCI
1222	---help---
1223	  If you have a PCI-WDT500/501 watchdog board, say Y here, otherwise N.
1224
1225	  If you have a PCI-WDT501 watchdog board then you can enable the
1226	  temperature sensor by setting the type parameter to 501.
1227
1228	  If you want to enable the Fan Tachometer on the PCI-WDT501, then you
1229	  can do this via the tachometer parameter. Only do this if you have a
1230	  fan tachometer actually set up.
1231
1232	  To compile this driver as a module, choose M here: the
1233	  module will be called wdt_pci.
1234
1235#
1236# USB-based Watchdog Cards
1237#
1238
1239comment "USB-based Watchdog Cards"
1240	depends on USB
1241
1242config USBPCWATCHDOG
1243	tristate "Berkshire Products USB-PC Watchdog"
1244	depends on USB
1245	---help---
1246	  This is the driver for the Berkshire Products USB-PC Watchdog card.
1247	  This card simply watches your kernel to make sure it doesn't freeze,
1248	  and if it does, it reboots your computer after a certain amount of
1249	  time. The card can also monitor the internal temperature of the PC.
1250	  More info is available at <http://www.berkprod.com/usb_pc_watchdog.htm>.
1251
1252	  To compile this driver as a module, choose M here: the
1253	  module will be called pcwd_usb.
1254
1255	  Most people will say N.
1256
1257endif # WATCHDOG
1258