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