Merge master.kernel.org:/pub/scm/linux/kernel/git/davej/cpufreq
[linux-2.6] / drivers / char / watchdog / Kconfig
1 #
2 # Watchdog device configuration
3 #
4
5 menu "Watchdog Cards"
6
7 config WATCHDOG
8         bool "Watchdog Timer Support"
9         ---help---
10           If you say Y here (and to one of the following options) and create a
11           character special file /dev/watchdog with major number 10 and minor
12           number 130 using mknod ("man mknod"), you will get a watchdog, i.e.:
13           subsequently opening the file and then failing to write to it for
14           longer than 1 minute will result in rebooting the machine. This
15           could be useful for a networked machine that needs to come back
16           online as fast as possible after a lock-up. There's both a watchdog
17           implementation entirely in software (which can sometimes fail to
18           reboot the machine) and a driver for hardware watchdog boards, which
19           are more robust and can also keep track of the temperature inside
20           your computer. For details, read <file:Documentation/watchdog/watchdog.txt>
21           in the kernel source.
22
23           The watchdog is usually used together with the watchdog daemon
24           which is available from
25           <ftp://ibiblio.org/pub/Linux/system/daemons/watchdog/>. This daemon can
26           also monitor NFS connections and can reboot the machine when the process
27           table is full.
28
29           If unsure, say N.
30
31 config WATCHDOG_NOWAYOUT
32         bool "Disable watchdog shutdown on close"
33         depends on WATCHDOG
34         help
35           The default watchdog behaviour (which you get if you say N here) is
36           to stop the timer if the process managing it closes the file
37           /dev/watchdog. It's always remotely possible that this process might
38           get killed. If you say Y here, the watchdog cannot be stopped once
39           it has been started.
40
41 #
42 # General Watchdog drivers
43 #
44
45 comment "Watchdog Device Drivers"
46         depends on WATCHDOG
47
48 # Architecture Independant
49
50 config SOFT_WATCHDOG
51         tristate "Software watchdog"
52         depends on WATCHDOG
53         help
54           A software monitoring watchdog. This will fail to reboot your system
55           from some situations that the hardware watchdog will recover
56           from. Equally it's a lot cheaper to install.
57
58           To compile this driver as a module, choose M here: the
59           module will be called softdog.
60
61 # ARM Architecture
62
63 config 21285_WATCHDOG
64         tristate "DC21285 watchdog"
65         depends on WATCHDOG && FOOTBRIDGE
66         help
67           The Intel Footbridge chip contains a builtin watchdog circuit. Say Y
68           here if you wish to use this. Alternatively say M to compile the
69           driver as a module, which will be called wdt285.
70
71           This driver does not work on all machines. In particular, early CATS
72           boards have hardware problems that will cause the machine to simply
73           lock up if the watchdog fires.
74
75           "If in doubt, leave it out" - say N.
76
77 config 977_WATCHDOG
78         tristate "NetWinder WB83C977 watchdog"
79         depends on WATCHDOG && FOOTBRIDGE && ARCH_NETWINDER
80         help
81           Say Y here to include support for the WB977 watchdog included in
82           NetWinder machines. Alternatively say M to compile the driver as
83           a module, which will be called wdt977.
84
85           Not sure? It's safe to say N.
86
87 config IXP2000_WATCHDOG
88         tristate "IXP2000 Watchdog"
89         depends on WATCHDOG && ARCH_IXP2000
90         help
91           Say Y here if to include support for the watchdog timer
92           in the Intel IXP2000(2400, 2800, 2850) network processors.
93           This driver can be built as a module by choosing M. The module
94           will be called ixp2000_wdt.
95
96           Say N if you are unsure.
97
98 config IXP4XX_WATCHDOG
99         tristate "IXP4xx Watchdog"
100         depends on WATCHDOG && ARCH_IXP4XX
101         help
102           Say Y here if to include support for the watchdog timer
103           in the Intel IXP4xx network processors. This driver can
104           be built as a module by choosing M. The module will
105           be called ixp4xx_wdt.
106
107           Note: The internal IXP4xx watchdog does a soft CPU reset
108           which doesn't reset any peripherals. There are circumstances
109           where the watchdog will fail to reset the board correctly
110           (e.g., if the boot ROM is in an unreadable state).
111
112           Say N if you are unsure.
113
114 config S3C2410_WATCHDOG
115         tristate "S3C2410 Watchdog"
116         depends on WATCHDOG && ARCH_S3C2410
117         help
118           Watchdog timer block in the Samsung S3C2410 chips. This will
119           reboot the system when the timer expires with the watchdog
120           enabled.
121
122           The driver is limited by the speed of the system's PCLK
123           signal, so with reasonbaly fast systems (PCLK around 50-66MHz)
124           then watchdog intervals of over approximately 20seconds are
125           unavailable.
126
127           The driver can be built as a module by choosing M, and will
128           be called s3c2410_wdt
129
130 config SA1100_WATCHDOG
131         tristate "SA1100/PXA2xx watchdog"
132         depends on WATCHDOG && ( ARCH_SA1100 || ARCH_PXA )
133         help
134           Watchdog timer embedded into SA11x0 and PXA2xx chips. This will
135           reboot your system when timeout is reached.
136
137           NOTE: once enabled, this timer cannot be disabled.
138
139           To compile this driver as a module, choose M here: the
140           module will be called sa1100_wdt.
141
142 config MPCORE_WATCHDOG
143         tristate "MPcore watchdog"
144         depends on WATCHDOG && ARM_MPCORE_PLATFORM && LOCAL_TIMERS
145         help
146           Watchdog timer embedded into the MPcore system.
147
148           To compile this driver as a module, choose M here: the
149           module will be called mpcore_wdt.
150
151 config EP93XX_WATCHDOG
152         tristate "EP93xx Watchdog"
153         depends on WATCHDOG && ARCH_EP93XX
154         help
155           Say Y here if to include support for the watchdog timer
156           embedded in the Cirrus Logic EP93xx family of devices.
157
158           To compile this driver as a module, choose M here: the
159           module will be called ep93xx_wdt.
160
161 # X86 (i386 + ia64 + x86_64) Architecture
162
163 config ACQUIRE_WDT
164         tristate "Acquire SBC Watchdog Timer"
165         depends on WATCHDOG && X86
166         ---help---
167           This is the driver for the hardware watchdog on Single Board
168           Computers produced by Acquire Inc (and others). This watchdog
169           simply watches your kernel to make sure it doesn't freeze, and if
170           it does, it reboots your computer after a certain amount of time.
171
172           To compile this driver as a module, choose M here: the
173           module will be called acquirewdt.
174
175           Most people will say N.
176
177 config ADVANTECH_WDT
178         tristate "Advantech SBC Watchdog Timer"
179         depends on WATCHDOG && X86
180         help
181           If you are configuring a Linux kernel for the Advantech single-board
182           computer, say `Y' here to support its built-in watchdog timer
183           feature. More information can be found at
184           <http://www.advantech.com.tw/products/>
185
186 config ALIM1535_WDT
187         tristate "ALi M1535 PMU Watchdog Timer"
188         depends on WATCHDOG && X86 && PCI
189         ---help---
190           This is the driver for the hardware watchdog on the ALi M1535 PMU.
191
192           To compile this driver as a module, choose M here: the
193           module will be called alim1535_wdt.
194
195           Most people will say N.
196
197 config ALIM7101_WDT
198         tristate "ALi M7101 PMU Computer Watchdog"
199         depends on WATCHDOG && X86 && PCI
200         help
201           This is the driver for the hardware watchdog on the ALi M7101 PMU
202           as used in the x86 Cobalt servers.
203
204           To compile this driver as a module, choose M here: the
205           module will be called alim7101_wdt.
206
207           Most people will say N.
208
209 config SC520_WDT
210         tristate "AMD Elan SC520 processor Watchdog"
211         depends on WATCHDOG && X86
212         help
213           This is the driver for the hardware watchdog built in to the
214           AMD "Elan" SC520 microcomputer commonly used in embedded systems.
215           This watchdog simply watches your kernel to make sure it doesn't
216           freeze, and if it does, it reboots your computer after a certain
217           amount of time.
218
219           You can compile this driver directly into the kernel, or use
220           it as a module.  The module will be called sc520_wdt.
221
222 config EUROTECH_WDT
223         tristate "Eurotech CPU-1220/1410 Watchdog Timer"
224         depends on WATCHDOG && X86
225         help
226           Enable support for the watchdog timer on the Eurotech CPU-1220 and
227           CPU-1410 cards.  These are PC/104 SBCs. Spec sheets and product
228           information are at <http://www.eurotech.it/>.
229
230 config IB700_WDT
231         tristate "IB700 SBC Watchdog Timer"
232         depends on WATCHDOG && X86
233         ---help---
234           This is the driver for the hardware watchdog on the IB700 Single
235           Board Computer produced by TMC Technology (www.tmc-uk.com). This watchdog
236           simply watches your kernel to make sure it doesn't freeze, and if
237           it does, it reboots your computer after a certain amount of time.
238
239           This driver is like the WDT501 driver but for slightly different hardware.
240
241           To compile this driver as a module, choose M here: the
242           module will be called ib700wdt.
243
244           Most people will say N.
245
246 config IBMASR
247         tristate "IBM Automatic Server Restart"
248         depends on WATCHDOG && X86
249         help
250           This is the driver for the IBM Automatic Server Restart watchdog
251           timer builtin into some eServer xSeries machines.
252
253           To compile this driver as a module, choose M here: the
254           module will be called ibmasr.
255
256 config WAFER_WDT
257         tristate "ICP Wafer 5823 Single Board Computer Watchdog"
258         depends on WATCHDOG && X86
259         help
260           This is a driver for the hardware watchdog on the ICP Wafer 5823
261           Single Board Computer (and probably other similar models).
262
263           To compile this driver as a module, choose M here: the
264           module will be called wafer5823wdt.
265
266 config I6300ESB_WDT
267         tristate "Intel 6300ESB Timer/Watchdog"
268         depends on WATCHDOG && X86 && PCI
269         ---help---
270           Hardware driver for the watchdog timer built into the Intel
271           6300ESB controller hub.
272
273           To compile this driver as a module, choose M here: the
274           module will be called i6300esb.
275
276 config I8XX_TCO
277         tristate "Intel i8xx TCO Timer/Watchdog"
278         depends on WATCHDOG && (X86 || IA64) && PCI
279         ---help---
280           Hardware driver for the TCO timer built into the Intel 82801
281           I/O Controller Hub family.  The TCO (Total Cost of Ownership)
282           timer is a watchdog timer that will reboot the machine after
283           its second expiration. The expiration time can be configured
284           with the "heartbeat" parameter.
285
286           On some motherboards the driver may fail to reset the chipset's
287           NO_REBOOT flag which prevents the watchdog from rebooting the
288           machine. If this is the case you will get a kernel message like
289           "failed to reset NO_REBOOT flag, reboot disabled by hardware".
290
291           To compile this driver as a module, choose M here: the
292           module will be called i8xx_tco.
293
294 config SC1200_WDT
295         tristate "National Semiconductor PC87307/PC97307 (ala SC1200) Watchdog"
296         depends on WATCHDOG && X86
297         help
298           This is a driver for National Semiconductor PC87307/PC97307 hardware
299           watchdog cards as found on the SC1200. This watchdog is mainly used
300           for power management purposes and can be used to power down the device
301           during inactivity periods (includes interrupt activity monitoring).
302
303           To compile this driver as a module, choose M here: the
304           module will be called sc1200wdt.
305
306           Most people will say N.
307
308 config SCx200_WDT
309         tristate "National Semiconductor SCx200 Watchdog"
310         depends on WATCHDOG && SCx200 && PCI
311         help
312           Enable the built-in watchdog timer support on the National
313           Semiconductor SCx200 processors.
314
315           If compiled as a module, it will be called scx200_wdt.
316
317 config 60XX_WDT
318         tristate "SBC-60XX Watchdog Timer"
319         depends on WATCHDOG && X86
320         help
321           This driver can be used with the watchdog timer found on some
322           single board computers, namely the 6010 PII based computer.
323           It may well work with other cards.  It reads port 0x443 to enable
324           and re-set the watchdog timer, and reads port 0x45 to disable
325           the watchdog.  If you have a card that behave in similar ways,
326           you can probably make this driver work with your card as well.
327
328           You can compile this driver directly into the kernel, or use
329           it as a module.  The module will be called sbc60xxwdt.
330
331 config SBC8360_WDT
332         tristate "SBC8360 Watchdog Timer"
333         depends on WATCHDOG && X86
334         ---help---
335
336           This is the driver for the hardware watchdog on the SBC8360 Single
337           Board Computer produced by Axiomtek Co., Ltd. (www.axiomtek.com).
338
339           To compile this driver as a module, choose M here: the
340           module will be called sbc8360.ko.
341
342           Most people will say N.
343
344 config CPU5_WDT
345         tristate "SMA CPU5 Watchdog"
346         depends on WATCHDOG && X86
347         ---help---
348           TBD.
349           To compile this driver as a module, choose M here: the
350           module will be called cpu5wdt.
351
352 config W83627HF_WDT
353         tristate "W83627HF Watchdog Timer"
354         depends on WATCHDOG && X86
355         ---help---
356           This is the driver for the hardware watchdog on the W83627HF chipset
357           as used in Advantech PC-9578 and Tyan S2721-533 motherboards
358           (and likely others).  This watchdog simply watches your kernel to
359           make sure it doesn't freeze, and if it does, it reboots your computer
360           after a certain amount of time.
361
362           To compile this driver as a module, choose M here: the
363           module will be called w83627hf_wdt.
364
365           Most people will say N.
366
367 config W83877F_WDT
368         tristate "W83877F (EMACS) Watchdog Timer"
369         depends on WATCHDOG && X86
370         ---help---
371           This is the driver for the hardware watchdog on the W83877F chipset
372           as used in EMACS PC-104 motherboards (and likely others).  This
373           watchdog simply watches your kernel to make sure it doesn't freeze,
374           and if it does, it reboots your computer after a certain amount of
375           time.
376
377           To compile this driver as a module, choose M here: the
378           module will be called w83877f_wdt.
379
380           Most people will say N.
381
382 config W83977F_WDT
383         tristate "W83977F (PCM-5335) Watchdog Timer"
384         depends on WATCHDOG && X86
385         ---help---
386           This is the driver for the hardware watchdog on the W83977F I/O chip
387           as used in AAEON's PCM-5335 SBC (and likely others).  This
388           watchdog simply watches your kernel to make sure it doesn't freeze,
389           and if it does, it reboots your computer after a certain amount of
390           time.
391
392           To compile this driver as a module, choose M here: the
393           module will be called w83977f_wdt.
394
395 config MACHZ_WDT
396         tristate "ZF MachZ Watchdog"
397         depends on WATCHDOG && X86
398         ---help---
399           If you are using a ZF Micro MachZ processor, say Y here, otherwise
400           N.  This is the driver for the watchdog timer builtin on that
401           processor using ZF-Logic interface.  This watchdog simply watches
402           your kernel to make sure it doesn't freeze, and if it does, it
403           reboots your computer after a certain amount of time.
404
405           To compile this driver as a module, choose M here: the
406           module will be called machzwd.
407
408 config SBC_EPX_C3_WATCHDOG
409         tristate "Winsystems SBC EPX-C3 watchdog"
410         depends on WATCHDOG && X86
411         ---help---
412           This is the driver for the built-in watchdog timer on the EPX-C3
413           Single-board computer made by Winsystems, Inc.
414
415           *Note*: This hardware watchdog is not probeable and thus there
416           is no way to know if writing to its IO address will corrupt
417           your system or have any real effect.  The only way to be sure
418           that this driver does what you want is to make sure you
419           are runnning it on an EPX-C3 from Winsystems with the watchdog
420           timer at IO address 0x1ee and 0x1ef.  It will write to both those
421           IO ports.  Basically, the assumption is made that if you compile
422           this driver into your kernel and/or load it as a module, that you
423           know what you are doing and that you are in fact running on an
424           EPX-C3 board!
425
426           To compile this driver as a module, choose M here: the
427           module will be called sbc_epx_c3.
428
429
430 # PowerPC Architecture
431
432 config 8xx_WDT
433         tristate "MPC8xx Watchdog Timer"
434         depends on WATCHDOG && 8xx
435
436 config 83xx_WDT
437         tristate "MPC83xx Watchdog Timer"
438         depends on WATCHDOG && PPC_83xx
439
440 config MV64X60_WDT
441         tristate "MV64X60 (Marvell Discovery) Watchdog Timer"
442         depends on WATCHDOG && MV64X60
443
444 config BOOKE_WDT
445         tristate "PowerPC Book-E Watchdog Timer"
446         depends on WATCHDOG && (BOOKE || 4xx)
447         ---help---
448           Please see Documentation/watchdog/watchdog-api.txt for
449           more information.
450
451 # PPC64 Architecture
452
453 config WATCHDOG_RTAS
454         tristate "RTAS watchdog"
455         depends on WATCHDOG && PPC_RTAS
456         help
457           This driver adds watchdog support for the RTAS watchdog.
458
459           To compile this driver as a module, choose M here. The module
460           will be called wdrtas.
461
462 # MIPS Architecture
463
464 config INDYDOG
465         tristate "Indy/I2 Hardware Watchdog"
466         depends on WATCHDOG && SGI_IP22
467         help
468           Hardwaredriver for the Indy's/I2's watchdog. This is a
469           watchdog timer that will reboot the machine after a 60 second
470           timer expired and no process has written to /dev/watchdog during
471           that time.
472
473 # S390 Architecture
474
475 config ZVM_WATCHDOG
476         tristate "z/VM Watchdog Timer"
477         depends on WATCHDOG && S390
478         help
479           IBM s/390 and zSeries machines running under z/VM 5.1 or later
480           provide a virtual watchdog timer to their guest that cause a
481           user define Control Program command to be executed after a
482           timeout.
483
484           To compile this driver as a module, choose M here. The module
485           will be called vmwatchdog.
486
487 # SUPERH Architecture
488
489 config SH_WDT
490         tristate "SuperH Watchdog"
491         depends on WATCHDOG && SUPERH
492         help
493           This driver adds watchdog support for the integrated watchdog in the
494           SuperH processors. If you have one of these processors and wish
495           to have watchdog support enabled, say Y, otherwise say N.
496
497           As a side note, saying Y here will automatically boost HZ to 1000
498           so that the timer has a chance to clear the overflow counter. On
499           slower systems (such as the SH-2 and SH-3) this will likely yield
500           some performance issues. As such, the WDT should be avoided here
501           unless it is absolutely necessary.
502
503           To compile this driver as a module, choose M here: the
504           module will be called shwdt.
505
506 # SPARC64 Architecture
507
508 config WATCHDOG_CP1XXX
509         tristate "CP1XXX Hardware Watchdog support"
510         depends on WATCHDOG && SPARC64 && PCI
511         ---help---
512           This is the driver for the hardware watchdog timers present on
513           Sun Microsystems CompactPCI models CP1400 and CP1500.
514
515           To compile this driver as a module, choose M here: the
516           module will be called cpwatchdog.
517
518           If you do not have a CompactPCI model CP1400 or CP1500, or
519           another UltraSPARC-IIi-cEngine boardset with hardware watchdog,
520           you should say N to this option.
521
522 config WATCHDOG_RIO
523         tristate "RIO Hardware Watchdog support"
524         depends on WATCHDOG && SPARC64 && PCI
525         help
526           Say Y here to support the hardware watchdog capability on Sun RIO
527           machines.  The watchdog timeout period is normally one minute but
528           can be changed with a boot-time parameter.
529
530 #
531 # ISA-based Watchdog Cards
532 #
533
534 comment "ISA-based Watchdog Cards"
535         depends on WATCHDOG && ISA
536
537 config PCWATCHDOG
538         tristate "Berkshire Products ISA-PC Watchdog"
539         depends on WATCHDOG && ISA
540         ---help---
541           This is the driver for the Berkshire Products ISA-PC Watchdog card.
542           This card simply watches your kernel to make sure it doesn't freeze,
543           and if it does, it reboots your computer after a certain amount of
544           time. This driver is like the WDT501 driver but for different
545           hardware. Please read <file:Documentation/watchdog/pcwd-watchdog.txt>. The PC
546           watchdog cards can be ordered from <http://www.berkprod.com/>.
547
548           To compile this driver as a module, choose M here: the
549           module will be called pcwd.
550
551           Most people will say N.
552
553 config MIXCOMWD
554         tristate "Mixcom Watchdog"
555         depends on WATCHDOG && ISA
556         ---help---
557           This is a driver for the Mixcom hardware watchdog cards.  This
558           watchdog simply watches your kernel to make sure it doesn't freeze,
559           and if it does, it reboots your computer after a certain amount of
560           time.
561
562           To compile this driver as a module, choose M here: the
563           module will be called mixcomwd.
564
565           Most people will say N.
566
567 config WDT
568         tristate "WDT Watchdog timer"
569         depends on WATCHDOG && ISA
570         ---help---
571           If you have a WDT500P or WDT501P watchdog board, say Y here,
572           otherwise N. It is not possible to probe for this board, which means
573           that you have to inform the kernel about the IO port and IRQ that
574           is needed (you can do this via the io and irq parameters)
575
576           To compile this driver as a module, choose M here: the
577           module will be called wdt.
578
579 config WDT_501
580         bool "WDT501 features"
581         depends on WDT
582         help
583           Saying Y here and creating a character special file /dev/temperature
584           with major number 10 and minor number 131 ("man mknod") will give
585           you a thermometer inside your computer: reading from
586           /dev/temperature yields one byte, the temperature in degrees
587           Fahrenheit. This works only if you have a WDT501P watchdog board
588           installed.
589
590           If you want to enable the Fan Tachometer on the WDT501P, then you
591           can do this via the tachometer parameter. Only do this if you have a
592           fan tachometer actually set up.
593
594 #
595 # PCI-based Watchdog Cards
596 #
597
598 comment "PCI-based Watchdog Cards"
599         depends on WATCHDOG && PCI
600
601 config PCIPCWATCHDOG
602         tristate "Berkshire Products PCI-PC Watchdog"
603         depends on WATCHDOG && PCI
604         ---help---
605           This is the driver for the Berkshire Products PCI-PC Watchdog card.
606           This card simply watches your kernel to make sure it doesn't freeze,
607           and if it does, it reboots your computer after a certain amount of
608           time. The card can also monitor the internal temperature of the PC.
609           More info is available at <http://www.berkprod.com/pci_pc_watchdog.htm>.
610
611           To compile this driver as a module, choose M here: the
612           module will be called pcwd_pci.
613
614           Most people will say N.
615
616 config WDTPCI
617         tristate "PCI-WDT500/501 Watchdog timer"
618         depends on WATCHDOG && PCI
619         ---help---
620           If you have a PCI-WDT500/501 watchdog board, say Y here, otherwise N.
621
622           To compile this driver as a module, choose M here: the
623           module will be called wdt_pci.
624
625 config WDT_501_PCI
626         bool "PCI-WDT501 features"
627         depends on WDTPCI
628         help
629           Saying Y here and creating a character special file /dev/temperature
630           with major number 10 and minor number 131 ("man mknod") will give
631           you a thermometer inside your computer: reading from
632           /dev/temperature yields one byte, the temperature in degrees
633           Fahrenheit. This works only if you have a PCI-WDT501 watchdog board
634           installed.
635
636           If you want to enable the Fan Tachometer on the PCI-WDT501, then you
637           can do this via the tachometer parameter. Only do this if you have a
638           fan tachometer actually set up.
639
640 #
641 # USB-based Watchdog Cards
642 #
643
644 comment "USB-based Watchdog Cards"
645         depends on WATCHDOG && USB
646
647 config USBPCWATCHDOG
648         tristate "Berkshire Products USB-PC Watchdog"
649         depends on WATCHDOG && USB
650         ---help---
651           This is the driver for the Berkshire Products USB-PC Watchdog card.
652           This card simply watches your kernel to make sure it doesn't freeze,
653           and if it does, it reboots your computer after a certain amount of
654           time. The card can also monitor the internal temperature of the PC.
655           More info is available at <http://www.berkprod.com/usb_pc_watchdog.htm>.
656
657           To compile this driver as a module, choose M here: the
658           module will be called pcwd_usb.
659
660           Most people will say N.
661
662 endmenu