]> Git Repo - linux.git/blob - drivers/watchdog/Kconfig
thermal: core: Do not fail cdev registration because of invalid initial state
[linux.git] / drivers / watchdog / Kconfig
1 # SPDX-License-Identifier: GPL-2.0-only
2
3 #
4 # Watchdog device configuration
5 #
6
7 menuconfig 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           on-line 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
21           <file:Documentation/watchdog/watchdog-api.rst> in the kernel source.
22
23           The watchdog is usually used together with the watchdog daemon
24           which is available from
25           <https://ibiblio.org/pub/Linux/system/daemons/watchdog/>. This daemon
26           can also monitor NFS connections and can reboot the machine when the
27           process table is full.
28
29           If unsure, say N.
30
31 if WATCHDOG
32
33 config WATCHDOG_CORE
34         tristate "WatchDog Timer Driver Core"
35         help
36           Say Y here if you want to use the new watchdog timer driver core.
37           This driver provides a framework for all watchdog timer drivers
38           and gives them the /dev/watchdog interface (and later also the
39           sysfs interface).
40
41 config WATCHDOG_NOWAYOUT
42         bool "Disable watchdog shutdown on close"
43         help
44           The default watchdog behaviour (which you get if you say N here) is
45           to stop the timer if the process managing it closes the file
46           /dev/watchdog. It's always remotely possible that this process might
47           get killed. If you say Y here, the watchdog cannot be stopped once
48           it has been started.
49
50 config WATCHDOG_HANDLE_BOOT_ENABLED
51         bool "Update boot-enabled watchdog until userspace takes over"
52         default y
53         help
54           The default watchdog behaviour (which you get if you say Y here) is
55           to ping watchdog devices that were enabled before the driver has
56           been loaded until control is taken over from userspace using the
57           /dev/watchdog file. If you say N here, the kernel will not update
58           the watchdog on its own. Thus if your userspace does not start fast
59           enough your device will reboot.
60
61 config WATCHDOG_OPEN_TIMEOUT
62         int "Timeout value for opening watchdog device"
63         default 0
64         help
65           The maximum time, in seconds, for which the watchdog framework takes
66           care of pinging a hardware watchdog.  A value of 0 means infinite. The
67           value set here can be overridden by the commandline parameter
68           "watchdog.open_timeout".
69
70 config WATCHDOG_SYSFS
71         bool "Read different watchdog information through sysfs"
72         help
73           Say Y here if you want to enable watchdog device status read through
74           sysfs attributes.
75
76 config WATCHDOG_HRTIMER_PRETIMEOUT
77         bool "Enable watchdog hrtimer-based pretimeouts"
78         help
79           Enable this if you want to use a hrtimer timer based pretimeout for
80           watchdogs that do not natively support pretimeout support. Be aware
81           that because this pretimeout functionality uses hrtimers, it may not
82           be able to fire before the actual watchdog fires in some situations.
83
84 comment "Watchdog Pretimeout Governors"
85
86 config WATCHDOG_PRETIMEOUT_GOV
87         bool "Enable watchdog pretimeout governors"
88         depends on WATCHDOG_CORE
89         help
90           The option allows to select watchdog pretimeout governors.
91
92 config WATCHDOG_PRETIMEOUT_GOV_SEL
93         tristate
94         depends on WATCHDOG_PRETIMEOUT_GOV
95         default m
96         select WATCHDOG_PRETIMEOUT_GOV_PANIC if WATCHDOG_PRETIMEOUT_GOV_NOOP=n
97
98 if WATCHDOG_PRETIMEOUT_GOV
99
100 config WATCHDOG_PRETIMEOUT_GOV_NOOP
101         tristate "Noop watchdog pretimeout governor"
102         depends on WATCHDOG_CORE
103         default WATCHDOG_CORE
104         help
105           Noop watchdog pretimeout governor, only an informational
106           message is added to kernel log buffer.
107
108 config WATCHDOG_PRETIMEOUT_GOV_PANIC
109         tristate "Panic watchdog pretimeout governor"
110         depends on WATCHDOG_CORE
111         default WATCHDOG_CORE
112         help
113           Panic watchdog pretimeout governor, on watchdog pretimeout
114           event put the kernel into panic.
115
116 choice
117         prompt "Default Watchdog Pretimeout Governor"
118         default WATCHDOG_PRETIMEOUT_DEFAULT_GOV_PANIC
119         help
120           This option selects a default watchdog pretimeout governor.
121           The governor takes its action, if a watchdog is capable
122           to report a pretimeout event.
123
124 config WATCHDOG_PRETIMEOUT_DEFAULT_GOV_NOOP
125         bool "noop"
126         depends on WATCHDOG_PRETIMEOUT_GOV_NOOP
127         help
128           Use noop watchdog pretimeout governor by default. If noop
129           governor is selected by a user, write a short message to
130           the kernel log buffer and don't do any system changes.
131
132 config WATCHDOG_PRETIMEOUT_DEFAULT_GOV_PANIC
133         bool "panic"
134         depends on WATCHDOG_PRETIMEOUT_GOV_PANIC
135         help
136           Use panic watchdog pretimeout governor by default, if
137           a watchdog pretimeout event happens, consider that
138           a watchdog feeder is dead and reboot is unavoidable.
139
140 endchoice
141
142 endif # WATCHDOG_PRETIMEOUT_GOV
143
144 #
145 # General Watchdog drivers
146 #
147
148 comment "Watchdog Device Drivers"
149
150 # Architecture Independent
151
152 config SOFT_WATCHDOG
153         tristate "Software watchdog"
154         select WATCHDOG_CORE
155         help
156           A software monitoring watchdog. This will fail to reboot your system
157           from some situations that the hardware watchdog will recover
158           from. Equally it's a lot cheaper to install.
159
160           To compile this driver as a module, choose M here: the
161           module will be called softdog.
162
163 config SOFT_WATCHDOG_PRETIMEOUT
164         bool "Software watchdog pretimeout governor support"
165         depends on SOFT_WATCHDOG && WATCHDOG_PRETIMEOUT_GOV
166         help
167           Enable this if you want to use pretimeout governors with the software
168           watchdog. Be aware that governors might affect the watchdog because it
169           is purely software, e.g. the panic governor will stall it!
170
171 config BD957XMUF_WATCHDOG
172         tristate "ROHM BD9576MUF and BD9573MUF PMIC Watchdog"
173         depends on MFD_ROHM_BD957XMUF
174         select WATCHDOG_CORE
175         help
176           Support for the watchdog in the ROHM BD9576 and BD9573 PMICs.
177           These PMIC ICs contain watchdog block which can be configured
178           to toggle reset line if SoC fails to ping watchdog via GPIO.
179
180           Say Y here to include support for the ROHM BD9576 or BD9573
181           watchdog. Alternatively say M to compile the driver as a module,
182           which will be called bd9576_wdt.
183
184 config CROS_EC_WATCHDOG
185         tristate "ChromeOS EC-based watchdog"
186         select WATCHDOG_CORE
187         depends on CROS_EC
188         help
189           Watchdog driver for Chromebook devices equipped with embedded controller.
190           Trigger event is recorded in EC and checked on the subsequent boot.
191
192           To compile this driver as a module, choose M here: the
193           module will be called cros_ec_wdt.
194
195 config DA9052_WATCHDOG
196         tristate "Dialog DA9052 Watchdog"
197         depends on PMIC_DA9052 || COMPILE_TEST
198         select WATCHDOG_CORE
199         help
200           Support for the watchdog in the DA9052 PMIC. Watchdog trigger
201           cause system reset.
202
203           Say Y here to include support for the DA9052 watchdog.
204           Alternatively say M to compile the driver as a module,
205           which will be called da9052_wdt.
206
207 config DA9055_WATCHDOG
208         tristate "Dialog Semiconductor DA9055 Watchdog"
209         depends on MFD_DA9055 || COMPILE_TEST
210         select WATCHDOG_CORE
211         help
212           If you say yes here you get support for watchdog on the Dialog
213           Semiconductor DA9055 PMIC.
214
215           This driver can also be built as a module.  If so, the module
216           will be called da9055_wdt.
217
218 config DA9063_WATCHDOG
219         tristate "Dialog DA9063 Watchdog"
220         depends on MFD_DA9063 || COMPILE_TEST
221         depends on I2C
222         select WATCHDOG_CORE
223         help
224           Support for the watchdog in the DA9063 PMIC.
225
226           This driver can be built as a module. The module name is da9063_wdt.
227
228 config DA9062_WATCHDOG
229         tristate "Dialog DA9062/61 Watchdog"
230         depends on MFD_DA9062 || COMPILE_TEST
231         depends on I2C
232         select WATCHDOG_CORE
233         help
234           Support for the watchdog in the DA9062 and DA9061 PMICs.
235
236           This driver can be built as a module. The module name is da9062_wdt.
237
238 config GPIO_WATCHDOG
239         tristate "Watchdog device controlled through GPIO-line"
240         depends on OF_GPIO
241         select WATCHDOG_CORE
242         help
243           If you say yes here you get support for watchdog device
244           controlled through GPIO-line.
245
246 config GPIO_WATCHDOG_ARCH_INITCALL
247         bool "Register the watchdog as early as possible"
248         depends on GPIO_WATCHDOG=y
249         help
250           In some situations, the default initcall level (module_init)
251           in not early enough in the boot process to avoid the watchdog
252           to be triggered.
253           If you say yes here, the initcall level would be raised to
254           arch_initcall.
255           If in doubt, say N.
256
257 config LENOVO_SE10_WDT
258         tristate "Lenovo SE10 Watchdog"
259         depends on (X86 && DMI) || COMPILE_TEST
260         select WATCHDOG_CORE
261         help
262           If you say yes here you get support for the watchdog
263           functionality for the Lenovo SE10 platform.
264
265           This driver can also be built as a module. If so, the module
266           will be called lenovo-se10-wdt.
267
268 config MENF21BMC_WATCHDOG
269         tristate "MEN 14F021P00 BMC Watchdog"
270         depends on MFD_MENF21BMC || COMPILE_TEST
271         depends on I2C
272         select WATCHDOG_CORE
273         help
274           Say Y here to include support for the MEN 14F021P00 BMC Watchdog.
275
276           This driver can also be built as a module. If so the module
277           will be called menf21bmc_wdt.
278
279 config MENZ069_WATCHDOG
280         tristate "MEN 16Z069 Watchdog"
281         depends on MCB
282         select WATCHDOG_CORE
283         help
284           Say Y here to include support for the MEN 16Z069 Watchdog.
285
286           This driver can also be built as a module. If so the module
287           will be called menz069_wdt.
288
289 config WDAT_WDT
290         tristate "ACPI Watchdog Action Table (WDAT)"
291         depends on ACPI
292         select WATCHDOG_CORE
293         select ACPI_WATCHDOG
294         help
295           This driver adds support for systems with ACPI Watchdog Action
296           Table (WDAT) table. Servers typically have this but it can be
297           found on some desktop machines as well. This driver will take
298           over the native iTCO watchdog driver found on many Intel CPUs.
299
300           To compile this driver as module, choose M here: the module will
301           be called wdat_wdt.
302
303 config WM831X_WATCHDOG
304         tristate "WM831x watchdog"
305         depends on MFD_WM831X
306         select WATCHDOG_CORE
307         help
308           Support for the watchdog in the WM831x AudioPlus PMICs.  When
309           the watchdog triggers the system will be reset.
310
311 config WM8350_WATCHDOG
312         tristate "WM8350 watchdog"
313         depends on MFD_WM8350
314         select WATCHDOG_CORE
315         help
316           Support for the watchdog in the WM8350 AudioPlus PMIC.  When
317           the watchdog triggers the system will be reset.
318
319 config XILINX_WATCHDOG
320         tristate "Xilinx Watchdog timer"
321         depends on HAS_IOMEM
322         select WATCHDOG_CORE
323         help
324           Watchdog driver for the xps_timebase_wdt IP core.
325
326           To compile this driver as a module, choose M here: the
327           module will be called of_xilinx_wdt.
328
329 config XILINX_WINDOW_WATCHDOG
330         tristate "Xilinx window watchdog timer"
331         depends on HAS_IOMEM
332         depends on ARM64 || COMPILE_TEST
333         select WATCHDOG_CORE
334         help
335           Window watchdog driver for the versal_wwdt IP core.
336           Window watchdog timer(WWDT) contains closed(first) and
337           open(second) window with 32 bit width. Write to the watchdog
338           timer within predefined window periods of time. This means
339           a period that is not too soon and a period that is not too
340           late. The WWDT has to be restarted within the open window time.
341           If software tries to restart WWDT outside of the open window
342           time period, it generates a reset.
343
344           To compile this driver as a module, choose M here: the
345           module will be called xilinx_wwdt.
346
347 config ZIIRAVE_WATCHDOG
348         tristate "Zodiac RAVE Watchdog Timer"
349         depends on I2C
350         select WATCHDOG_CORE
351         help
352           Watchdog driver for the Zodiac Aerospace RAVE Switch Watchdog
353           Processor.
354
355           To compile this driver as a module, choose M here: the
356           module will be called ziirave_wdt.
357
358 config RAVE_SP_WATCHDOG
359         tristate "RAVE SP Watchdog timer"
360         depends on RAVE_SP_CORE
361         depends on NVMEM || !NVMEM
362         select WATCHDOG_CORE
363         help
364           Support for the watchdog on RAVE SP device.
365
366 config MLX_WDT
367         tristate "Mellanox Watchdog"
368         depends on MELLANOX_PLATFORM || COMPILE_TEST
369         select WATCHDOG_CORE
370         select REGMAP
371         help
372           This is the driver for the hardware watchdog on Mellanox systems.
373           If you are going to use it, say Y here, otherwise N.
374           This driver can be used together with the watchdog daemon.
375           It can also watch your kernel to make sure it doesn't freeze,
376           and if it does, it reboots your system after a certain amount of
377           time.
378
379           To compile this driver as a module, choose M here: the
380           module will be called mlx-wdt.
381
382 config SL28CPLD_WATCHDOG
383         tristate "Kontron sl28cpld Watchdog"
384         depends on MFD_SL28CPLD || COMPILE_TEST
385         select WATCHDOG_CORE
386         help
387           Say Y here to include support for the watchdog timer
388           on the Kontron sl28 CPLD.
389
390           To compile this driver as a module, choose M here: the
391           module will be called sl28cpld_wdt.
392
393 # ALPHA Architecture
394
395 # ARM Architecture
396
397 config ARM_SP805_WATCHDOG
398         tristate "ARM SP805 Watchdog"
399         depends on (ARM || ARM64 || COMPILE_TEST) && ARM_AMBA
400         select WATCHDOG_CORE
401         help
402           ARM Primecell SP805 Watchdog timer. This will reboot your system when
403           the timeout is reached.
404
405 config ARM_SBSA_WATCHDOG
406         tristate "ARM SBSA Generic Watchdog"
407         depends on ARM64
408         depends on ARM_ARCH_TIMER
409         select WATCHDOG_CORE
410         help
411           ARM SBSA Generic Watchdog has two stage timeouts:
412           the first signal (WS0) is for alerting the system by interrupt,
413           the second one (WS1) is a real hardware reset.
414           More details: ARM DEN0029B - Server Base System Architecture (SBSA)
415
416           This driver can operate ARM SBSA Generic Watchdog as a single stage
417           or a two stages watchdog, it depends on the module parameter "action".
418
419           Note: the maximum timeout in the two stages mode is half of that in
420           the single stage mode.
421
422           To compile this driver as module, choose M here: The module
423           will be called sbsa_gwdt.
424
425 config ARMADA_37XX_WATCHDOG
426         tristate "Armada 37xx watchdog"
427         depends on ARCH_MVEBU || COMPILE_TEST
428         depends on HAS_IOMEM
429         select MFD_SYSCON
430         select WATCHDOG_CORE
431         help
432            Say Y here to include support for the watchdog timer found on
433            Marvell Armada 37xx SoCs.
434            To compile this driver as a module, choose M here: the
435            module will be called armada_37xx_wdt.
436
437 config ASM9260_WATCHDOG
438         tristate "Alphascale ASM9260 watchdog"
439         depends on MACH_ASM9260 || COMPILE_TEST
440         depends on OF
441         select WATCHDOG_CORE
442         select RESET_CONTROLLER
443         help
444           Watchdog timer embedded into Alphascale asm9260 chips. This will
445           reboot your system when the timeout is reached.
446
447 config AT91RM9200_WATCHDOG
448         tristate "AT91RM9200 watchdog"
449         depends on (SOC_AT91RM9200 && MFD_SYSCON) || COMPILE_TEST
450         help
451           Watchdog timer embedded into AT91RM9200 chips. This will reboot your
452           system when the timeout is reached.
453
454 config AT91SAM9X_WATCHDOG
455         tristate "AT91SAM9X / AT91CAP9 watchdog"
456         depends on ARCH_AT91 || COMPILE_TEST
457         select WATCHDOG_CORE
458         help
459           Watchdog timer embedded into AT91SAM9X and AT91CAP9 chips. This will
460           reboot your system when the timeout is reached.
461
462 config SAMA5D4_WATCHDOG
463         tristate "Atmel SAMA5D4 Watchdog Timer"
464         depends on ARCH_AT91 || COMPILE_TEST
465         select WATCHDOG_CORE
466         help
467           Atmel SAMA5D4 watchdog timer is embedded into SAMA5D4 chips.
468           Its Watchdog Timer Mode Register can be written more than once.
469           This will reboot your system when the timeout is reached.
470
471 config CADENCE_WATCHDOG
472         tristate "Cadence Watchdog Timer"
473         depends on HAS_IOMEM
474         select WATCHDOG_CORE
475         help
476           Say Y here if you want to include support for the watchdog
477           timer in the Xilinx Zynq.
478
479 config 21285_WATCHDOG
480         tristate "DC21285 watchdog"
481         depends on FOOTBRIDGE
482         help
483           The Intel Footbridge chip contains a built-in watchdog circuit. Say Y
484           here if you wish to use this. Alternatively say M to compile the
485           driver as a module, which will be called wdt285.
486
487           This driver does not work on all machines. In particular, early CATS
488           boards have hardware problems that will cause the machine to simply
489           lock up if the watchdog fires.
490
491           "If in doubt, leave it out" - say N.
492
493 config 977_WATCHDOG
494         tristate "NetWinder WB83C977 watchdog"
495         depends on (FOOTBRIDGE && ARCH_NETWINDER) || (ARM && COMPILE_TEST)
496         depends on HAS_IOPORT
497         help
498           Say Y here to include support for the WB977 watchdog included in
499           NetWinder machines. Alternatively say M to compile the driver as
500           a module, which will be called wdt977.
501
502           Not sure? It's safe to say N.
503
504 config FTWDT010_WATCHDOG
505         tristate "Faraday Technology FTWDT010 watchdog"
506         depends on ARM || COMPILE_TEST
507         select WATCHDOG_CORE
508         default ARCH_GEMINI
509         help
510           Say Y here if to include support for the Faraday Technology
511           FTWDT010 watchdog timer embedded in the Cortina Systems Gemini
512           family of devices.
513
514           To compile this driver as a module, choose M here: the
515           module will be called ftwdt010_wdt.
516
517 config IXP4XX_WATCHDOG
518         tristate "IXP4xx Watchdog"
519         depends on ARCH_IXP4XX || (ARM && COMPILE_TEST)
520         select WATCHDOG_CORE
521         help
522           Say Y here if to include support for the watchdog timer
523           in the Intel IXP4xx network processors. This driver can
524           be built as a module by choosing M. The module will
525           be called ixp4xx_wdt.
526
527           Note: The internal IXP4xx watchdog does a soft CPU reset
528           which doesn't reset any peripherals. There are circumstances
529           where the watchdog will fail to reset the board correctly
530           (e.g., if the boot ROM is in an unreadable state).
531
532           Say N if you are unsure.
533
534 config S3C2410_WATCHDOG
535         tristate "S3C6410/S5Pv210/Exynos Watchdog"
536         depends on ARCH_S3C64XX || ARCH_S5PV210 || ARCH_EXYNOS || COMPILE_TEST
537         select WATCHDOG_CORE
538         help
539           Watchdog timer block in the Samsung S3C64xx, S5Pv210 and Exynos
540           SoCs. This will reboot the system when the timer expires with
541           the watchdog enabled.
542
543           The driver is limited by the speed of the system's PCLK
544           signal, so with reasonably fast systems (PCLK around 50-66MHz)
545           then watchdog intervals of over approximately 20seconds are
546           unavailable.
547
548           Choose Y/M here only if you build for such Samsung SoC.
549           The driver can be built as a module by choosing M, and will
550           be called s3c2410_wdt.
551
552 config SA1100_WATCHDOG
553         tristate "SA1100/PXA2xx watchdog"
554         depends on ARCH_SA1100 || ARCH_PXA || COMPILE_TEST
555         help
556           Watchdog timer embedded into SA11x0 and PXA2xx chips. This will
557           reboot your system when timeout is reached.
558
559           NOTE: once enabled, this timer cannot be disabled.
560
561           To compile this driver as a module, choose M here: the
562           module will be called sa1100_wdt.
563
564 config DW_WATCHDOG
565         tristate "Synopsys DesignWare watchdog"
566         depends on HAS_IOMEM
567         select WATCHDOG_CORE
568         help
569           Say Y here if to include support for the Synopsys DesignWare
570           watchdog timer found in many chips.
571           To compile this driver as a module, choose M here: the
572           module will be called dw_wdt.
573
574 config EP93XX_WATCHDOG
575         tristate "EP93xx Watchdog"
576         depends on ARCH_EP93XX || COMPILE_TEST
577         select WATCHDOG_CORE
578         help
579           Say Y here if to include support for the watchdog timer
580           embedded in the Cirrus Logic EP93xx family of devices.
581
582           To compile this driver as a module, choose M here: the
583           module will be called ep93xx_wdt.
584
585 config OMAP_WATCHDOG
586         tristate "OMAP Watchdog"
587         depends on ARCH_OMAP16XX || ARCH_OMAP2PLUS || COMPILE_TEST
588         select WATCHDOG_CORE
589         help
590           Support for TI OMAP1610/OMAP1710/OMAP2420/OMAP3430/OMAP4430 watchdog.
591           Say 'Y' here to enable the
592           OMAP1610/OMAP1710/OMAP2420/OMAP3430/OMAP4430 watchdog timer.
593
594 config PNX4008_WATCHDOG
595         tristate "LPC32XX Watchdog"
596         depends on ARCH_LPC32XX || COMPILE_TEST
597         select WATCHDOG_CORE
598         help
599           Say Y here if to include support for the watchdog timer
600           in the LPC32XX processor.
601           This driver can be built as a module by choosing M. The module
602           will be called pnx4008_wdt.
603
604           Say N if you are unsure.
605
606 config DAVINCI_WATCHDOG
607         tristate "DaVinci watchdog"
608         depends on ARCH_DAVINCI || ARCH_KEYSTONE || COMPILE_TEST
609         select WATCHDOG_CORE
610         help
611           Say Y here if to include support for the watchdog timer
612           in the DaVinci DM644x/DM646x or Keystone processors.
613           To compile this driver as a module, choose M here: the
614           module will be called davinci_wdt.
615
616           NOTE: once enabled, this timer cannot be disabled.
617           Say N if you are unsure.
618
619 config K3_RTI_WATCHDOG
620         tristate "Texas Instruments K3 RTI watchdog"
621         depends on ARCH_K3 || COMPILE_TEST
622         select WATCHDOG_CORE
623         help
624           Say Y here if you want to include support for the K3 watchdog
625           timer (RTI module) available in the K3 generation of processors.
626
627 config ORION_WATCHDOG
628         tristate "Orion watchdog"
629         depends on ARCH_ORION5X || ARCH_DOVE || MACH_DOVE || ARCH_MVEBU || COMPILE_TEST
630         depends on ARM
631         select WATCHDOG_CORE
632         help
633           Say Y here if to include support for the watchdog timer
634           in the Marvell Orion5x and Kirkwood ARM SoCs.
635           To compile this driver as a module, choose M here: the
636           module will be called orion_wdt.
637
638 config RN5T618_WATCHDOG
639         tristate "Ricoh RN5T618 watchdog"
640         depends on MFD_RN5T618 || COMPILE_TEST
641         select WATCHDOG_CORE
642         help
643           If you say yes here you get support for watchdog on the Ricoh
644           RN5T618 PMIC.
645
646           This driver can also be built as a module.  If so, the module
647           will be called rn5t618_wdt.
648
649 config SUNXI_WATCHDOG
650         tristate "Allwinner SoCs watchdog support"
651         depends on ARCH_SUNXI || COMPILE_TEST
652         select WATCHDOG_CORE
653         help
654           Say Y here to include support for the watchdog timer
655           in Allwinner SoCs.
656           To compile this driver as a module, choose M here: the
657           module will be called sunxi_wdt.
658
659 config NPCM7XX_WATCHDOG
660         tristate "Nuvoton NPCM750 watchdog"
661         depends on ARCH_NPCM || COMPILE_TEST
662         default y if ARCH_NPCM7XX
663         select WATCHDOG_CORE
664         help
665           Say Y here to include Watchdog timer support for the
666           watchdog embedded into the NPCM7xx.
667           This watchdog is used to reset the system and thus cannot be
668           compiled as a module.
669
670 config TWL4030_WATCHDOG
671         tristate "TWL4030 Watchdog"
672         depends on TWL4030_CORE
673         select WATCHDOG_CORE
674         help
675           Support for TI TWL4030 watchdog.  Say 'Y' here to enable the
676           watchdog timer support for TWL4030 chips.
677
678 config STMP3XXX_RTC_WATCHDOG
679         tristate "Freescale STMP3XXX & i.MX23/28 watchdog"
680         depends on RTC_DRV_STMP || COMPILE_TEST
681         select WATCHDOG_CORE
682         help
683           Say Y here to include support for the watchdog timer inside
684           the RTC for the STMP37XX/378X or i.MX23/28 SoC.
685           To compile this driver as a module, choose M here: the
686           module will be called stmp3xxx_rtc_wdt.
687
688 config TS4800_WATCHDOG
689         tristate "TS-4800 Watchdog"
690         depends on HAS_IOMEM && OF
691         depends on SOC_IMX51 || COMPILE_TEST
692         select WATCHDOG_CORE
693         select MFD_SYSCON
694         help
695           Technologic Systems TS-4800 has watchdog timer implemented in
696           an external FPGA. Say Y here if you want to support for the
697           watchdog timer on TS-4800 board.
698
699 config TS72XX_WATCHDOG
700         tristate "TS-72XX SBC Watchdog"
701         depends on MACH_TS72XX || COMPILE_TEST
702         select WATCHDOG_CORE
703         help
704           Technologic Systems TS-7200, TS-7250 and TS-7260 boards have
705           watchdog timer implemented in a external CPLD chip. Say Y here
706           if you want to support for the watchdog timer on TS-72XX boards.
707
708           To compile this driver as a module, choose M here: the
709           module will be called ts72xx_wdt.
710
711 config MAX63XX_WATCHDOG
712         tristate "Max63xx watchdog"
713         depends on HAS_IOMEM
714         select WATCHDOG_CORE
715         help
716           Support for memory mapped max63{69,70,71,72,73,74} watchdog timer.
717
718 config MAX77620_WATCHDOG
719         tristate "Maxim Max77620 Watchdog Timer"
720         depends on MFD_MAX77620 || MFD_MAX77714 || COMPILE_TEST
721         select WATCHDOG_CORE
722         help
723           This is the driver for the Max77620 watchdog timer.
724           Say 'Y' here to enable the watchdog timer support for
725           MAX77620 chips. To compile this driver as a module,
726           choose M here: the module will be called max77620_wdt.
727
728 config IMX2_WDT
729         tristate "IMX2+ Watchdog"
730         depends on ARCH_MXC || ARCH_LAYERSCAPE || COMPILE_TEST
731         select REGMAP_MMIO
732         select WATCHDOG_CORE
733         help
734           This is the driver for the hardware watchdog
735           on the Freescale IMX2 and later processors.
736           If you have one of these processors and wish to have
737           watchdog support enabled, say Y, otherwise say N.
738
739           To compile this driver as a module, choose M here: the
740           module will be called imx2_wdt.
741
742 config IMX_SC_WDT
743         tristate "IMX SC Watchdog"
744         depends on HAVE_ARM_SMCCC
745         depends on IMX_SCU || COMPILE_TEST
746         select WATCHDOG_CORE
747         help
748           This is the driver for the system controller watchdog
749           on the NXP i.MX SoCs with system controller inside, the
750           watchdog driver will call ARM SMC API and trap into
751           ARM-Trusted-Firmware for operations, ARM-Trusted-Firmware
752           will request system controller to execute the operations.
753           If you have one of these processors and wish to have
754           watchdog support enabled, say Y, otherwise say N.
755
756           To compile this driver as a module, choose M here: the
757           module will be called imx_sc_wdt.
758
759 config IMX7ULP_WDT
760         tristate "IMX7ULP Watchdog"
761         depends on ARCH_MXC || COMPILE_TEST
762         select WATCHDOG_CORE
763         help
764           This is the driver for the hardware watchdog on the Freescale
765           IMX7ULP and later processors. If you have one of these
766           processors and wish to have watchdog support enabled,
767           say Y, otherwise say N.
768
769           To compile this driver as a module, choose M here: the
770           module will be called imx7ulp_wdt.
771
772 config DB500_WATCHDOG
773         tristate "ST-Ericsson DB800 watchdog"
774         depends on MFD_DB8500_PRCMU
775         select WATCHDOG_CORE
776         default y
777         help
778           Say Y here to include Watchdog timer support for the watchdog
779           existing in the prcmu of ST-Ericsson DB8500 platform.
780
781           To compile this driver as a module, choose M here: the
782           module will be called db500_wdt.
783
784 config RETU_WATCHDOG
785         tristate "Retu watchdog"
786         depends on MFD_RETU
787         select WATCHDOG_CORE
788         help
789           Retu watchdog driver for Nokia Internet Tablets (770, N800,
790           N810). At least on N800 the watchdog cannot be disabled, so
791           this driver is essential and you should enable it.
792
793           To compile this driver as a module, choose M here: the
794           module will be called retu_wdt.
795
796 config MOXART_WDT
797         tristate "MOXART watchdog"
798         depends on ARCH_MOXART || COMPILE_TEST
799         help
800           Say Y here to include Watchdog timer support for the watchdog
801           existing on the MOXA ART SoC series platforms.
802
803           To compile this driver as a module, choose M here: the
804           module will be called moxart_wdt.
805
806 config ST_LPC_WATCHDOG
807         tristate "STMicroelectronics LPC Watchdog"
808         depends on ARCH_STI || COMPILE_TEST
809         depends on OF
810         select WATCHDOG_CORE
811         help
812           Say Y here to include STMicroelectronics Low Power Controller
813           (LPC) based Watchdog timer support.
814
815           To compile this driver as a module, choose M here: the
816           module will be called st_lpc_wdt.
817
818 config TEGRA_WATCHDOG
819         tristate "Tegra watchdog"
820         depends on (ARCH_TEGRA || COMPILE_TEST) && HAS_IOMEM
821         select WATCHDOG_CORE
822         help
823           Say Y here to include support for the watchdog timer
824           embedded in NVIDIA Tegra SoCs.
825
826           To compile this driver as a module, choose M here: the
827           module will be called tegra_wdt.
828
829 config QCOM_WDT
830         tristate "QCOM watchdog"
831         depends on HAS_IOMEM
832         depends on ARCH_QCOM || COMPILE_TEST
833         select WATCHDOG_CORE
834         help
835           Say Y here to include Watchdog timer support for the watchdog found
836           on QCOM chipsets.  Currently supported targets are the MSM8960,
837           APQ8064, and IPQ8064.
838
839           To compile this driver as a module, choose M here: the
840           module will be called qcom_wdt.
841
842 config MESON_GXBB_WATCHDOG
843         tristate "Amlogic Meson GXBB SoCs watchdog support"
844         depends on ARCH_MESON || COMPILE_TEST
845         select WATCHDOG_CORE
846         help
847           Say Y here to include support for the watchdog timer
848           in Amlogic Meson GXBB SoCs.
849           To compile this driver as a module, choose M here: the
850           module will be called meson_gxbb_wdt.
851
852 config MESON_WATCHDOG
853         tristate "Amlogic Meson SoCs watchdog support"
854         depends on ARCH_MESON || COMPILE_TEST
855         select WATCHDOG_CORE
856         help
857           Say Y here to include support for the watchdog timer
858           in Amlogic Meson SoCs.
859           To compile this driver as a module, choose M here: the
860           module will be called meson_wdt.
861
862 config MEDIATEK_WATCHDOG
863         tristate "Mediatek SoCs watchdog support"
864         depends on ARCH_MEDIATEK || COMPILE_TEST
865         default ARCH_MEDIATEK
866         select WATCHDOG_CORE
867         select RESET_CONTROLLER
868         help
869           Say Y here to include support for the watchdog timer
870           in Mediatek SoCs.
871           To compile this driver as a module, choose M here: the
872           module will be called mtk_wdt.
873
874 config DIGICOLOR_WATCHDOG
875         tristate "Conexant Digicolor SoCs watchdog support"
876         depends on ARCH_DIGICOLOR || COMPILE_TEST
877         select WATCHDOG_CORE
878         help
879           Say Y here to include support for the watchdog timer
880           in Conexant Digicolor SoCs.
881           To compile this driver as a module, choose M here: the
882           module will be called digicolor_wdt.
883
884 config ARM_SMC_WATCHDOG
885         tristate "ARM Secure Monitor Call based watchdog support"
886         depends on ARM || ARM64
887         depends on OF
888         depends on HAVE_ARM_SMCCC
889         select WATCHDOG_CORE
890         help
891           Say Y here to include support for a watchdog timer
892           implemented by the EL3 Secure Monitor on ARM platforms.
893           Requires firmware support.
894           To compile this driver as a module, choose M here: the
895           module will be called arm_smc_wdt.
896
897 config LPC18XX_WATCHDOG
898         tristate "LPC18xx/43xx Watchdog"
899         depends on ARCH_LPC18XX || COMPILE_TEST
900         depends on HAS_IOMEM
901         select WATCHDOG_CORE
902         help
903           Say Y here if to include support for the watchdog timer
904           in NXP LPC SoCs family, which includes LPC18xx/LPC43xx
905           processors.
906           To compile this driver as a module, choose M here: the
907           module will be called lpc18xx_wdt.
908
909 config RENESAS_WDT
910         tristate "Renesas WDT Watchdog"
911         depends on ARCH_RENESAS || COMPILE_TEST
912         select WATCHDOG_CORE
913         help
914           This driver adds watchdog support for the integrated watchdogs in the
915           Renesas R-Car and other SH-Mobile SoCs (usually named RWDT or SWDT).
916
917 config RENESAS_RZAWDT
918         tristate "Renesas RZ/A WDT Watchdog"
919         depends on ARCH_RENESAS || COMPILE_TEST
920         select WATCHDOG_CORE
921         help
922           This driver adds watchdog support for the integrated watchdogs in the
923           Renesas RZ/A SoCs. These watchdogs can be used to reset a system.
924
925 config RENESAS_RZN1WDT
926         tristate "Renesas RZ/N1 watchdog"
927         depends on ARCH_RENESAS || COMPILE_TEST
928         select WATCHDOG_CORE
929         help
930           This driver adds watchdog support for the integrated watchdogs in the
931           Renesas RZ/N1 SoCs. These watchdogs can be used to reset a system.
932
933 config RENESAS_RZG2LWDT
934         tristate "Renesas RZ/G2L WDT Watchdog"
935         depends on ARCH_RENESAS || COMPILE_TEST
936         select WATCHDOG_CORE
937         help
938           This driver adds watchdog support for the integrated watchdogs in the
939           Renesas RZ/G2L SoCs. These watchdogs can be used to reset a system.
940
941 config ASPEED_WATCHDOG
942         tristate "Aspeed BMC watchdog support"
943         depends on ARCH_ASPEED || COMPILE_TEST
944         select WATCHDOG_CORE
945         help
946           Say Y here to include support for the watchdog timer
947           in Aspeed BMC SoCs.
948
949           This driver is required to reboot the SoC.
950
951           To compile this driver as a module, choose M here: the
952           module will be called aspeed_wdt.
953
954 config STM32_WATCHDOG
955         tristate "STM32 Independent WatchDoG (IWDG) support"
956         depends on ARCH_STM32 || COMPILE_TEST
957         select WATCHDOG_CORE
958         default y
959         help
960           Say Y here to include support for the watchdog timer
961           in stm32 SoCs.
962
963           To compile this driver as a module, choose M here: the
964           module will be called stm32_iwdg.
965
966 config STPMIC1_WATCHDOG
967         tristate "STPMIC1 PMIC watchdog support"
968         depends on MFD_STPMIC1
969         select WATCHDOG_CORE
970         help
971           Say Y here to include watchdog support embedded into STPMIC1 PMIC.
972           If the watchdog timer expires, stpmic1 will shut down all its power
973           supplies.
974
975           To compile this driver as a module, choose M here: the
976           module will be called spmic1_wdt.
977
978 config UNIPHIER_WATCHDOG
979         tristate "UniPhier watchdog support"
980         depends on ARCH_UNIPHIER || COMPILE_TEST
981         depends on OF && MFD_SYSCON
982         select WATCHDOG_CORE
983         help
984           Say Y here to include support watchdog timer embedded
985           into the UniPhier system.
986
987           To compile this driver as a module, choose M here: the
988           module will be called uniphier_wdt.
989
990 config RTD119X_WATCHDOG
991         bool "Realtek RTD119x/RTD129x watchdog support"
992         depends on ARCH_REALTEK || COMPILE_TEST
993         depends on OF
994         select WATCHDOG_CORE
995         default ARCH_REALTEK
996         help
997           Say Y here to include support for the watchdog timer in
998           Realtek RTD1295 SoCs.
999
1000 config REALTEK_OTTO_WDT
1001         tristate "Realtek Otto MIPS watchdog support"
1002         depends on MACH_REALTEK_RTL || COMPILE_TEST
1003         depends on COMMON_CLK
1004         select WATCHDOG_CORE
1005         default MACH_REALTEK_RTL
1006         help
1007           Say Y here to include support for the watchdog timer on Realtek
1008           RTL838x, RTL839x, RTL930x SoCs. This watchdog has pretimeout
1009           notifications and system reset on timeout.
1010
1011           When built as a module this will be called realtek_otto_wdt.
1012
1013 config SPRD_WATCHDOG
1014         tristate "Spreadtrum watchdog support"
1015         depends on ARCH_SPRD || COMPILE_TEST
1016         select WATCHDOG_CORE
1017         help
1018           Say Y here to include watchdog timer supported
1019           by Spreadtrum system.
1020
1021 config PM8916_WATCHDOG
1022         tristate "QCOM PM8916 pmic watchdog"
1023         depends on OF && MFD_SPMI_PMIC
1024         select WATCHDOG_CORE
1025         help
1026           Say Y here to include support watchdog timer embedded into the
1027           pm8916 module.
1028
1029 config VISCONTI_WATCHDOG
1030         tristate "Toshiba Visconti series watchdog support"
1031         depends on ARCH_VISCONTI || COMPILE_TEST
1032         select WATCHDOG_CORE
1033         help
1034           Say Y here to include support for the watchdog timer in Toshiba
1035           Visconti SoCs.
1036
1037 config MSC313E_WATCHDOG
1038         tristate "MStar MSC313e watchdog"
1039         depends on ARCH_MSTARV7 || COMPILE_TEST
1040         select WATCHDOG_CORE
1041         help
1042           Say Y here to include support for the Watchdog timer embedded
1043           into MStar MSC313e chips. This will reboot your system when the
1044           timeout is reached.
1045
1046           To compile this driver as a module, choose M here: the
1047           module will be called msc313e_wdt.
1048
1049 config APPLE_WATCHDOG
1050         tristate "Apple SoC watchdog"
1051         depends on ARCH_APPLE || COMPILE_TEST
1052         select WATCHDOG_CORE
1053         help
1054           Say Y here to include support for the Watchdog found in Apple
1055           SoCs such as the M1. Next to the common watchdog features this
1056           driver is also required in order to reboot these SoCs.
1057
1058           To compile this driver as a module, choose M here: the
1059           module will be called apple_wdt.
1060
1061 config SUNPLUS_WATCHDOG
1062         tristate "Sunplus watchdog support"
1063         depends on ARCH_SUNPLUS || COMPILE_TEST
1064         select WATCHDOG_CORE
1065         help
1066           Say Y here to include support for the watchdog timer
1067           in Sunplus SoCs.
1068
1069           To compile this driver as a module, choose M here: the
1070           module will be called sunplus_wdt.
1071
1072 # X86 (i386 + ia64 + x86_64) Architecture
1073
1074 config ACQUIRE_WDT
1075         tristate "Acquire SBC Watchdog Timer"
1076         depends on X86
1077         help
1078           This is the driver for the hardware watchdog on Single Board
1079           Computers produced by Acquire Inc (and others). This watchdog
1080           simply watches your kernel to make sure it doesn't freeze, and if
1081           it does, it reboots your computer after a certain amount of time.
1082
1083           To compile this driver as a module, choose M here: the
1084           module will be called acquirewdt.
1085
1086           Most people will say N.
1087
1088 config ADVANTECH_WDT
1089         tristate "Advantech SBC Watchdog Timer"
1090         depends on (X86 || COMPILE_TEST) && HAS_IOPORT
1091         help
1092           If you are configuring a Linux kernel for the Advantech single-board
1093           computer, say `Y' here to support its built-in watchdog timer
1094           feature. More information can be found at
1095           <https://www.advantech.com.tw/products/>
1096
1097 config ADVANTECH_EC_WDT
1098         tristate "Advantech Embedded Controller Watchdog Timer"
1099         depends on (X86 || COMPILE_TEST) && HAS_IOPORT
1100         select ISA_BUS_API
1101         select WATCHDOG_CORE
1102         help
1103                 This driver supports Advantech products with ITE based Embedded Controller.
1104                 It does not support Advantech products with other ECs or without EC.
1105
1106 config ALIM1535_WDT
1107         tristate "ALi M1535 PMU Watchdog Timer"
1108         depends on (X86 || COMPILE_TEST) && PCI
1109         help
1110           This is the driver for the hardware watchdog on the ALi M1535 PMU.
1111
1112           To compile this driver as a module, choose M here: the
1113           module will be called alim1535_wdt.
1114
1115           Most people will say N.
1116
1117 config ALIM7101_WDT
1118         tristate "ALi M7101 PMU Computer Watchdog"
1119         depends on PCI
1120         help
1121           This is the driver for the hardware watchdog on the ALi M7101 PMU
1122           as used in the x86 Cobalt servers and also found in some
1123           SPARC Netra servers too.
1124
1125           To compile this driver as a module, choose M here: the
1126           module will be called alim7101_wdt.
1127
1128           Most people will say N.
1129
1130 config EBC_C384_WDT
1131         tristate "WinSystems EBC-C384 Watchdog Timer"
1132         depends on (X86 || COMPILE_TEST) && HAS_IOPORT
1133         select ISA_BUS_API
1134         select WATCHDOG_CORE
1135         help
1136           Enables watchdog timer support for the watchdog timer on the
1137           WinSystems EBC-C384 motherboard. The timeout may be configured via
1138           the timeout module parameter.
1139
1140 config EXAR_WDT
1141         tristate "Exar Watchdog Timer"
1142         depends on (X86 || COMPILE_TEST) && HAS_IOPORT
1143         select WATCHDOG_CORE
1144         help
1145           Enables watchdog timer support for the watchdog timer present
1146           in some Exar/MaxLinear UART chips like the XR28V38x.
1147
1148           To compile this driver as a module, choose M here: the
1149           module will be called exar_wdt.
1150
1151 config F71808E_WDT
1152         tristate "Fintek F718xx, F818xx Super I/O Watchdog"
1153         depends on (X86 || COMPILE_TEST) && HAS_IOPORT
1154         select WATCHDOG_CORE
1155         help
1156           This is the driver for the hardware watchdog on the Fintek F71808E,
1157           F71862FG, F71868, F71869, F71882FG, F71889FG, F81803, F81865, and
1158           F81866 Super I/O controllers.
1159
1160           You can compile this driver directly into the kernel, or use
1161           it as a module.  The module will be called f71808e_wdt.
1162
1163 config SP5100_TCO
1164         tristate "AMD/ATI SP5100 TCO Timer/Watchdog"
1165         depends on (X86 || COMPILE_TEST) && PCI && HAS_IOPORT
1166         select WATCHDOG_CORE
1167         help
1168           Hardware watchdog driver for the AMD/ATI SP5100 chipset. The TCO
1169           (Total Cost of Ownership) timer is a watchdog timer that will reboot
1170           the machine after its expiration. The expiration time can be
1171           configured with the "heartbeat" parameter.
1172
1173           To compile this driver as a module, choose M here: the
1174           module will be called sp5100_tco.
1175
1176 config GEODE_WDT
1177         tristate "AMD Geode CS5535/CS5536 Watchdog"
1178         depends on CS5535_MFGPT
1179         help
1180           This driver enables a watchdog capability built into the
1181           CS5535/CS5536 companion chips for the AMD Geode GX and LX
1182           processors.  This watchdog watches your kernel to make sure
1183           it doesn't freeze, and if it does, it reboots your computer after
1184           a certain amount of time.
1185
1186           You can compile this driver directly into the kernel, or use
1187           it as a module.  The module will be called geodewdt.
1188
1189 config SC520_WDT
1190         tristate "AMD Elan SC520 processor Watchdog"
1191         depends on MELAN || COMPILE_TEST
1192         help
1193           This is the driver for the hardware watchdog built in to the
1194           AMD "Elan" SC520 microcomputer commonly used in embedded systems.
1195           This watchdog simply watches your kernel to make sure it doesn't
1196           freeze, and if it does, it reboots your computer after a certain
1197           amount of time.
1198
1199           You can compile this driver directly into the kernel, or use
1200           it as a module.  The module will be called sc520_wdt.
1201
1202 config SBC_FITPC2_WATCHDOG
1203         tristate "Compulab SBC-FITPC2 watchdog"
1204         depends on (X86 || COMPILE_TEST) && HAS_IOPORT
1205         help
1206           This is the driver for the built-in watchdog timer on the fit-PC2,
1207           fit-PC2i, CM-iAM single-board computers made by Compulab.
1208
1209           It's possible to enable the watchdog timer either from BIOS (F2) or
1210           from booted Linux.
1211           When the "Watchdog Timer Value" is enabled one can set 31-255 seconds
1212           operational range.
1213
1214           Entering BIOS setup temporarily disables watchdog operation regardless
1215           of current state, so system will not be restarted while user is in
1216           BIOS setup.
1217
1218           Once the watchdog is enabled the system will be restarted every
1219           "Watchdog Timer Value" period, so to prevent it user can restart or
1220           disable the watchdog.
1221
1222           To compile this driver as a module, choose M here: the
1223           module will be called sbc_fitpc2_wdt.
1224
1225           Most people will say N.
1226
1227 config EUROTECH_WDT
1228         tristate "Eurotech CPU-1220/1410 Watchdog Timer"
1229         depends on (X86 || COMPILE_TEST) && HAS_IOPORT
1230         help
1231           Enable support for the watchdog timer on the Eurotech CPU-1220 and
1232           CPU-1410 cards.  These are PC/104 SBCs. Spec sheets and product
1233           information are at <http://www.eurotech.it/>.
1234
1235 config IB700_WDT
1236         tristate "IB700 SBC Watchdog Timer"
1237         depends on (X86 || COMPILE_TEST) && HAS_IOPORT
1238         help
1239           This is the driver for the hardware watchdog on the IB700 Single
1240           Board Computer produced by TMC Technology (www.tmc-uk.com). This
1241           watchdog simply watches your kernel to make sure it doesn't freeze,
1242           and if it does, it reboots your computer after a certain amount of time.
1243
1244           This driver is like the WDT501 driver but for slightly different
1245           hardware.
1246
1247           To compile this driver as a module, choose M here: the
1248           module will be called ib700wdt.
1249
1250           Most people will say N.
1251
1252 config IBMASR
1253         tristate "IBM Automatic Server Restart"
1254         depends on (X86 || COMPILE_TEST) && HAS_IOPORT
1255         help
1256           This is the driver for the IBM Automatic Server Restart watchdog
1257           timer built-in into some eServer xSeries machines.
1258
1259           To compile this driver as a module, choose M here: the
1260           module will be called ibmasr.
1261
1262 config WAFER_WDT
1263         tristate "ICP Single Board Computer Watchdog Timer"
1264         depends on (X86 || COMPILE_TEST) && HAS_IOPORT
1265         help
1266           This is a driver for the hardware watchdog on the ICP Single
1267           Board Computer. This driver is working on (at least) the following
1268           IPC SBC's: Wafer 5823, Rocky 4783, Rocky 3703 and Rocky 3782.
1269
1270           To compile this driver as a module, choose M here: the
1271           module will be called wafer5823wdt.
1272
1273 config I6300ESB_WDT
1274         tristate "Intel 6300ESB Timer/Watchdog"
1275         depends on PCI
1276         select WATCHDOG_CORE
1277         help
1278           Hardware driver for the watchdog timer built into the Intel
1279           6300ESB controller hub.
1280
1281           To compile this driver as a module, choose M here: the
1282           module will be called i6300esb.
1283
1284 config IE6XX_WDT
1285         tristate "Intel Atom E6xx Watchdog"
1286         depends on (X86 || COMPILE_TEST) && PCI && HAS_IOPORT
1287         select WATCHDOG_CORE
1288         select MFD_CORE
1289         select LPC_SCH
1290         help
1291           Hardware driver for the watchdog timer built into the Intel
1292           Atom E6XX (TunnelCreek) processor.
1293
1294           To compile this driver as a module, choose M here: the
1295           module will be called ie6xx_wdt.
1296
1297 config INTEL_MID_WATCHDOG
1298         tristate "Intel MID Watchdog Timer"
1299         depends on X86_INTEL_MID
1300         select WATCHDOG_CORE
1301         help
1302           Watchdog timer driver built into the Intel SCU for Intel MID
1303           Platforms.
1304
1305           This driver currently supports only the watchdog evolution
1306           implementation in SCU, available for Merrifield generation.
1307
1308           To compile this driver as a module, choose M here.
1309
1310 config ITCO_WDT
1311         tristate "Intel TCO Timer/Watchdog"
1312         depends on X86 && PCI
1313         select WATCHDOG_CORE
1314         depends on I2C || I2C=n
1315         depends on MFD_INTEL_PMC_BXT || !MFD_INTEL_PMC_BXT
1316         depends on HAS_IOPORT # for I2C_I801
1317         select LPC_ICH if !EXPERT
1318         select I2C_I801 if !EXPERT && I2C
1319         help
1320           Hardware driver for the intel TCO timer based watchdog devices.
1321           These drivers are included in the Intel 82801 I/O Controller
1322           Hub family (from ICH0 up to ICH10) and in the Intel 63xxESB
1323           controller hub.
1324
1325           The TCO (Total Cost of Ownership) timer is a watchdog timer
1326           that will reboot the machine after its second expiration. The
1327           expiration time can be configured with the "heartbeat" parameter.
1328
1329           On some motherboards the driver may fail to reset the chipset's
1330           NO_REBOOT flag which prevents the watchdog from rebooting the
1331           machine. If this is the case you will get a kernel message like
1332           "failed to reset NO_REBOOT flag, reboot disabled by hardware".
1333
1334           To compile this driver as a module, choose M here: the
1335           module will be called iTCO_wdt.
1336
1337 config ITCO_VENDOR_SUPPORT
1338         bool "Intel TCO Timer/Watchdog Specific Vendor Support"
1339         depends on ITCO_WDT
1340         help
1341           Add vendor specific support to the intel TCO timer based watchdog
1342           devices. At this moment we only have additional support for some
1343           SuperMicro Inc. motherboards.
1344
1345 config IT8712F_WDT
1346         tristate "IT8712F (Smart Guardian) Watchdog Timer"
1347         depends on (X86 || COMPILE_TEST) && HAS_IOPORT
1348         help
1349           This is the driver for the built-in watchdog timer on the IT8712F
1350           Super I/0 chipset used on many motherboards.
1351
1352           If the driver does not work, then make sure that the game port in
1353           the BIOS is enabled.
1354
1355           To compile this driver as a module, choose M here: the
1356           module will be called it8712f_wdt.
1357
1358 config IT87_WDT
1359         tristate "IT87 Watchdog Timer"
1360         depends on (X86 || COMPILE_TEST) && HAS_IOPORT
1361         select WATCHDOG_CORE
1362         help
1363           This is the driver for the hardware watchdog on the ITE IT8607,
1364           IT8620, IT8622, IT8625, IT8628, IT8655, IT8665, IT8686, IT8702,
1365           IT8712, IT8716, IT8718, IT8720, IT8721, IT8726, IT8728, and
1366           IT8783 Super I/O chips.
1367
1368           This watchdog simply watches your kernel to make sure it doesn't
1369           freeze, and if it does, it reboots your computer after a certain
1370           amount of time.
1371
1372           To compile this driver as a module, choose M here: the module will
1373           be called it87_wdt.
1374
1375 config HP_WATCHDOG
1376         tristate "HP ProLiant iLO2+ Hardware Watchdog Timer"
1377         select WATCHDOG_CORE
1378         depends on (ARM64 || X86 || COMPILE_TEST) && PCI
1379         help
1380           A software monitoring watchdog and NMI handling driver. This driver
1381           will detect lockups and provide a stack trace. This is a driver that
1382           will only load on an HP ProLiant system with a minimum of iLO2 support.
1383           To compile this driver as a module, choose M here: the module will be
1384           called hpwdt.
1385
1386 config HPWDT_NMI_DECODING
1387         bool "NMI support for the HP ProLiant iLO2+ Hardware Watchdog Timer"
1388         depends on X86 && HP_WATCHDOG
1389         default y
1390         help
1391           Enables the NMI handler for the watchdog pretimeout NMI and the iLO
1392           "Generate NMI to System" virtual button.  When an NMI is claimed
1393           by the driver, panic is called.
1394
1395 config KEMPLD_WDT
1396         tristate "Kontron COM Watchdog Timer"
1397         depends on MFD_KEMPLD
1398         select WATCHDOG_CORE
1399         help
1400           Support for the PLD watchdog on some Kontron ETX and COMexpress
1401           (ETXexpress) modules
1402
1403           This driver can also be built as a module. If so, the module will be
1404           called kempld_wdt.
1405
1406 config SC1200_WDT
1407         tristate "National Semiconductor PC87307/PC97307 (ala SC1200) Watchdog"
1408         depends on (X86 || COMPILE_TEST) && HAS_IOPORT
1409         help
1410           This is a driver for National Semiconductor PC87307/PC97307 hardware
1411           watchdog cards as found on the SC1200. This watchdog is mainly used
1412           for power management purposes and can be used to power down the device
1413           during inactivity periods (includes interrupt activity monitoring).
1414
1415           To compile this driver as a module, choose M here: the
1416           module will be called sc1200wdt.
1417
1418           Most people will say N.
1419
1420 config SCx200_WDT
1421         tristate "National Semiconductor SCx200 Watchdog"
1422         depends on SCx200 && PCI
1423         help
1424           Enable the built-in watchdog timer support on the National
1425           Semiconductor SCx200 processors.
1426
1427           If compiled as a module, it will be called scx200_wdt.
1428
1429 config PC87413_WDT
1430         tristate "NS PC87413 watchdog"
1431         depends on (X86 || COMPILE_TEST) && HAS_IOPORT
1432         help
1433           This is the driver for the hardware watchdog on the PC87413 chipset
1434           This watchdog simply watches your kernel to make sure it doesn't
1435           freeze, and if it does, it reboots your computer after a certain
1436           amount of time.
1437
1438           To compile this driver as a module, choose M here: the
1439           module will be called pc87413_wdt.
1440
1441           Most people will say N.
1442
1443 config NV_TCO
1444         tristate "nVidia TCO Timer/Watchdog"
1445         depends on (X86 || COMPILE_TEST) && PCI && HAS_IOPORT
1446         help
1447           Hardware driver for the TCO timer built into the nVidia Hub family
1448           (such as the MCP51).  The TCO (Total Cost of Ownership) timer is a
1449           watchdog timer that will reboot the machine after its second
1450           expiration. The expiration time can be configured with the
1451           "heartbeat" parameter.
1452
1453           On some motherboards the driver may fail to reset the chipset's
1454           NO_REBOOT flag which prevents the watchdog from rebooting the
1455           machine. If this is the case you will get a kernel message like
1456           "failed to reset NO_REBOOT flag, reboot disabled by hardware".
1457
1458           To compile this driver as a module, choose M here: the
1459           module will be called nv_tco.
1460
1461 config RDC321X_WDT
1462         tristate "RDC R-321x SoC watchdog"
1463         depends on X86_RDC321X || COMPILE_TEST
1464         depends on PCI
1465         help
1466           This is the driver for the built in hardware watchdog
1467           in the RDC R-321x SoC.
1468
1469           To compile this driver as a module, choose M here: the
1470           module will be called rdc321x_wdt.
1471
1472 config 60XX_WDT
1473         tristate "SBC-60XX Watchdog Timer"
1474         depends on (X86 || COMPILE_TEST) && HAS_IOPORT
1475         help
1476           This driver can be used with the watchdog timer found on some
1477           single board computers, namely the 6010 PII based computer.
1478           It may well work with other cards.  It reads port 0x443 to enable
1479           and re-set the watchdog timer, and reads port 0x45 to disable
1480           the watchdog.  If you have a card that behave in similar ways,
1481           you can probably make this driver work with your card as well.
1482
1483           You can compile this driver directly into the kernel, or use
1484           it as a module.  The module will be called sbc60xxwdt.
1485
1486 config SBC8360_WDT
1487         tristate "SBC8360 Watchdog Timer"
1488         depends on X86_32
1489         help
1490
1491           This is the driver for the hardware watchdog on the SBC8360 Single
1492           Board Computer produced by Axiomtek Co., Ltd. (www.axiomtek.com).
1493
1494           To compile this driver as a module, choose M here: the
1495           module will be called sbc8360.
1496
1497           Most people will say N.
1498
1499 config SBC7240_WDT
1500         tristate "SBC Nano 7240 Watchdog Timer"
1501         depends on X86_32 && !UML
1502         help
1503           This is the driver for the hardware watchdog found on the IEI
1504           single board computers EPIC Nano 7240 (and likely others). This
1505           watchdog simply watches your kernel to make sure it doesn't freeze,
1506           and if it does, it reboots your computer after a certain amount of
1507           time.
1508
1509           To compile this driver as a module, choose M here: the
1510           module will be called sbc7240_wdt.
1511
1512 config CPU5_WDT
1513         tristate "SMA CPU5 Watchdog"
1514         depends on (X86 || COMPILE_TEST) && HAS_IOPORT
1515         help
1516           TBD.
1517           To compile this driver as a module, choose M here: the
1518           module will be called cpu5wdt.
1519
1520 config SMSC_SCH311X_WDT
1521         tristate "SMSC SCH311X Watchdog Timer"
1522         depends on (X86 || COMPILE_TEST) && HAS_IOPORT
1523         help
1524           This is the driver for the hardware watchdog timer on the
1525           SMSC SCH3112, SCH3114 and SCH3116 Super IO chipset
1526           (LPC IO with 8042 KBC, Reset Generation, HWM and multiple
1527           serial ports).
1528
1529           To compile this driver as a module, choose M here: the
1530           module will be called sch311x_wdt.
1531
1532 config SMSC37B787_WDT
1533         tristate "Winbond SMsC37B787 Watchdog Timer"
1534         depends on (X86 || COMPILE_TEST) && HAS_IOPORT
1535         help
1536           This is the driver for the hardware watchdog component on the
1537           Winbond SMsC37B787 chipset as used on the NetRunner Mainboard
1538           from Vision Systems and maybe others.
1539
1540           This watchdog simply watches your kernel to make sure it doesn't
1541           freeze, and if it does, it reboots your computer after a certain
1542           amount of time.
1543
1544           Usually a userspace daemon will notify the kernel WDT driver that
1545           userspace is still alive, at regular intervals.
1546
1547           To compile this driver as a module, choose M here: the
1548           module will be called smsc37b787_wdt.
1549
1550           Most people will say N.
1551
1552 config TQMX86_WDT
1553         tristate "TQ-Systems TQMX86 Watchdog Timer"
1554         depends on X86 || COMPILE_TEST
1555         select WATCHDOG_CORE
1556         help
1557           This is the driver for the hardware watchdog timer in the TQMX86 IO
1558           controller found on some of their ComExpress Modules.
1559
1560           To compile this driver as a module, choose M here; the module
1561           will be called tqmx86_wdt.
1562
1563           Most people will say N.
1564
1565 config VIA_WDT
1566         tristate "VIA Watchdog Timer"
1567         depends on (X86 || COMPILE_TEST) && PCI
1568         select WATCHDOG_CORE
1569         help
1570           This is the driver for the hardware watchdog timer on VIA
1571           southbridge chipset CX700, VX800/VX820 or VX855/VX875.
1572
1573           To compile this driver as a module, choose M here; the module
1574           will be called via_wdt.
1575
1576           Most people will say N.
1577
1578 config W83627HF_WDT
1579         tristate "Watchdog timer for W83627HF/W83627DHG and compatibles"
1580         depends on (X86 || COMPILE_TEST) && HAS_IOPORT
1581         select WATCHDOG_CORE
1582         help
1583           This is the driver for the hardware watchdog on the following
1584           Super I/O chips.
1585                 W83627DHG/DHG-P/EHF/EHG/F/G/HF/S/SF/THF/UHG/UG
1586                 W83637HF
1587                 W83667HG/HG-B
1588                 W83687THF
1589                 W83697HF
1590                 W83697UG
1591                 NCT6775
1592                 NCT6776
1593                 NCT6779
1594                 NCT6791
1595                 NCT6792
1596                 NCT6102D/04D/06D
1597                 NCT6116D
1598
1599           This watchdog simply watches your kernel to make sure it doesn't
1600           freeze, and if it does, it reboots your computer after a certain
1601           amount of time.
1602
1603           To compile this driver as a module, choose M here: the
1604           module will be called w83627hf_wdt.
1605
1606           Most people will say N.
1607
1608 config W83877F_WDT
1609         tristate "W83877F (EMACS) Watchdog Timer"
1610         depends on (X86 || COMPILE_TEST) && HAS_IOPORT
1611         help
1612           This is the driver for the hardware watchdog on the W83877F chipset
1613           as used in EMACS PC-104 motherboards (and likely others).  This
1614           watchdog simply watches your kernel to make sure it doesn't freeze,
1615           and if it does, it reboots your computer after a certain amount of
1616           time.
1617
1618           To compile this driver as a module, choose M here: the
1619           module will be called w83877f_wdt.
1620
1621           Most people will say N.
1622
1623 config W83977F_WDT
1624         tristate "W83977F (PCM-5335) Watchdog Timer"
1625         depends on (X86 || COMPILE_TEST) && HAS_IOPORT
1626         help
1627           This is the driver for the hardware watchdog on the W83977F I/O chip
1628           as used in AAEON's PCM-5335 SBC (and likely others).  This
1629           watchdog simply watches your kernel to make sure it doesn't freeze,
1630           and if it does, it reboots your computer after a certain amount of
1631           time.
1632
1633           To compile this driver as a module, choose M here: the
1634           module will be called w83977f_wdt.
1635
1636 config MACHZ_WDT
1637         tristate "ZF MachZ Watchdog"
1638         depends on (X86 || COMPILE_TEST) && HAS_IOPORT
1639         help
1640           If you are using a ZF Micro MachZ processor, say Y here, otherwise
1641           N.  This is the driver for the watchdog timer built-in on that
1642           processor using ZF-Logic interface.  This watchdog simply watches
1643           your kernel to make sure it doesn't freeze, and if it does, it
1644           reboots your computer after a certain amount of time.
1645
1646           To compile this driver as a module, choose M here: the
1647           module will be called machzwd.
1648
1649 config SBC_EPX_C3_WATCHDOG
1650         tristate "Winsystems SBC EPX-C3 watchdog"
1651         depends on (X86 || COMPILE_TEST) && HAS_IOPORT
1652         help
1653           This is the driver for the built-in watchdog timer on the EPX-C3
1654           Single-board computer made by Winsystems, Inc.
1655
1656           *Note*: This hardware watchdog is not probeable and thus there
1657           is no way to know if writing to its IO address will corrupt
1658           your system or have any real effect.  The only way to be sure
1659           that this driver does what you want is to make sure you
1660           are running it on an EPX-C3 from Winsystems with the watchdog
1661           timer at IO address 0x1ee and 0x1ef.  It will write to both those
1662           IO ports.  Basically, the assumption is made that if you compile
1663           this driver into your kernel and/or load it as a module, that you
1664           know what you are doing and that you are in fact running on an
1665           EPX-C3 board!
1666
1667           To compile this driver as a module, choose M here: the
1668           module will be called sbc_epx_c3.
1669
1670 config INTEL_MEI_WDT
1671         tristate "Intel MEI iAMT Watchdog"
1672         depends on INTEL_MEI && X86
1673         select WATCHDOG_CORE
1674         help
1675           A device driver for the Intel MEI iAMT watchdog.
1676
1677           The Intel AMT Watchdog is an OS Health (Hang/Crash) watchdog.
1678           Whenever the OS hangs or crashes, iAMT will send an event
1679           to any subscriber to this event. The watchdog doesn't reset the
1680           the platform.
1681
1682           To compile this driver as a module, choose M here:
1683           the module will be called mei_wdt.
1684
1685 config NI903X_WDT
1686         tristate "NI 903x/913x Watchdog"
1687         depends on X86 && ACPI
1688         select WATCHDOG_CORE
1689         help
1690           This is the driver for the watchdog timer on the National Instruments
1691           903x/913x real-time controllers.
1692
1693           To compile this driver as a module, choose M here: the module will be
1694           called ni903x_wdt.
1695
1696 config NIC7018_WDT
1697         tristate "NIC7018 Watchdog"
1698         depends on X86 && ACPI
1699         select WATCHDOG_CORE
1700         help
1701           Support for National Instruments NIC7018 Watchdog.
1702
1703           To compile this driver as a module, choose M here: the module will be
1704           called nic7018_wdt.
1705
1706 config SIEMENS_SIMATIC_IPC_WDT
1707         tristate "Siemens Simatic IPC Watchdog"
1708         depends on SIEMENS_SIMATIC_IPC && PCI
1709         default y
1710         select WATCHDOG_CORE
1711         select P2SB if X86
1712         help
1713           This driver adds support for several watchdogs found in Industrial
1714           PCs from Siemens.
1715
1716           To compile this driver as a module, choose M here: the module will be
1717           called simatic-ipc-wdt.
1718
1719 # M68K Architecture
1720
1721 config M54xx_WATCHDOG
1722         tristate "MCF54xx watchdog support"
1723         depends on M548x
1724         help
1725           To compile this driver as a module, choose M here: the
1726           module will be called m54xx_wdt.
1727
1728 # MicroBlaze Architecture
1729
1730 # MIPS Architecture
1731
1732 config ATH79_WDT
1733         tristate "Atheros AR71XX/AR724X/AR913X hardware watchdog"
1734         depends on ATH79 || (ARM && COMPILE_TEST)
1735         help
1736           Hardware driver for the built-in watchdog timer on the Atheros
1737           AR71XX/AR724X/AR913X SoCs.
1738
1739 config BCM47XX_WDT
1740         tristate "Broadcom BCM47xx Watchdog Timer"
1741         depends on BCM47XX || ARCH_BCM_5301X || COMPILE_TEST
1742         select WATCHDOG_CORE
1743         help
1744           Hardware driver for the Broadcom BCM47xx Watchdog Timer.
1745
1746 config RC32434_WDT
1747         tristate "IDT RC32434 SoC Watchdog Timer"
1748         depends on MIKROTIK_RB532
1749         help
1750           Hardware driver for the IDT RC32434 SoC built-in
1751           watchdog timer.
1752
1753           To compile this driver as a module, choose M here: the
1754           module will be called rc32434_wdt.
1755
1756 config INDYDOG
1757         tristate "Indy/I2 Hardware Watchdog"
1758         depends on SGI_HAS_INDYDOG
1759         help
1760           Hardware driver for the Indy's/I2's watchdog. This is a
1761           watchdog timer that will reboot the machine after a 60 second
1762           timer expired and no process has written to /dev/watchdog during
1763           that time.
1764
1765 config JZ4740_WDT
1766         tristate "Ingenic jz4740 SoC hardware watchdog"
1767         depends on MIPS || COMPILE_TEST
1768         depends on COMMON_CLK
1769         select WATCHDOG_CORE
1770         select MFD_SYSCON
1771         help
1772           Hardware driver for the built-in watchdog timer on Ingenic jz4740 SoCs.
1773
1774 config WDT_MTX1
1775         tristate "MTX-1 Hardware Watchdog"
1776         depends on MIPS_MTX1 || (MIPS && COMPILE_TEST)
1777         help
1778           Hardware driver for the MTX-1 boards. This is a watchdog timer that
1779           will reboot the machine after a 100 seconds timer expired.
1780
1781 config SIBYTE_WDOG
1782         tristate "Sibyte SoC hardware watchdog"
1783         depends on CPU_SB1
1784         help
1785           Watchdog driver for the built in watchdog hardware in Sibyte
1786           SoC processors.  There are apparently two watchdog timers
1787           on such processors; this driver supports only the first one,
1788           because currently Linux only supports exporting one watchdog
1789           to userspace.
1790
1791           To compile this driver as a loadable module, choose M here.
1792           The module will be called sb_wdog.
1793
1794 config TXX9_WDT
1795         tristate "Toshiba TXx9 Watchdog Timer"
1796         depends on CPU_TX49XX || (MIPS && COMPILE_TEST)
1797         select WATCHDOG_CORE
1798         help
1799           Hardware driver for the built-in watchdog timer on TXx9 MIPS SoCs.
1800
1801 config OCTEON_WDT
1802         tristate "Cavium OCTEON SOC family Watchdog Timer"
1803         depends on CAVIUM_OCTEON_SOC
1804         default y
1805         select WATCHDOG_CORE
1806         select EXPORT_UASM if OCTEON_WDT = m
1807         help
1808           Hardware driver for OCTEON's on chip watchdog timer.
1809           Enables the watchdog for all cores running Linux. It
1810           installs a NMI handler and pokes the watchdog based on an
1811           interrupt.  On first expiration of the watchdog, the
1812           interrupt handler pokes it.  The second expiration causes an
1813           NMI that prints a message. The third expiration causes a
1814           global soft reset.
1815
1816           When userspace has /dev/watchdog open, no poking is done
1817           from the first interrupt, it is then only poked when the
1818           device is written.
1819
1820 config MARVELL_GTI_WDT
1821         tristate "Marvell GTI Watchdog driver"
1822         depends on ARCH_THUNDER || (COMPILE_TEST && 64BIT)
1823         default y
1824         select WATCHDOG_CORE
1825         help
1826           Marvell GTI hardware supports watchdog timer. First timeout
1827           works as watchdog pretimeout and installed interrupt handler
1828           will be called on first timeout. Hardware can generate interrupt
1829           to SCP on second timeout but it is not enabled, so second
1830           timeout is ignored. If device poke does not happen then system
1831           will reboot on third timeout.
1832
1833 config BCM2835_WDT
1834         tristate "Broadcom BCM2835 hardware watchdog"
1835         depends on ARCH_BCM2835 || (OF && COMPILE_TEST)
1836         select WATCHDOG_CORE
1837         help
1838           Watchdog driver for the built in watchdog hardware in Broadcom
1839           BCM2835 SoC.
1840
1841           To compile this driver as a loadable module, choose M here.
1842           The module will be called bcm2835_wdt.
1843
1844 config BCM_KONA_WDT
1845         tristate "BCM Kona Watchdog"
1846         depends on ARCH_BCM_MOBILE || COMPILE_TEST
1847         select WATCHDOG_CORE
1848         help
1849           Support for the watchdog timer on the following Broadcom BCM281xx
1850           family, which includes BCM11130, BCM11140, BCM11351, BCM28145 and
1851           BCM28155 variants.
1852
1853           Say 'Y' or 'M' here to enable the driver. The module will be called
1854           bcm_kona_wdt.
1855
1856 config BCM_KONA_WDT_DEBUG
1857         bool "DEBUGFS support for BCM Kona Watchdog"
1858         depends on BCM_KONA_WDT || COMPILE_TEST
1859         help
1860           If enabled, adds /sys/kernel/debug/bcm_kona_wdt/info which provides
1861           access to the driver's internal data structures as well as watchdog
1862           timer hardware registres.
1863
1864           If in doubt, say 'N'.
1865
1866 config BCM7038_WDT
1867         tristate "BCM63xx/BCM7038 Watchdog"
1868         select WATCHDOG_CORE
1869         depends on HAS_IOMEM
1870         depends on ARCH_BCMBCA || ARCH_BRCMSTB || BMIPS_GENERIC || BCM63XX || COMPILE_TEST
1871         help
1872           Watchdog driver for the built-in hardware in Broadcom 7038 and
1873           later SoCs used in set-top boxes.  BCM7038 was made public
1874           during the 2004 CES, and since then, many Broadcom chips use this
1875           watchdog block, including some cable modem chips and DSL (63xx)
1876           chips.
1877
1878 config IMGPDC_WDT
1879         tristate "Imagination Technologies PDC Watchdog Timer"
1880         depends on HAS_IOMEM
1881         depends on MIPS || COMPILE_TEST
1882         select WATCHDOG_CORE
1883         help
1884           Driver for Imagination Technologies PowerDown Controller
1885           Watchdog Timer.
1886
1887           To compile this driver as a loadable module, choose M here.
1888           The module will be called imgpdc_wdt.
1889
1890 config LANTIQ_WDT
1891         tristate "Lantiq SoC watchdog"
1892         depends on LANTIQ
1893         select WATCHDOG_CORE
1894         help
1895           Hardware driver for the Lantiq SoC Watchdog Timer.
1896
1897 config LOONGSON1_WDT
1898         tristate "Loongson1 SoC hardware watchdog"
1899         depends on MACH_LOONGSON32 || COMPILE_TEST
1900         select WATCHDOG_CORE
1901         help
1902           Hardware driver for the Loongson1 SoC Watchdog Timer.
1903
1904 config RALINK_WDT
1905         tristate "Ralink SoC watchdog"
1906         select WATCHDOG_CORE
1907         depends on RALINK
1908         help
1909           Hardware driver for the Ralink SoC Watchdog Timer.
1910
1911 config GXP_WATCHDOG
1912         tristate "HPE GXP watchdog support"
1913         depends on ARCH_HPE_GXP || COMPILE_TEST
1914         select WATCHDOG_CORE
1915         help
1916           Say Y here to include support for the watchdog timer
1917           in HPE GXP SoCs.
1918
1919           To compile this driver as a module, choose M here.
1920           The module will be called gxp-wdt.
1921
1922 config MT7621_WDT
1923         tristate "Mediatek SoC watchdog"
1924         select WATCHDOG_CORE
1925         select REGMAP_MMIO
1926         select MFD_SYSCON
1927         depends on SOC_MT7620 || SOC_MT7621 || COMPILE_TEST
1928         help
1929           Hardware driver for the Mediatek/Ralink MT7621/8 SoC Watchdog Timer.
1930
1931 config PIC32_WDT
1932         tristate "Microchip PIC32 hardware watchdog"
1933         select WATCHDOG_CORE
1934         depends on MACH_PIC32 || (MIPS && COMPILE_TEST)
1935         help
1936           Watchdog driver for the built in watchdog hardware in a PIC32.
1937
1938           Configuration bits must be set appropriately for the watchdog to be
1939           controlled by this driver.
1940
1941           To compile this driver as a loadable module, choose M here.
1942           The module will be called pic32-wdt.
1943
1944 config PIC32_DMT
1945         tristate "Microchip PIC32 Deadman Timer"
1946         select WATCHDOG_CORE
1947         depends on MACH_PIC32 || (MIPS && COMPILE_TEST)
1948         help
1949           Watchdog driver for PIC32 instruction fetch counting timer. This
1950           specific timer is typically be used in mission critical and safety
1951           critical applications, where any single failure of the software
1952           functionality and sequencing must be detected.
1953
1954           To compile this driver as a loadable module, choose M here.
1955           The module will be called pic32-dmt.
1956
1957 # PARISC Architecture
1958
1959 # POWERPC Architecture
1960
1961 config GEF_WDT
1962         tristate "GE Watchdog Timer"
1963         depends on GE_FPGA
1964         help
1965           Watchdog timer found in a number of GE single board computers.
1966
1967 config MPC5200_WDT
1968         bool "MPC52xx Watchdog Timer"
1969         depends on PPC_MPC52xx || COMPILE_TEST
1970         help
1971           Use General Purpose Timer (GPT) 0 on the MPC5200 as Watchdog.
1972
1973 config 8xxx_WDT
1974         tristate "MPC8xxx Platform Watchdog Timer"
1975         depends on PPC_8xx || PPC_83xx || PPC_86xx || PPC_MPC512x
1976         select WATCHDOG_CORE
1977         help
1978           This driver is for a SoC level watchdog that exists on some
1979           Freescale PowerPC processors. So far this driver supports:
1980           - MPC8xx watchdogs
1981           - MPC83xx watchdogs
1982           - MPC86xx watchdogs
1983
1984           For BookE processors (MPC85xx) use the BOOKE_WDT driver instead.
1985
1986 config PIKA_WDT
1987         tristate "PIKA FPGA Watchdog"
1988         depends on WARP || (PPC64 && COMPILE_TEST)
1989         default y
1990         help
1991           This enables the watchdog in the PIKA FPGA. Currently used on
1992           the Warp platform.
1993
1994 config BOOKE_WDT
1995         tristate "PowerPC Book-E Watchdog Timer"
1996         depends on BOOKE || 4xx
1997         select WATCHDOG_CORE
1998         help
1999           Watchdog driver for PowerPC Book-E chips, such as the Freescale
2000           MPC85xx SOCs and the IBM PowerPC 440.
2001
2002           Please see Documentation/watchdog/watchdog-api.rst for
2003           more information.
2004
2005 config BOOKE_WDT_DEFAULT_TIMEOUT
2006         int "PowerPC Book-E Watchdog Timer Default Timeout"
2007         depends on BOOKE_WDT
2008         default 38 if PPC_E500
2009         range 0 63 if PPC_E500
2010         default 3 if !PPC_E500
2011         range 0 3 if !PPC_E500
2012         help
2013           Select the default watchdog timer period to be used by the PowerPC
2014           Book-E watchdog driver.  A watchdog "event" occurs when the bit
2015           position represented by this number transitions from zero to one.
2016
2017           For Freescale Book-E processors, this is a number between 0 and 63.
2018           For other Book-E processors, this is a number between 0 and 3.
2019
2020           The value can be overridden by the wdt_period command-line parameter.
2021
2022 config MEN_A21_WDT
2023         tristate "MEN A21 VME CPU Carrier Board Watchdog Timer"
2024         select WATCHDOG_CORE
2025         depends on GPIOLIB || COMPILE_TEST
2026         help
2027           Watchdog driver for MEN A21 VMEbus CPU Carrier Boards.
2028
2029           The driver can also be built as a module. If so, the module will be
2030           called mena21_wdt.
2031
2032           If unsure select N here.
2033
2034 # PPC64 Architecture
2035
2036 config PSERIES_WDT
2037         tristate "POWER Architecture Platform Watchdog Timer"
2038         depends on PPC_PSERIES
2039         select WATCHDOG_CORE
2040         help
2041           Driver for virtual watchdog timers provided by PAPR
2042           hypervisors (e.g. PowerVM, KVM).
2043
2044 config WATCHDOG_RTAS
2045         tristate "RTAS watchdog"
2046         depends on PPC_RTAS
2047         help
2048           This driver adds watchdog support for the RTAS watchdog.
2049
2050           To compile this driver as a module, choose M here. The module
2051           will be called wdrtas.
2052
2053 # RISC-V Architecture
2054
2055 config STARFIVE_WATCHDOG
2056         tristate "StarFive Watchdog support"
2057         depends on ARCH_STARFIVE || COMPILE_TEST
2058         select WATCHDOG_CORE
2059         default ARCH_STARFIVE
2060         help
2061           Say Y here to support the watchdog of StarFive JH7100 and JH7110
2062           SoC. This driver can also be built as a module if choose M.
2063
2064 # S390 Architecture
2065
2066 config DIAG288_WATCHDOG
2067         tristate "System z diag288 Watchdog"
2068         depends on S390
2069         select WATCHDOG_CORE
2070         help
2071           IBM s/390 and zSeries machines running under z/VM 5.1 or later
2072           provide a virtual watchdog timer to their guest that cause a
2073           user define Control Program command to be executed after a
2074           timeout.
2075           LPAR provides a very similar interface. This driver handles
2076           both.
2077
2078           To compile this driver as a module, choose M here. The module
2079           will be called diag288_wdt.
2080
2081 # SUPERH (sh + sh64) Architecture
2082
2083 config SH_WDT
2084         tristate "SuperH Watchdog"
2085         depends on SUPERH && (CPU_SH3 || CPU_SH4 || COMPILE_TEST)
2086         select WATCHDOG_CORE
2087         help
2088           This driver adds watchdog support for the integrated watchdog in the
2089           SuperH processors. If you have one of these processors and wish
2090           to have watchdog support enabled, say Y, otherwise say N.
2091
2092           As a side note, saying Y here will automatically boost HZ to 1000
2093           so that the timer has a chance to clear the overflow counter. On
2094           slower systems (such as the SH-2 and SH-3) this will likely yield
2095           some performance issues. As such, the WDT should be avoided here
2096           unless it is absolutely necessary.
2097
2098           To compile this driver as a module, choose M here: the
2099           module will be called shwdt.
2100
2101 # SPARC Architecture
2102
2103 # SPARC64 Architecture
2104
2105 config WATCHDOG_CP1XXX
2106         tristate "CP1XXX Hardware Watchdog support"
2107         depends on SPARC64 && PCI
2108         help
2109           This is the driver for the hardware watchdog timers present on
2110           Sun Microsystems CompactPCI models CP1400 and CP1500.
2111
2112           To compile this driver as a module, choose M here: the
2113           module will be called cpwatchdog.
2114
2115           If you do not have a CompactPCI model CP1400 or CP1500, or
2116           another UltraSPARC-IIi-cEngine boardset with hardware watchdog,
2117           you should say N to this option.
2118
2119 config WATCHDOG_RIO
2120         tristate "RIO Hardware Watchdog support"
2121         depends on SPARC64 && PCI
2122         help
2123           Say Y here to support the hardware watchdog capability on Sun RIO
2124           machines.  The watchdog timeout period is normally one minute but
2125           can be changed with a boot-time parameter.
2126
2127 config WATCHDOG_SUN4V
2128         tristate "Sun4v Watchdog support"
2129         select WATCHDOG_CORE
2130         depends on SPARC64
2131         help
2132           Say Y here to support the hypervisor watchdog capability embedded
2133           in the SPARC sun4v architecture.
2134
2135           To compile this driver as a module, choose M here. The module will
2136           be called sun4v_wdt.
2137
2138 # XTENSA Architecture
2139
2140 # Xen Architecture
2141
2142 config XEN_WDT
2143         tristate "Xen Watchdog support"
2144         depends on XEN
2145         select WATCHDOG_CORE
2146         help
2147           Say Y here to support the hypervisor watchdog capability provided
2148           by Xen 4.0 and newer.  The watchdog timeout period is normally one
2149           minute but can be changed with a boot-time parameter.
2150
2151 config UML_WATCHDOG
2152         tristate "UML watchdog"
2153         depends on UML || COMPILE_TEST
2154
2155 #
2156 # ISA-based Watchdog Cards
2157 #
2158
2159 comment "ISA-based Watchdog Cards"
2160         depends on ISA
2161
2162 config PCWATCHDOG
2163         tristate "Berkshire Products ISA-PC Watchdog"
2164         depends on ISA
2165         help
2166           This is the driver for the Berkshire Products ISA-PC Watchdog card.
2167           This card simply watches your kernel to make sure it doesn't freeze,
2168           and if it does, it reboots your computer after a certain amount of
2169           time. This driver is like the WDT501 driver but for different
2170           hardware. Please read <file:Documentation/watchdog/pcwd-watchdog.rst>.
2171           The PC watchdog cards can be ordered from <http://www.berkprod.com/>.
2172
2173           To compile this driver as a module, choose M here: the
2174           module will be called pcwd.
2175
2176           Most people will say N.
2177
2178 config MIXCOMWD
2179         tristate "Mixcom Watchdog"
2180         depends on ISA
2181         help
2182           This is a driver for the Mixcom hardware watchdog cards.  This
2183           watchdog simply watches your kernel to make sure it doesn't freeze,
2184           and if it does, it reboots your computer after a certain amount of
2185           time.
2186
2187           To compile this driver as a module, choose M here: the
2188           module will be called mixcomwd.
2189
2190           Most people will say N.
2191
2192 config WDT
2193         tristate "WDT Watchdog timer"
2194         depends on ISA
2195         help
2196           If you have a WDT500P or WDT501P watchdog board, say Y here,
2197           otherwise N. It is not possible to probe for this board, which means
2198           that you have to inform the kernel about the IO port and IRQ that
2199           is needed (you can do this via the io and irq parameters)
2200
2201           To compile this driver as a module, choose M here: the
2202           module will be called wdt.
2203
2204 #
2205 # PCI-based Watchdog Cards
2206 #
2207
2208 comment "PCI-based Watchdog Cards"
2209         depends on PCI
2210
2211 config PCIPCWATCHDOG
2212         tristate "Berkshire Products PCI-PC Watchdog"
2213         depends on PCI && HAS_IOPORT
2214         help
2215           This is the driver for the Berkshire Products PCI-PC Watchdog card.
2216           This card simply watches your kernel to make sure it doesn't freeze,
2217           and if it does, it reboots your computer after a certain amount of
2218           time. The card can also monitor the internal temperature of the PC.
2219           More info is available at <http://www.berkprod.com/pci_pc_watchdog.htm>.
2220
2221           To compile this driver as a module, choose M here: the
2222           module will be called pcwd_pci.
2223
2224           Most people will say N.
2225
2226 config WDTPCI
2227         tristate "PCI-WDT500/501 Watchdog timer"
2228         depends on PCI && HAS_IOPORT
2229         help
2230           If you have a PCI-WDT500/501 watchdog board, say Y here, otherwise N.
2231
2232           If you have a PCI-WDT501 watchdog board then you can enable the
2233           temperature sensor by setting the type parameter to 501.
2234
2235           If you want to enable the Fan Tachometer on the PCI-WDT501, then you
2236           can do this via the tachometer parameter. Only do this if you have a
2237           fan tachometer actually set up.
2238
2239           To compile this driver as a module, choose M here: the
2240           module will be called wdt_pci.
2241
2242 #
2243 # USB-based Watchdog Cards
2244 #
2245
2246 comment "USB-based Watchdog Cards"
2247         depends on USB
2248
2249 config USBPCWATCHDOG
2250         tristate "Berkshire Products USB-PC Watchdog"
2251         depends on USB
2252         help
2253           This is the driver for the Berkshire Products USB-PC Watchdog card.
2254           This card simply watches your kernel to make sure it doesn't freeze,
2255           and if it does, it reboots your computer after a certain amount of
2256           time. The card can also monitor the internal temperature of the PC.
2257           More info is available at <http://www.berkprod.com/usb_pc_watchdog.htm>.
2258
2259           To compile this driver as a module, choose M here: the
2260           module will be called pcwd_usb.
2261
2262           Most people will say N.
2263
2264 config KEEMBAY_WATCHDOG
2265         tristate "Intel Keem Bay SoC non-secure watchdog"
2266         depends on ARCH_KEEMBAY || (ARM64 && COMPILE_TEST)
2267         select WATCHDOG_CORE
2268         help
2269           This option enable support for an In-secure watchdog timer driver for
2270           Intel Keem Bay SoC. This WDT has a 32 bit timer and decrements in every
2271           count unit. An interrupt will be triggered, when the count crosses
2272           the threshold configured in the register.
2273
2274           To compile this driver as a module, choose M here: the
2275           module will be called keembay_wdt.
2276
2277 endif # WATCHDOG
This page took 0.169312 seconds and 4 git commands to generate.