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