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