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