162306a36Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0-only
262306a36Sopenharmony_ci
362306a36Sopenharmony_ci#
462306a36Sopenharmony_ci# Watchdog device configuration
562306a36Sopenharmony_ci#
662306a36Sopenharmony_ci
762306a36Sopenharmony_cimenuconfig WATCHDOG
862306a36Sopenharmony_ci	bool "Watchdog Timer Support"
962306a36Sopenharmony_ci	help
1062306a36Sopenharmony_ci	  If you say Y here (and to one of the following options) and create a
1162306a36Sopenharmony_ci	  character special file /dev/watchdog with major number 10 and minor
1262306a36Sopenharmony_ci	  number 130 using mknod ("man mknod"), you will get a watchdog, i.e.:
1362306a36Sopenharmony_ci	  subsequently opening the file and then failing to write to it for
1462306a36Sopenharmony_ci	  longer than 1 minute will result in rebooting the machine. This
1562306a36Sopenharmony_ci	  could be useful for a networked machine that needs to come back
1662306a36Sopenharmony_ci	  on-line as fast as possible after a lock-up. There's both a watchdog
1762306a36Sopenharmony_ci	  implementation entirely in software (which can sometimes fail to
1862306a36Sopenharmony_ci	  reboot the machine) and a driver for hardware watchdog boards, which
1962306a36Sopenharmony_ci	  are more robust and can also keep track of the temperature inside
2062306a36Sopenharmony_ci	  your computer. For details, read
2162306a36Sopenharmony_ci	  <file:Documentation/watchdog/watchdog-api.rst> in the kernel source.
2262306a36Sopenharmony_ci
2362306a36Sopenharmony_ci	  The watchdog is usually used together with the watchdog daemon
2462306a36Sopenharmony_ci	  which is available from
2562306a36Sopenharmony_ci	  <https://ibiblio.org/pub/Linux/system/daemons/watchdog/>. This daemon
2662306a36Sopenharmony_ci	  can also monitor NFS connections and can reboot the machine when the
2762306a36Sopenharmony_ci	  process table is full.
2862306a36Sopenharmony_ci
2962306a36Sopenharmony_ci	  If unsure, say N.
3062306a36Sopenharmony_ci
3162306a36Sopenharmony_ciif WATCHDOG
3262306a36Sopenharmony_ci
3362306a36Sopenharmony_ciconfig WATCHDOG_CORE
3462306a36Sopenharmony_ci	tristate "WatchDog Timer Driver Core"
3562306a36Sopenharmony_ci	help
3662306a36Sopenharmony_ci	  Say Y here if you want to use the new watchdog timer driver core.
3762306a36Sopenharmony_ci	  This driver provides a framework for all watchdog timer drivers
3862306a36Sopenharmony_ci	  and gives them the /dev/watchdog interface (and later also the
3962306a36Sopenharmony_ci	  sysfs interface).
4062306a36Sopenharmony_ci
4162306a36Sopenharmony_ciconfig WATCHDOG_NOWAYOUT
4262306a36Sopenharmony_ci	bool "Disable watchdog shutdown on close"
4362306a36Sopenharmony_ci	help
4462306a36Sopenharmony_ci	  The default watchdog behaviour (which you get if you say N here) is
4562306a36Sopenharmony_ci	  to stop the timer if the process managing it closes the file
4662306a36Sopenharmony_ci	  /dev/watchdog. It's always remotely possible that this process might
4762306a36Sopenharmony_ci	  get killed. If you say Y here, the watchdog cannot be stopped once
4862306a36Sopenharmony_ci	  it has been started.
4962306a36Sopenharmony_ci
5062306a36Sopenharmony_ciconfig WATCHDOG_HANDLE_BOOT_ENABLED
5162306a36Sopenharmony_ci	bool "Update boot-enabled watchdog until userspace takes over"
5262306a36Sopenharmony_ci	default y
5362306a36Sopenharmony_ci	help
5462306a36Sopenharmony_ci	  The default watchdog behaviour (which you get if you say Y here) is
5562306a36Sopenharmony_ci	  to ping watchdog devices that were enabled before the driver has
5662306a36Sopenharmony_ci	  been loaded until control is taken over from userspace using the
5762306a36Sopenharmony_ci	  /dev/watchdog file. If you say N here, the kernel will not update
5862306a36Sopenharmony_ci	  the watchdog on its own. Thus if your userspace does not start fast
5962306a36Sopenharmony_ci	  enough your device will reboot.
6062306a36Sopenharmony_ci
6162306a36Sopenharmony_ciconfig WATCHDOG_OPEN_TIMEOUT
6262306a36Sopenharmony_ci	int "Timeout value for opening watchdog device"
6362306a36Sopenharmony_ci	default 0
6462306a36Sopenharmony_ci	help
6562306a36Sopenharmony_ci	  The maximum time, in seconds, for which the watchdog framework takes
6662306a36Sopenharmony_ci	  care of pinging a hardware watchdog.  A value of 0 means infinite. The
6762306a36Sopenharmony_ci	  value set here can be overridden by the commandline parameter
6862306a36Sopenharmony_ci	  "watchdog.open_timeout".
6962306a36Sopenharmony_ci
7062306a36Sopenharmony_ciconfig WATCHDOG_SYSFS
7162306a36Sopenharmony_ci	bool "Read different watchdog information through sysfs"
7262306a36Sopenharmony_ci	help
7362306a36Sopenharmony_ci	  Say Y here if you want to enable watchdog device status read through
7462306a36Sopenharmony_ci	  sysfs attributes.
7562306a36Sopenharmony_ci
7662306a36Sopenharmony_ciconfig WATCHDOG_HRTIMER_PRETIMEOUT
7762306a36Sopenharmony_ci	bool "Enable watchdog hrtimer-based pretimeouts"
7862306a36Sopenharmony_ci	help
7962306a36Sopenharmony_ci	  Enable this if you want to use a hrtimer timer based pretimeout for
8062306a36Sopenharmony_ci	  watchdogs that do not natively support pretimeout support. Be aware
8162306a36Sopenharmony_ci	  that because this pretimeout functionality uses hrtimers, it may not
8262306a36Sopenharmony_ci	  be able to fire before the actual watchdog fires in some situations.
8362306a36Sopenharmony_ci
8462306a36Sopenharmony_cicomment "Watchdog Pretimeout Governors"
8562306a36Sopenharmony_ci
8662306a36Sopenharmony_ciconfig WATCHDOG_PRETIMEOUT_GOV
8762306a36Sopenharmony_ci	bool "Enable watchdog pretimeout governors"
8862306a36Sopenharmony_ci	depends on WATCHDOG_CORE
8962306a36Sopenharmony_ci	help
9062306a36Sopenharmony_ci	  The option allows to select watchdog pretimeout governors.
9162306a36Sopenharmony_ci
9262306a36Sopenharmony_ciconfig WATCHDOG_PRETIMEOUT_GOV_SEL
9362306a36Sopenharmony_ci	tristate
9462306a36Sopenharmony_ci	depends on WATCHDOG_PRETIMEOUT_GOV
9562306a36Sopenharmony_ci	default m
9662306a36Sopenharmony_ci	select WATCHDOG_PRETIMEOUT_GOV_PANIC if WATCHDOG_PRETIMEOUT_GOV_NOOP=n
9762306a36Sopenharmony_ci
9862306a36Sopenharmony_ciif WATCHDOG_PRETIMEOUT_GOV
9962306a36Sopenharmony_ci
10062306a36Sopenharmony_ciconfig WATCHDOG_PRETIMEOUT_GOV_NOOP
10162306a36Sopenharmony_ci	tristate "Noop watchdog pretimeout governor"
10262306a36Sopenharmony_ci	depends on WATCHDOG_CORE
10362306a36Sopenharmony_ci	default WATCHDOG_CORE
10462306a36Sopenharmony_ci	help
10562306a36Sopenharmony_ci	  Noop watchdog pretimeout governor, only an informational
10662306a36Sopenharmony_ci	  message is added to kernel log buffer.
10762306a36Sopenharmony_ci
10862306a36Sopenharmony_ciconfig WATCHDOG_PRETIMEOUT_GOV_PANIC
10962306a36Sopenharmony_ci	tristate "Panic watchdog pretimeout governor"
11062306a36Sopenharmony_ci	depends on WATCHDOG_CORE
11162306a36Sopenharmony_ci	default WATCHDOG_CORE
11262306a36Sopenharmony_ci	help
11362306a36Sopenharmony_ci	  Panic watchdog pretimeout governor, on watchdog pretimeout
11462306a36Sopenharmony_ci	  event put the kernel into panic.
11562306a36Sopenharmony_ci
11662306a36Sopenharmony_cichoice
11762306a36Sopenharmony_ci	prompt "Default Watchdog Pretimeout Governor"
11862306a36Sopenharmony_ci	default WATCHDOG_PRETIMEOUT_DEFAULT_GOV_PANIC
11962306a36Sopenharmony_ci	help
12062306a36Sopenharmony_ci	  This option selects a default watchdog pretimeout governor.
12162306a36Sopenharmony_ci	  The governor takes its action, if a watchdog is capable
12262306a36Sopenharmony_ci	  to report a pretimeout event.
12362306a36Sopenharmony_ci
12462306a36Sopenharmony_ciconfig WATCHDOG_PRETIMEOUT_DEFAULT_GOV_NOOP
12562306a36Sopenharmony_ci	bool "noop"
12662306a36Sopenharmony_ci	depends on WATCHDOG_PRETIMEOUT_GOV_NOOP
12762306a36Sopenharmony_ci	help
12862306a36Sopenharmony_ci	  Use noop watchdog pretimeout governor by default. If noop
12962306a36Sopenharmony_ci	  governor is selected by a user, write a short message to
13062306a36Sopenharmony_ci	  the kernel log buffer and don't do any system changes.
13162306a36Sopenharmony_ci
13262306a36Sopenharmony_ciconfig WATCHDOG_PRETIMEOUT_DEFAULT_GOV_PANIC
13362306a36Sopenharmony_ci	bool "panic"
13462306a36Sopenharmony_ci	depends on WATCHDOG_PRETIMEOUT_GOV_PANIC
13562306a36Sopenharmony_ci	help
13662306a36Sopenharmony_ci	  Use panic watchdog pretimeout governor by default, if
13762306a36Sopenharmony_ci	  a watchdog pretimeout event happens, consider that
13862306a36Sopenharmony_ci	  a watchdog feeder is dead and reboot is unavoidable.
13962306a36Sopenharmony_ci
14062306a36Sopenharmony_ciendchoice
14162306a36Sopenharmony_ci
14262306a36Sopenharmony_ciendif # WATCHDOG_PRETIMEOUT_GOV
14362306a36Sopenharmony_ci
14462306a36Sopenharmony_ci#
14562306a36Sopenharmony_ci# General Watchdog drivers
14662306a36Sopenharmony_ci#
14762306a36Sopenharmony_ci
14862306a36Sopenharmony_cicomment "Watchdog Device Drivers"
14962306a36Sopenharmony_ci
15062306a36Sopenharmony_ci# Architecture Independent
15162306a36Sopenharmony_ci
15262306a36Sopenharmony_ciconfig SOFT_WATCHDOG
15362306a36Sopenharmony_ci	tristate "Software watchdog"
15462306a36Sopenharmony_ci	select WATCHDOG_CORE
15562306a36Sopenharmony_ci	help
15662306a36Sopenharmony_ci	  A software monitoring watchdog. This will fail to reboot your system
15762306a36Sopenharmony_ci	  from some situations that the hardware watchdog will recover
15862306a36Sopenharmony_ci	  from. Equally it's a lot cheaper to install.
15962306a36Sopenharmony_ci
16062306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
16162306a36Sopenharmony_ci	  module will be called softdog.
16262306a36Sopenharmony_ci
16362306a36Sopenharmony_ciconfig SOFT_WATCHDOG_PRETIMEOUT
16462306a36Sopenharmony_ci	bool "Software watchdog pretimeout governor support"
16562306a36Sopenharmony_ci	depends on SOFT_WATCHDOG && WATCHDOG_PRETIMEOUT_GOV
16662306a36Sopenharmony_ci	help
16762306a36Sopenharmony_ci	  Enable this if you want to use pretimeout governors with the software
16862306a36Sopenharmony_ci	  watchdog. Be aware that governors might affect the watchdog because it
16962306a36Sopenharmony_ci	  is purely software, e.g. the panic governor will stall it!
17062306a36Sopenharmony_ci
17162306a36Sopenharmony_ciconfig BD957XMUF_WATCHDOG
17262306a36Sopenharmony_ci	tristate "ROHM BD9576MUF and BD9573MUF PMIC Watchdog"
17362306a36Sopenharmony_ci	depends on MFD_ROHM_BD957XMUF
17462306a36Sopenharmony_ci	select WATCHDOG_CORE
17562306a36Sopenharmony_ci	help
17662306a36Sopenharmony_ci	  Support for the watchdog in the ROHM BD9576 and BD9573 PMICs.
17762306a36Sopenharmony_ci	  These PMIC ICs contain watchdog block which can be configured
17862306a36Sopenharmony_ci	  to toggle reset line if SoC fails to ping watchdog via GPIO.
17962306a36Sopenharmony_ci
18062306a36Sopenharmony_ci	  Say Y here to include support for the ROHM BD9576 or BD9573
18162306a36Sopenharmony_ci	  watchdog. Alternatively say M to compile the driver as a module,
18262306a36Sopenharmony_ci	  which will be called bd9576_wdt.
18362306a36Sopenharmony_ci
18462306a36Sopenharmony_ciconfig DA9052_WATCHDOG
18562306a36Sopenharmony_ci	tristate "Dialog DA9052 Watchdog"
18662306a36Sopenharmony_ci	depends on PMIC_DA9052 || COMPILE_TEST
18762306a36Sopenharmony_ci	select WATCHDOG_CORE
18862306a36Sopenharmony_ci	help
18962306a36Sopenharmony_ci	  Support for the watchdog in the DA9052 PMIC. Watchdog trigger
19062306a36Sopenharmony_ci	  cause system reset.
19162306a36Sopenharmony_ci
19262306a36Sopenharmony_ci	  Say Y here to include support for the DA9052 watchdog.
19362306a36Sopenharmony_ci	  Alternatively say M to compile the driver as a module,
19462306a36Sopenharmony_ci	  which will be called da9052_wdt.
19562306a36Sopenharmony_ci
19662306a36Sopenharmony_ciconfig DA9055_WATCHDOG
19762306a36Sopenharmony_ci	tristate "Dialog Semiconductor DA9055 Watchdog"
19862306a36Sopenharmony_ci	depends on MFD_DA9055 || COMPILE_TEST
19962306a36Sopenharmony_ci	select WATCHDOG_CORE
20062306a36Sopenharmony_ci	help
20162306a36Sopenharmony_ci	  If you say yes here you get support for watchdog on the Dialog
20262306a36Sopenharmony_ci	  Semiconductor DA9055 PMIC.
20362306a36Sopenharmony_ci
20462306a36Sopenharmony_ci	  This driver can also be built as a module.  If so, the module
20562306a36Sopenharmony_ci	  will be called da9055_wdt.
20662306a36Sopenharmony_ci
20762306a36Sopenharmony_ciconfig DA9063_WATCHDOG
20862306a36Sopenharmony_ci	tristate "Dialog DA9063 Watchdog"
20962306a36Sopenharmony_ci	depends on MFD_DA9063 || COMPILE_TEST
21062306a36Sopenharmony_ci	depends on I2C
21162306a36Sopenharmony_ci	select WATCHDOG_CORE
21262306a36Sopenharmony_ci	help
21362306a36Sopenharmony_ci	  Support for the watchdog in the DA9063 PMIC.
21462306a36Sopenharmony_ci
21562306a36Sopenharmony_ci	  This driver can be built as a module. The module name is da9063_wdt.
21662306a36Sopenharmony_ci
21762306a36Sopenharmony_ciconfig DA9062_WATCHDOG
21862306a36Sopenharmony_ci	tristate "Dialog DA9062/61 Watchdog"
21962306a36Sopenharmony_ci	depends on MFD_DA9062 || COMPILE_TEST
22062306a36Sopenharmony_ci	depends on I2C
22162306a36Sopenharmony_ci	select WATCHDOG_CORE
22262306a36Sopenharmony_ci	help
22362306a36Sopenharmony_ci	  Support for the watchdog in the DA9062 and DA9061 PMICs.
22462306a36Sopenharmony_ci
22562306a36Sopenharmony_ci	  This driver can be built as a module. The module name is da9062_wdt.
22662306a36Sopenharmony_ci
22762306a36Sopenharmony_ciconfig GPIO_WATCHDOG
22862306a36Sopenharmony_ci	tristate "Watchdog device controlled through GPIO-line"
22962306a36Sopenharmony_ci	depends on OF_GPIO
23062306a36Sopenharmony_ci	select WATCHDOG_CORE
23162306a36Sopenharmony_ci	help
23262306a36Sopenharmony_ci	  If you say yes here you get support for watchdog device
23362306a36Sopenharmony_ci	  controlled through GPIO-line.
23462306a36Sopenharmony_ci
23562306a36Sopenharmony_ciconfig GPIO_WATCHDOG_ARCH_INITCALL
23662306a36Sopenharmony_ci	bool "Register the watchdog as early as possible"
23762306a36Sopenharmony_ci	depends on GPIO_WATCHDOG=y
23862306a36Sopenharmony_ci	help
23962306a36Sopenharmony_ci	  In some situations, the default initcall level (module_init)
24062306a36Sopenharmony_ci	  in not early enough in the boot process to avoid the watchdog
24162306a36Sopenharmony_ci	  to be triggered.
24262306a36Sopenharmony_ci	  If you say yes here, the initcall level would be raised to
24362306a36Sopenharmony_ci	  arch_initcall.
24462306a36Sopenharmony_ci	  If in doubt, say N.
24562306a36Sopenharmony_ci
24662306a36Sopenharmony_ciconfig MENF21BMC_WATCHDOG
24762306a36Sopenharmony_ci	tristate "MEN 14F021P00 BMC Watchdog"
24862306a36Sopenharmony_ci	depends on MFD_MENF21BMC || COMPILE_TEST
24962306a36Sopenharmony_ci	depends on I2C
25062306a36Sopenharmony_ci	select WATCHDOG_CORE
25162306a36Sopenharmony_ci	help
25262306a36Sopenharmony_ci	  Say Y here to include support for the MEN 14F021P00 BMC Watchdog.
25362306a36Sopenharmony_ci
25462306a36Sopenharmony_ci	  This driver can also be built as a module. If so the module
25562306a36Sopenharmony_ci	  will be called menf21bmc_wdt.
25662306a36Sopenharmony_ci
25762306a36Sopenharmony_ciconfig MENZ069_WATCHDOG
25862306a36Sopenharmony_ci	tristate "MEN 16Z069 Watchdog"
25962306a36Sopenharmony_ci	depends on MCB
26062306a36Sopenharmony_ci	select WATCHDOG_CORE
26162306a36Sopenharmony_ci	help
26262306a36Sopenharmony_ci	  Say Y here to include support for the MEN 16Z069 Watchdog.
26362306a36Sopenharmony_ci
26462306a36Sopenharmony_ci	  This driver can also be built as a module. If so the module
26562306a36Sopenharmony_ci	  will be called menz069_wdt.
26662306a36Sopenharmony_ci
26762306a36Sopenharmony_ciconfig WDAT_WDT
26862306a36Sopenharmony_ci	tristate "ACPI Watchdog Action Table (WDAT)"
26962306a36Sopenharmony_ci	depends on ACPI
27062306a36Sopenharmony_ci	select WATCHDOG_CORE
27162306a36Sopenharmony_ci	select ACPI_WATCHDOG
27262306a36Sopenharmony_ci	help
27362306a36Sopenharmony_ci	  This driver adds support for systems with ACPI Watchdog Action
27462306a36Sopenharmony_ci	  Table (WDAT) table. Servers typically have this but it can be
27562306a36Sopenharmony_ci	  found on some desktop machines as well. This driver will take
27662306a36Sopenharmony_ci	  over the native iTCO watchdog driver found on many Intel CPUs.
27762306a36Sopenharmony_ci
27862306a36Sopenharmony_ci	  To compile this driver as module, choose M here: the module will
27962306a36Sopenharmony_ci	  be called wdat_wdt.
28062306a36Sopenharmony_ci
28162306a36Sopenharmony_ciconfig WM831X_WATCHDOG
28262306a36Sopenharmony_ci	tristate "WM831x watchdog"
28362306a36Sopenharmony_ci	depends on MFD_WM831X
28462306a36Sopenharmony_ci	select WATCHDOG_CORE
28562306a36Sopenharmony_ci	help
28662306a36Sopenharmony_ci	  Support for the watchdog in the WM831x AudioPlus PMICs.  When
28762306a36Sopenharmony_ci	  the watchdog triggers the system will be reset.
28862306a36Sopenharmony_ci
28962306a36Sopenharmony_ciconfig WM8350_WATCHDOG
29062306a36Sopenharmony_ci	tristate "WM8350 watchdog"
29162306a36Sopenharmony_ci	depends on MFD_WM8350
29262306a36Sopenharmony_ci	select WATCHDOG_CORE
29362306a36Sopenharmony_ci	help
29462306a36Sopenharmony_ci	  Support for the watchdog in the WM8350 AudioPlus PMIC.  When
29562306a36Sopenharmony_ci	  the watchdog triggers the system will be reset.
29662306a36Sopenharmony_ci
29762306a36Sopenharmony_ciconfig XILINX_WATCHDOG
29862306a36Sopenharmony_ci	tristate "Xilinx Watchdog timer"
29962306a36Sopenharmony_ci	depends on HAS_IOMEM
30062306a36Sopenharmony_ci	select WATCHDOG_CORE
30162306a36Sopenharmony_ci	help
30262306a36Sopenharmony_ci	  Watchdog driver for the xps_timebase_wdt IP core.
30362306a36Sopenharmony_ci
30462306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
30562306a36Sopenharmony_ci	  module will be called of_xilinx_wdt.
30662306a36Sopenharmony_ci
30762306a36Sopenharmony_ciconfig XILINX_WINDOW_WATCHDOG
30862306a36Sopenharmony_ci	tristate "Xilinx window watchdog timer"
30962306a36Sopenharmony_ci	depends on HAS_IOMEM
31062306a36Sopenharmony_ci	depends on ARM64 || COMPILE_TEST
31162306a36Sopenharmony_ci	select WATCHDOG_CORE
31262306a36Sopenharmony_ci	help
31362306a36Sopenharmony_ci	  Window watchdog driver for the versal_wwdt IP core.
31462306a36Sopenharmony_ci	  Window watchdog timer(WWDT) contains closed(first) and
31562306a36Sopenharmony_ci	  open(second) window with 32 bit width. Write to the watchdog
31662306a36Sopenharmony_ci	  timer within predefined window periods of time. This means
31762306a36Sopenharmony_ci	  a period that is not too soon and a period that is not too
31862306a36Sopenharmony_ci	  late. The WWDT has to be restarted within the open window time.
31962306a36Sopenharmony_ci	  If software tries to restart WWDT outside of the open window
32062306a36Sopenharmony_ci	  time period, it generates a reset.
32162306a36Sopenharmony_ci
32262306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
32362306a36Sopenharmony_ci	  module will be called xilinx_wwdt.
32462306a36Sopenharmony_ci
32562306a36Sopenharmony_ciconfig ZIIRAVE_WATCHDOG
32662306a36Sopenharmony_ci	tristate "Zodiac RAVE Watchdog Timer"
32762306a36Sopenharmony_ci	depends on I2C
32862306a36Sopenharmony_ci	select WATCHDOG_CORE
32962306a36Sopenharmony_ci	help
33062306a36Sopenharmony_ci	  Watchdog driver for the Zodiac Aerospace RAVE Switch Watchdog
33162306a36Sopenharmony_ci	  Processor.
33262306a36Sopenharmony_ci
33362306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
33462306a36Sopenharmony_ci	  module will be called ziirave_wdt.
33562306a36Sopenharmony_ci
33662306a36Sopenharmony_ciconfig RAVE_SP_WATCHDOG
33762306a36Sopenharmony_ci	tristate "RAVE SP Watchdog timer"
33862306a36Sopenharmony_ci	depends on RAVE_SP_CORE
33962306a36Sopenharmony_ci	depends on NVMEM || !NVMEM
34062306a36Sopenharmony_ci	select WATCHDOG_CORE
34162306a36Sopenharmony_ci	help
34262306a36Sopenharmony_ci	  Support for the watchdog on RAVE SP device.
34362306a36Sopenharmony_ci
34462306a36Sopenharmony_ciconfig MLX_WDT
34562306a36Sopenharmony_ci	tristate "Mellanox Watchdog"
34662306a36Sopenharmony_ci	depends on MELLANOX_PLATFORM || COMPILE_TEST
34762306a36Sopenharmony_ci	select WATCHDOG_CORE
34862306a36Sopenharmony_ci	select REGMAP
34962306a36Sopenharmony_ci	help
35062306a36Sopenharmony_ci	  This is the driver for the hardware watchdog on Mellanox systems.
35162306a36Sopenharmony_ci	  If you are going to use it, say Y here, otherwise N.
35262306a36Sopenharmony_ci	  This driver can be used together with the watchdog daemon.
35362306a36Sopenharmony_ci	  It can also watch your kernel to make sure it doesn't freeze,
35462306a36Sopenharmony_ci	  and if it does, it reboots your system after a certain amount of
35562306a36Sopenharmony_ci	  time.
35662306a36Sopenharmony_ci
35762306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
35862306a36Sopenharmony_ci	  module will be called mlx-wdt.
35962306a36Sopenharmony_ci
36062306a36Sopenharmony_ciconfig SL28CPLD_WATCHDOG
36162306a36Sopenharmony_ci	tristate "Kontron sl28cpld Watchdog"
36262306a36Sopenharmony_ci	depends on MFD_SL28CPLD || COMPILE_TEST
36362306a36Sopenharmony_ci	select WATCHDOG_CORE
36462306a36Sopenharmony_ci	help
36562306a36Sopenharmony_ci	  Say Y here to include support for the watchdog timer
36662306a36Sopenharmony_ci	  on the Kontron sl28 CPLD.
36762306a36Sopenharmony_ci
36862306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
36962306a36Sopenharmony_ci	  module will be called sl28cpld_wdt.
37062306a36Sopenharmony_ci
37162306a36Sopenharmony_ci# ALPHA Architecture
37262306a36Sopenharmony_ci
37362306a36Sopenharmony_ci# ARM Architecture
37462306a36Sopenharmony_ci
37562306a36Sopenharmony_ciconfig ARM_SP805_WATCHDOG
37662306a36Sopenharmony_ci	tristate "ARM SP805 Watchdog"
37762306a36Sopenharmony_ci	depends on (ARM || ARM64 || COMPILE_TEST) && ARM_AMBA
37862306a36Sopenharmony_ci	select WATCHDOG_CORE
37962306a36Sopenharmony_ci	help
38062306a36Sopenharmony_ci	  ARM Primecell SP805 Watchdog timer. This will reboot your system when
38162306a36Sopenharmony_ci	  the timeout is reached.
38262306a36Sopenharmony_ci
38362306a36Sopenharmony_ciconfig ARM_SBSA_WATCHDOG
38462306a36Sopenharmony_ci	tristate "ARM SBSA Generic Watchdog"
38562306a36Sopenharmony_ci	depends on ARM64
38662306a36Sopenharmony_ci	depends on ARM_ARCH_TIMER
38762306a36Sopenharmony_ci	select WATCHDOG_CORE
38862306a36Sopenharmony_ci	help
38962306a36Sopenharmony_ci	  ARM SBSA Generic Watchdog has two stage timeouts:
39062306a36Sopenharmony_ci	  the first signal (WS0) is for alerting the system by interrupt,
39162306a36Sopenharmony_ci	  the second one (WS1) is a real hardware reset.
39262306a36Sopenharmony_ci	  More details: ARM DEN0029B - Server Base System Architecture (SBSA)
39362306a36Sopenharmony_ci
39462306a36Sopenharmony_ci	  This driver can operate ARM SBSA Generic Watchdog as a single stage
39562306a36Sopenharmony_ci	  or a two stages watchdog, it depends on the module parameter "action".
39662306a36Sopenharmony_ci
39762306a36Sopenharmony_ci	  Note: the maximum timeout in the two stages mode is half of that in
39862306a36Sopenharmony_ci	  the single stage mode.
39962306a36Sopenharmony_ci
40062306a36Sopenharmony_ci	  To compile this driver as module, choose M here: The module
40162306a36Sopenharmony_ci	  will be called sbsa_gwdt.
40262306a36Sopenharmony_ci
40362306a36Sopenharmony_ciconfig ARMADA_37XX_WATCHDOG
40462306a36Sopenharmony_ci	tristate "Armada 37xx watchdog"
40562306a36Sopenharmony_ci	depends on ARCH_MVEBU || COMPILE_TEST
40662306a36Sopenharmony_ci	depends on HAS_IOMEM
40762306a36Sopenharmony_ci	select MFD_SYSCON
40862306a36Sopenharmony_ci	select WATCHDOG_CORE
40962306a36Sopenharmony_ci	help
41062306a36Sopenharmony_ci	   Say Y here to include support for the watchdog timer found on
41162306a36Sopenharmony_ci	   Marvell Armada 37xx SoCs.
41262306a36Sopenharmony_ci	   To compile this driver as a module, choose M here: the
41362306a36Sopenharmony_ci	   module will be called armada_37xx_wdt.
41462306a36Sopenharmony_ci
41562306a36Sopenharmony_ciconfig ASM9260_WATCHDOG
41662306a36Sopenharmony_ci	tristate "Alphascale ASM9260 watchdog"
41762306a36Sopenharmony_ci	depends on MACH_ASM9260 || COMPILE_TEST
41862306a36Sopenharmony_ci	depends on OF
41962306a36Sopenharmony_ci	select WATCHDOG_CORE
42062306a36Sopenharmony_ci	select RESET_CONTROLLER
42162306a36Sopenharmony_ci	help
42262306a36Sopenharmony_ci	  Watchdog timer embedded into Alphascale asm9260 chips. This will
42362306a36Sopenharmony_ci	  reboot your system when the timeout is reached.
42462306a36Sopenharmony_ci
42562306a36Sopenharmony_ciconfig AT91RM9200_WATCHDOG
42662306a36Sopenharmony_ci	tristate "AT91RM9200 watchdog"
42762306a36Sopenharmony_ci	depends on (SOC_AT91RM9200 && MFD_SYSCON) || COMPILE_TEST
42862306a36Sopenharmony_ci	help
42962306a36Sopenharmony_ci	  Watchdog timer embedded into AT91RM9200 chips. This will reboot your
43062306a36Sopenharmony_ci	  system when the timeout is reached.
43162306a36Sopenharmony_ci
43262306a36Sopenharmony_ciconfig AT91SAM9X_WATCHDOG
43362306a36Sopenharmony_ci	tristate "AT91SAM9X / AT91CAP9 watchdog"
43462306a36Sopenharmony_ci	depends on ARCH_AT91 || COMPILE_TEST
43562306a36Sopenharmony_ci	select WATCHDOG_CORE
43662306a36Sopenharmony_ci	help
43762306a36Sopenharmony_ci	  Watchdog timer embedded into AT91SAM9X and AT91CAP9 chips. This will
43862306a36Sopenharmony_ci	  reboot your system when the timeout is reached.
43962306a36Sopenharmony_ci
44062306a36Sopenharmony_ciconfig SAMA5D4_WATCHDOG
44162306a36Sopenharmony_ci	tristate "Atmel SAMA5D4 Watchdog Timer"
44262306a36Sopenharmony_ci	depends on ARCH_AT91 || COMPILE_TEST
44362306a36Sopenharmony_ci	select WATCHDOG_CORE
44462306a36Sopenharmony_ci	help
44562306a36Sopenharmony_ci	  Atmel SAMA5D4 watchdog timer is embedded into SAMA5D4 chips.
44662306a36Sopenharmony_ci	  Its Watchdog Timer Mode Register can be written more than once.
44762306a36Sopenharmony_ci	  This will reboot your system when the timeout is reached.
44862306a36Sopenharmony_ci
44962306a36Sopenharmony_ciconfig CADENCE_WATCHDOG
45062306a36Sopenharmony_ci	tristate "Cadence Watchdog Timer"
45162306a36Sopenharmony_ci	depends on HAS_IOMEM
45262306a36Sopenharmony_ci	select WATCHDOG_CORE
45362306a36Sopenharmony_ci	help
45462306a36Sopenharmony_ci	  Say Y here if you want to include support for the watchdog
45562306a36Sopenharmony_ci	  timer in the Xilinx Zynq.
45662306a36Sopenharmony_ci
45762306a36Sopenharmony_ciconfig 21285_WATCHDOG
45862306a36Sopenharmony_ci	tristate "DC21285 watchdog"
45962306a36Sopenharmony_ci	depends on FOOTBRIDGE
46062306a36Sopenharmony_ci	help
46162306a36Sopenharmony_ci	  The Intel Footbridge chip contains a built-in watchdog circuit. Say Y
46262306a36Sopenharmony_ci	  here if you wish to use this. Alternatively say M to compile the
46362306a36Sopenharmony_ci	  driver as a module, which will be called wdt285.
46462306a36Sopenharmony_ci
46562306a36Sopenharmony_ci	  This driver does not work on all machines. In particular, early CATS
46662306a36Sopenharmony_ci	  boards have hardware problems that will cause the machine to simply
46762306a36Sopenharmony_ci	  lock up if the watchdog fires.
46862306a36Sopenharmony_ci
46962306a36Sopenharmony_ci	  "If in doubt, leave it out" - say N.
47062306a36Sopenharmony_ci
47162306a36Sopenharmony_ciconfig 977_WATCHDOG
47262306a36Sopenharmony_ci	tristate "NetWinder WB83C977 watchdog"
47362306a36Sopenharmony_ci	depends on (FOOTBRIDGE && ARCH_NETWINDER) || (ARM && COMPILE_TEST)
47462306a36Sopenharmony_ci	help
47562306a36Sopenharmony_ci	  Say Y here to include support for the WB977 watchdog included in
47662306a36Sopenharmony_ci	  NetWinder machines. Alternatively say M to compile the driver as
47762306a36Sopenharmony_ci	  a module, which will be called wdt977.
47862306a36Sopenharmony_ci
47962306a36Sopenharmony_ci	  Not sure? It's safe to say N.
48062306a36Sopenharmony_ci
48162306a36Sopenharmony_ciconfig FTWDT010_WATCHDOG
48262306a36Sopenharmony_ci	tristate "Faraday Technology FTWDT010 watchdog"
48362306a36Sopenharmony_ci	depends on ARM || COMPILE_TEST
48462306a36Sopenharmony_ci	select WATCHDOG_CORE
48562306a36Sopenharmony_ci	default ARCH_GEMINI
48662306a36Sopenharmony_ci	help
48762306a36Sopenharmony_ci	  Say Y here if to include support for the Faraday Technology
48862306a36Sopenharmony_ci	  FTWDT010 watchdog timer embedded in the Cortina Systems Gemini
48962306a36Sopenharmony_ci	  family of devices.
49062306a36Sopenharmony_ci
49162306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
49262306a36Sopenharmony_ci	  module will be called ftwdt010_wdt.
49362306a36Sopenharmony_ci
49462306a36Sopenharmony_ciconfig IXP4XX_WATCHDOG
49562306a36Sopenharmony_ci	tristate "IXP4xx Watchdog"
49662306a36Sopenharmony_ci	depends on ARCH_IXP4XX || (ARM && COMPILE_TEST)
49762306a36Sopenharmony_ci	select WATCHDOG_CORE
49862306a36Sopenharmony_ci	help
49962306a36Sopenharmony_ci	  Say Y here if to include support for the watchdog timer
50062306a36Sopenharmony_ci	  in the Intel IXP4xx network processors. This driver can
50162306a36Sopenharmony_ci	  be built as a module by choosing M. The module will
50262306a36Sopenharmony_ci	  be called ixp4xx_wdt.
50362306a36Sopenharmony_ci
50462306a36Sopenharmony_ci	  Note: The internal IXP4xx watchdog does a soft CPU reset
50562306a36Sopenharmony_ci	  which doesn't reset any peripherals. There are circumstances
50662306a36Sopenharmony_ci	  where the watchdog will fail to reset the board correctly
50762306a36Sopenharmony_ci	  (e.g., if the boot ROM is in an unreadable state).
50862306a36Sopenharmony_ci
50962306a36Sopenharmony_ci	  Say N if you are unsure.
51062306a36Sopenharmony_ci
51162306a36Sopenharmony_ciconfig S3C2410_WATCHDOG
51262306a36Sopenharmony_ci	tristate "S3C6410/S5Pv210/Exynos Watchdog"
51362306a36Sopenharmony_ci	depends on ARCH_S3C64XX || ARCH_S5PV210 || ARCH_EXYNOS || COMPILE_TEST
51462306a36Sopenharmony_ci	select WATCHDOG_CORE
51562306a36Sopenharmony_ci	select MFD_SYSCON if ARCH_EXYNOS
51662306a36Sopenharmony_ci	help
51762306a36Sopenharmony_ci	  Watchdog timer block in the Samsung S3C64xx, S5Pv210 and Exynos
51862306a36Sopenharmony_ci	  SoCs. This will reboot the system when the timer expires with
51962306a36Sopenharmony_ci	  the watchdog enabled.
52062306a36Sopenharmony_ci
52162306a36Sopenharmony_ci	  The driver is limited by the speed of the system's PCLK
52262306a36Sopenharmony_ci	  signal, so with reasonably fast systems (PCLK around 50-66MHz)
52362306a36Sopenharmony_ci	  then watchdog intervals of over approximately 20seconds are
52462306a36Sopenharmony_ci	  unavailable.
52562306a36Sopenharmony_ci
52662306a36Sopenharmony_ci	  Choose Y/M here only if you build for such Samsung SoC.
52762306a36Sopenharmony_ci	  The driver can be built as a module by choosing M, and will
52862306a36Sopenharmony_ci	  be called s3c2410_wdt.
52962306a36Sopenharmony_ci
53062306a36Sopenharmony_ciconfig SA1100_WATCHDOG
53162306a36Sopenharmony_ci	tristate "SA1100/PXA2xx watchdog"
53262306a36Sopenharmony_ci	depends on ARCH_SA1100 || ARCH_PXA || COMPILE_TEST
53362306a36Sopenharmony_ci	help
53462306a36Sopenharmony_ci	  Watchdog timer embedded into SA11x0 and PXA2xx chips. This will
53562306a36Sopenharmony_ci	  reboot your system when timeout is reached.
53662306a36Sopenharmony_ci
53762306a36Sopenharmony_ci	  NOTE: once enabled, this timer cannot be disabled.
53862306a36Sopenharmony_ci
53962306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
54062306a36Sopenharmony_ci	  module will be called sa1100_wdt.
54162306a36Sopenharmony_ci
54262306a36Sopenharmony_ciconfig DW_WATCHDOG
54362306a36Sopenharmony_ci	tristate "Synopsys DesignWare watchdog"
54462306a36Sopenharmony_ci	depends on HAS_IOMEM
54562306a36Sopenharmony_ci	select WATCHDOG_CORE
54662306a36Sopenharmony_ci	help
54762306a36Sopenharmony_ci	  Say Y here if to include support for the Synopsys DesignWare
54862306a36Sopenharmony_ci	  watchdog timer found in many chips.
54962306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
55062306a36Sopenharmony_ci	  module will be called dw_wdt.
55162306a36Sopenharmony_ci
55262306a36Sopenharmony_ciconfig EP93XX_WATCHDOG
55362306a36Sopenharmony_ci	tristate "EP93xx Watchdog"
55462306a36Sopenharmony_ci	depends on ARCH_EP93XX || COMPILE_TEST
55562306a36Sopenharmony_ci	select WATCHDOG_CORE
55662306a36Sopenharmony_ci	help
55762306a36Sopenharmony_ci	  Say Y here if to include support for the watchdog timer
55862306a36Sopenharmony_ci	  embedded in the Cirrus Logic EP93xx family of devices.
55962306a36Sopenharmony_ci
56062306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
56162306a36Sopenharmony_ci	  module will be called ep93xx_wdt.
56262306a36Sopenharmony_ci
56362306a36Sopenharmony_ciconfig OMAP_WATCHDOG
56462306a36Sopenharmony_ci	tristate "OMAP Watchdog"
56562306a36Sopenharmony_ci	depends on ARCH_OMAP16XX || ARCH_OMAP2PLUS || COMPILE_TEST
56662306a36Sopenharmony_ci	select WATCHDOG_CORE
56762306a36Sopenharmony_ci	help
56862306a36Sopenharmony_ci	  Support for TI OMAP1610/OMAP1710/OMAP2420/OMAP3430/OMAP4430 watchdog.
56962306a36Sopenharmony_ci	  Say 'Y' here to enable the
57062306a36Sopenharmony_ci	  OMAP1610/OMAP1710/OMAP2420/OMAP3430/OMAP4430 watchdog timer.
57162306a36Sopenharmony_ci
57262306a36Sopenharmony_ciconfig PNX4008_WATCHDOG
57362306a36Sopenharmony_ci	tristate "LPC32XX Watchdog"
57462306a36Sopenharmony_ci	depends on ARCH_LPC32XX || COMPILE_TEST
57562306a36Sopenharmony_ci	select WATCHDOG_CORE
57662306a36Sopenharmony_ci	help
57762306a36Sopenharmony_ci	  Say Y here if to include support for the watchdog timer
57862306a36Sopenharmony_ci	  in the LPC32XX processor.
57962306a36Sopenharmony_ci	  This driver can be built as a module by choosing M. The module
58062306a36Sopenharmony_ci	  will be called pnx4008_wdt.
58162306a36Sopenharmony_ci
58262306a36Sopenharmony_ci	  Say N if you are unsure.
58362306a36Sopenharmony_ci
58462306a36Sopenharmony_ciconfig DAVINCI_WATCHDOG
58562306a36Sopenharmony_ci	tristate "DaVinci watchdog"
58662306a36Sopenharmony_ci	depends on ARCH_DAVINCI || ARCH_KEYSTONE || COMPILE_TEST
58762306a36Sopenharmony_ci	select WATCHDOG_CORE
58862306a36Sopenharmony_ci	help
58962306a36Sopenharmony_ci	  Say Y here if to include support for the watchdog timer
59062306a36Sopenharmony_ci	  in the DaVinci DM644x/DM646x or Keystone processors.
59162306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
59262306a36Sopenharmony_ci	  module will be called davinci_wdt.
59362306a36Sopenharmony_ci
59462306a36Sopenharmony_ci	  NOTE: once enabled, this timer cannot be disabled.
59562306a36Sopenharmony_ci	  Say N if you are unsure.
59662306a36Sopenharmony_ci
59762306a36Sopenharmony_ciconfig K3_RTI_WATCHDOG
59862306a36Sopenharmony_ci	tristate "Texas Instruments K3 RTI watchdog"
59962306a36Sopenharmony_ci	depends on ARCH_K3 || COMPILE_TEST
60062306a36Sopenharmony_ci	select WATCHDOG_CORE
60162306a36Sopenharmony_ci	help
60262306a36Sopenharmony_ci	  Say Y here if you want to include support for the K3 watchdog
60362306a36Sopenharmony_ci	  timer (RTI module) available in the K3 generation of processors.
60462306a36Sopenharmony_ci
60562306a36Sopenharmony_ciconfig ORION_WATCHDOG
60662306a36Sopenharmony_ci	tristate "Orion watchdog"
60762306a36Sopenharmony_ci	depends on ARCH_ORION5X || ARCH_DOVE || MACH_DOVE || ARCH_MVEBU || COMPILE_TEST
60862306a36Sopenharmony_ci	depends on ARM
60962306a36Sopenharmony_ci	select WATCHDOG_CORE
61062306a36Sopenharmony_ci	help
61162306a36Sopenharmony_ci	  Say Y here if to include support for the watchdog timer
61262306a36Sopenharmony_ci	  in the Marvell Orion5x and Kirkwood ARM SoCs.
61362306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
61462306a36Sopenharmony_ci	  module will be called orion_wdt.
61562306a36Sopenharmony_ci
61662306a36Sopenharmony_ciconfig RN5T618_WATCHDOG
61762306a36Sopenharmony_ci	tristate "Ricoh RN5T618 watchdog"
61862306a36Sopenharmony_ci	depends on MFD_RN5T618 || COMPILE_TEST
61962306a36Sopenharmony_ci	select WATCHDOG_CORE
62062306a36Sopenharmony_ci	help
62162306a36Sopenharmony_ci	  If you say yes here you get support for watchdog on the Ricoh
62262306a36Sopenharmony_ci	  RN5T618 PMIC.
62362306a36Sopenharmony_ci
62462306a36Sopenharmony_ci	  This driver can also be built as a module.  If so, the module
62562306a36Sopenharmony_ci	  will be called rn5t618_wdt.
62662306a36Sopenharmony_ci
62762306a36Sopenharmony_ciconfig SUNXI_WATCHDOG
62862306a36Sopenharmony_ci	tristate "Allwinner SoCs watchdog support"
62962306a36Sopenharmony_ci	depends on ARCH_SUNXI || COMPILE_TEST
63062306a36Sopenharmony_ci	select WATCHDOG_CORE
63162306a36Sopenharmony_ci	help
63262306a36Sopenharmony_ci	  Say Y here to include support for the watchdog timer
63362306a36Sopenharmony_ci	  in Allwinner SoCs.
63462306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
63562306a36Sopenharmony_ci	  module will be called sunxi_wdt.
63662306a36Sopenharmony_ci
63762306a36Sopenharmony_ciconfig NPCM7XX_WATCHDOG
63862306a36Sopenharmony_ci	tristate "Nuvoton NPCM750 watchdog"
63962306a36Sopenharmony_ci	depends on ARCH_NPCM || COMPILE_TEST
64062306a36Sopenharmony_ci	default y if ARCH_NPCM7XX
64162306a36Sopenharmony_ci	select WATCHDOG_CORE
64262306a36Sopenharmony_ci	help
64362306a36Sopenharmony_ci	  Say Y here to include Watchdog timer support for the
64462306a36Sopenharmony_ci	  watchdog embedded into the NPCM7xx.
64562306a36Sopenharmony_ci	  This watchdog is used to reset the system and thus cannot be
64662306a36Sopenharmony_ci	  compiled as a module.
64762306a36Sopenharmony_ci
64862306a36Sopenharmony_ciconfig TWL4030_WATCHDOG
64962306a36Sopenharmony_ci	tristate "TWL4030 Watchdog"
65062306a36Sopenharmony_ci	depends on TWL4030_CORE
65162306a36Sopenharmony_ci	select WATCHDOG_CORE
65262306a36Sopenharmony_ci	help
65362306a36Sopenharmony_ci	  Support for TI TWL4030 watchdog.  Say 'Y' here to enable the
65462306a36Sopenharmony_ci	  watchdog timer support for TWL4030 chips.
65562306a36Sopenharmony_ci
65662306a36Sopenharmony_ciconfig STMP3XXX_RTC_WATCHDOG
65762306a36Sopenharmony_ci	tristate "Freescale STMP3XXX & i.MX23/28 watchdog"
65862306a36Sopenharmony_ci	depends on RTC_DRV_STMP || COMPILE_TEST
65962306a36Sopenharmony_ci	select WATCHDOG_CORE
66062306a36Sopenharmony_ci	help
66162306a36Sopenharmony_ci	  Say Y here to include support for the watchdog timer inside
66262306a36Sopenharmony_ci	  the RTC for the STMP37XX/378X or i.MX23/28 SoC.
66362306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
66462306a36Sopenharmony_ci	  module will be called stmp3xxx_rtc_wdt.
66562306a36Sopenharmony_ci
66662306a36Sopenharmony_ciconfig TS4800_WATCHDOG
66762306a36Sopenharmony_ci	tristate "TS-4800 Watchdog"
66862306a36Sopenharmony_ci	depends on HAS_IOMEM && OF
66962306a36Sopenharmony_ci	depends on SOC_IMX51 || COMPILE_TEST
67062306a36Sopenharmony_ci	select WATCHDOG_CORE
67162306a36Sopenharmony_ci	select MFD_SYSCON
67262306a36Sopenharmony_ci	help
67362306a36Sopenharmony_ci	  Technologic Systems TS-4800 has watchdog timer implemented in
67462306a36Sopenharmony_ci	  an external FPGA. Say Y here if you want to support for the
67562306a36Sopenharmony_ci	  watchdog timer on TS-4800 board.
67662306a36Sopenharmony_ci
67762306a36Sopenharmony_ciconfig TS72XX_WATCHDOG
67862306a36Sopenharmony_ci	tristate "TS-72XX SBC Watchdog"
67962306a36Sopenharmony_ci	depends on MACH_TS72XX || COMPILE_TEST
68062306a36Sopenharmony_ci	select WATCHDOG_CORE
68162306a36Sopenharmony_ci	help
68262306a36Sopenharmony_ci	  Technologic Systems TS-7200, TS-7250 and TS-7260 boards have
68362306a36Sopenharmony_ci	  watchdog timer implemented in a external CPLD chip. Say Y here
68462306a36Sopenharmony_ci	  if you want to support for the watchdog timer on TS-72XX boards.
68562306a36Sopenharmony_ci
68662306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
68762306a36Sopenharmony_ci	  module will be called ts72xx_wdt.
68862306a36Sopenharmony_ci
68962306a36Sopenharmony_ciconfig MAX63XX_WATCHDOG
69062306a36Sopenharmony_ci	tristate "Max63xx watchdog"
69162306a36Sopenharmony_ci	depends on HAS_IOMEM
69262306a36Sopenharmony_ci	select WATCHDOG_CORE
69362306a36Sopenharmony_ci	help
69462306a36Sopenharmony_ci	  Support for memory mapped max63{69,70,71,72,73,74} watchdog timer.
69562306a36Sopenharmony_ci
69662306a36Sopenharmony_ciconfig MAX77620_WATCHDOG
69762306a36Sopenharmony_ci	tristate "Maxim Max77620 Watchdog Timer"
69862306a36Sopenharmony_ci	depends on MFD_MAX77620 || MFD_MAX77714 || COMPILE_TEST
69962306a36Sopenharmony_ci	select WATCHDOG_CORE
70062306a36Sopenharmony_ci	help
70162306a36Sopenharmony_ci	  This is the driver for the Max77620 watchdog timer.
70262306a36Sopenharmony_ci	  Say 'Y' here to enable the watchdog timer support for
70362306a36Sopenharmony_ci	  MAX77620 chips. To compile this driver as a module,
70462306a36Sopenharmony_ci	  choose M here: the module will be called max77620_wdt.
70562306a36Sopenharmony_ci
70662306a36Sopenharmony_ciconfig IMX2_WDT
70762306a36Sopenharmony_ci	tristate "IMX2+ Watchdog"
70862306a36Sopenharmony_ci	depends on ARCH_MXC || ARCH_LAYERSCAPE || COMPILE_TEST
70962306a36Sopenharmony_ci	select REGMAP_MMIO
71062306a36Sopenharmony_ci	select WATCHDOG_CORE
71162306a36Sopenharmony_ci	help
71262306a36Sopenharmony_ci	  This is the driver for the hardware watchdog
71362306a36Sopenharmony_ci	  on the Freescale IMX2 and later processors.
71462306a36Sopenharmony_ci	  If you have one of these processors and wish to have
71562306a36Sopenharmony_ci	  watchdog support enabled, say Y, otherwise say N.
71662306a36Sopenharmony_ci
71762306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
71862306a36Sopenharmony_ci	  module will be called imx2_wdt.
71962306a36Sopenharmony_ci
72062306a36Sopenharmony_ciconfig IMX_SC_WDT
72162306a36Sopenharmony_ci	tristate "IMX SC Watchdog"
72262306a36Sopenharmony_ci	depends on HAVE_ARM_SMCCC
72362306a36Sopenharmony_ci	depends on IMX_SCU || COMPILE_TEST
72462306a36Sopenharmony_ci	select WATCHDOG_CORE
72562306a36Sopenharmony_ci	help
72662306a36Sopenharmony_ci	  This is the driver for the system controller watchdog
72762306a36Sopenharmony_ci	  on the NXP i.MX SoCs with system controller inside, the
72862306a36Sopenharmony_ci	  watchdog driver will call ARM SMC API and trap into
72962306a36Sopenharmony_ci	  ARM-Trusted-Firmware for operations, ARM-Trusted-Firmware
73062306a36Sopenharmony_ci	  will request system controller to execute the operations.
73162306a36Sopenharmony_ci	  If you have one of these processors and wish to have
73262306a36Sopenharmony_ci	  watchdog support enabled, say Y, otherwise say N.
73362306a36Sopenharmony_ci
73462306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
73562306a36Sopenharmony_ci	  module will be called imx_sc_wdt.
73662306a36Sopenharmony_ci
73762306a36Sopenharmony_ciconfig IMX7ULP_WDT
73862306a36Sopenharmony_ci	tristate "IMX7ULP Watchdog"
73962306a36Sopenharmony_ci	depends on ARCH_MXC || COMPILE_TEST
74062306a36Sopenharmony_ci	select WATCHDOG_CORE
74162306a36Sopenharmony_ci	help
74262306a36Sopenharmony_ci	  This is the driver for the hardware watchdog on the Freescale
74362306a36Sopenharmony_ci	  IMX7ULP and later processors. If you have one of these
74462306a36Sopenharmony_ci	  processors and wish to have watchdog support enabled,
74562306a36Sopenharmony_ci	  say Y, otherwise say N.
74662306a36Sopenharmony_ci
74762306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
74862306a36Sopenharmony_ci	  module will be called imx7ulp_wdt.
74962306a36Sopenharmony_ci
75062306a36Sopenharmony_ciconfig DB500_WATCHDOG
75162306a36Sopenharmony_ci	tristate "ST-Ericsson DB800 watchdog"
75262306a36Sopenharmony_ci	depends on MFD_DB8500_PRCMU
75362306a36Sopenharmony_ci	select WATCHDOG_CORE
75462306a36Sopenharmony_ci	default y
75562306a36Sopenharmony_ci	help
75662306a36Sopenharmony_ci	  Say Y here to include Watchdog timer support for the watchdog
75762306a36Sopenharmony_ci	  existing in the prcmu of ST-Ericsson DB8500 platform.
75862306a36Sopenharmony_ci
75962306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
76062306a36Sopenharmony_ci	  module will be called db500_wdt.
76162306a36Sopenharmony_ci
76262306a36Sopenharmony_ciconfig RETU_WATCHDOG
76362306a36Sopenharmony_ci	tristate "Retu watchdog"
76462306a36Sopenharmony_ci	depends on MFD_RETU
76562306a36Sopenharmony_ci	select WATCHDOG_CORE
76662306a36Sopenharmony_ci	help
76762306a36Sopenharmony_ci	  Retu watchdog driver for Nokia Internet Tablets (770, N800,
76862306a36Sopenharmony_ci	  N810). At least on N800 the watchdog cannot be disabled, so
76962306a36Sopenharmony_ci	  this driver is essential and you should enable it.
77062306a36Sopenharmony_ci
77162306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
77262306a36Sopenharmony_ci	  module will be called retu_wdt.
77362306a36Sopenharmony_ci
77462306a36Sopenharmony_ciconfig MOXART_WDT
77562306a36Sopenharmony_ci	tristate "MOXART watchdog"
77662306a36Sopenharmony_ci	depends on ARCH_MOXART || COMPILE_TEST
77762306a36Sopenharmony_ci	help
77862306a36Sopenharmony_ci	  Say Y here to include Watchdog timer support for the watchdog
77962306a36Sopenharmony_ci	  existing on the MOXA ART SoC series platforms.
78062306a36Sopenharmony_ci
78162306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
78262306a36Sopenharmony_ci	  module will be called moxart_wdt.
78362306a36Sopenharmony_ci
78462306a36Sopenharmony_ciconfig ST_LPC_WATCHDOG
78562306a36Sopenharmony_ci	tristate "STMicroelectronics LPC Watchdog"
78662306a36Sopenharmony_ci	depends on ARCH_STI || COMPILE_TEST
78762306a36Sopenharmony_ci	depends on OF
78862306a36Sopenharmony_ci	select WATCHDOG_CORE
78962306a36Sopenharmony_ci	help
79062306a36Sopenharmony_ci	  Say Y here to include STMicroelectronics Low Power Controller
79162306a36Sopenharmony_ci	  (LPC) based Watchdog timer support.
79262306a36Sopenharmony_ci
79362306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
79462306a36Sopenharmony_ci	  module will be called st_lpc_wdt.
79562306a36Sopenharmony_ci
79662306a36Sopenharmony_ciconfig TEGRA_WATCHDOG
79762306a36Sopenharmony_ci	tristate "Tegra watchdog"
79862306a36Sopenharmony_ci	depends on (ARCH_TEGRA || COMPILE_TEST) && HAS_IOMEM
79962306a36Sopenharmony_ci	select WATCHDOG_CORE
80062306a36Sopenharmony_ci	help
80162306a36Sopenharmony_ci	  Say Y here to include support for the watchdog timer
80262306a36Sopenharmony_ci	  embedded in NVIDIA Tegra SoCs.
80362306a36Sopenharmony_ci
80462306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
80562306a36Sopenharmony_ci	  module will be called tegra_wdt.
80662306a36Sopenharmony_ci
80762306a36Sopenharmony_ciconfig QCOM_WDT
80862306a36Sopenharmony_ci	tristate "QCOM watchdog"
80962306a36Sopenharmony_ci	depends on HAS_IOMEM
81062306a36Sopenharmony_ci	depends on ARCH_QCOM || COMPILE_TEST
81162306a36Sopenharmony_ci	select WATCHDOG_CORE
81262306a36Sopenharmony_ci	help
81362306a36Sopenharmony_ci	  Say Y here to include Watchdog timer support for the watchdog found
81462306a36Sopenharmony_ci	  on QCOM chipsets.  Currently supported targets are the MSM8960,
81562306a36Sopenharmony_ci	  APQ8064, and IPQ8064.
81662306a36Sopenharmony_ci
81762306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
81862306a36Sopenharmony_ci	  module will be called qcom_wdt.
81962306a36Sopenharmony_ci
82062306a36Sopenharmony_ciconfig MESON_GXBB_WATCHDOG
82162306a36Sopenharmony_ci	tristate "Amlogic Meson GXBB SoCs watchdog support"
82262306a36Sopenharmony_ci	depends on ARCH_MESON || COMPILE_TEST
82362306a36Sopenharmony_ci	select WATCHDOG_CORE
82462306a36Sopenharmony_ci	help
82562306a36Sopenharmony_ci	  Say Y here to include support for the watchdog timer
82662306a36Sopenharmony_ci	  in Amlogic Meson GXBB SoCs.
82762306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
82862306a36Sopenharmony_ci	  module will be called meson_gxbb_wdt.
82962306a36Sopenharmony_ci
83062306a36Sopenharmony_ciconfig MESON_WATCHDOG
83162306a36Sopenharmony_ci	tristate "Amlogic Meson SoCs watchdog support"
83262306a36Sopenharmony_ci	depends on ARCH_MESON || COMPILE_TEST
83362306a36Sopenharmony_ci	select WATCHDOG_CORE
83462306a36Sopenharmony_ci	help
83562306a36Sopenharmony_ci	  Say Y here to include support for the watchdog timer
83662306a36Sopenharmony_ci	  in Amlogic Meson SoCs.
83762306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
83862306a36Sopenharmony_ci	  module will be called meson_wdt.
83962306a36Sopenharmony_ci
84062306a36Sopenharmony_ciconfig MEDIATEK_WATCHDOG
84162306a36Sopenharmony_ci	tristate "Mediatek SoCs watchdog support"
84262306a36Sopenharmony_ci	depends on ARCH_MEDIATEK || COMPILE_TEST
84362306a36Sopenharmony_ci	default ARCH_MEDIATEK
84462306a36Sopenharmony_ci	select WATCHDOG_CORE
84562306a36Sopenharmony_ci	select RESET_CONTROLLER
84662306a36Sopenharmony_ci	help
84762306a36Sopenharmony_ci	  Say Y here to include support for the watchdog timer
84862306a36Sopenharmony_ci	  in Mediatek SoCs.
84962306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
85062306a36Sopenharmony_ci	  module will be called mtk_wdt.
85162306a36Sopenharmony_ci
85262306a36Sopenharmony_ciconfig DIGICOLOR_WATCHDOG
85362306a36Sopenharmony_ci	tristate "Conexant Digicolor SoCs watchdog support"
85462306a36Sopenharmony_ci	depends on ARCH_DIGICOLOR || COMPILE_TEST
85562306a36Sopenharmony_ci	select WATCHDOG_CORE
85662306a36Sopenharmony_ci	help
85762306a36Sopenharmony_ci	  Say Y here to include support for the watchdog timer
85862306a36Sopenharmony_ci	  in Conexant Digicolor SoCs.
85962306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
86062306a36Sopenharmony_ci	  module will be called digicolor_wdt.
86162306a36Sopenharmony_ci
86262306a36Sopenharmony_ciconfig ARM_SMC_WATCHDOG
86362306a36Sopenharmony_ci	tristate "ARM Secure Monitor Call based watchdog support"
86462306a36Sopenharmony_ci	depends on ARM || ARM64
86562306a36Sopenharmony_ci	depends on OF
86662306a36Sopenharmony_ci	depends on HAVE_ARM_SMCCC
86762306a36Sopenharmony_ci	select WATCHDOG_CORE
86862306a36Sopenharmony_ci	help
86962306a36Sopenharmony_ci	  Say Y here to include support for a watchdog timer
87062306a36Sopenharmony_ci	  implemented by the EL3 Secure Monitor on ARM platforms.
87162306a36Sopenharmony_ci	  Requires firmware support.
87262306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
87362306a36Sopenharmony_ci	  module will be called arm_smc_wdt.
87462306a36Sopenharmony_ci
87562306a36Sopenharmony_ciconfig LPC18XX_WATCHDOG
87662306a36Sopenharmony_ci	tristate "LPC18xx/43xx Watchdog"
87762306a36Sopenharmony_ci	depends on ARCH_LPC18XX || COMPILE_TEST
87862306a36Sopenharmony_ci	depends on HAS_IOMEM
87962306a36Sopenharmony_ci	select WATCHDOG_CORE
88062306a36Sopenharmony_ci	help
88162306a36Sopenharmony_ci	  Say Y here if to include support for the watchdog timer
88262306a36Sopenharmony_ci	  in NXP LPC SoCs family, which includes LPC18xx/LPC43xx
88362306a36Sopenharmony_ci	  processors.
88462306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
88562306a36Sopenharmony_ci	  module will be called lpc18xx_wdt.
88662306a36Sopenharmony_ci
88762306a36Sopenharmony_ciconfig RENESAS_WDT
88862306a36Sopenharmony_ci	tristate "Renesas WDT Watchdog"
88962306a36Sopenharmony_ci	depends on ARCH_RENESAS || COMPILE_TEST
89062306a36Sopenharmony_ci	select WATCHDOG_CORE
89162306a36Sopenharmony_ci	help
89262306a36Sopenharmony_ci	  This driver adds watchdog support for the integrated watchdogs in the
89362306a36Sopenharmony_ci	  Renesas R-Car and other SH-Mobile SoCs (usually named RWDT or SWDT).
89462306a36Sopenharmony_ci
89562306a36Sopenharmony_ciconfig RENESAS_RZAWDT
89662306a36Sopenharmony_ci	tristate "Renesas RZ/A WDT Watchdog"
89762306a36Sopenharmony_ci	depends on ARCH_RENESAS || COMPILE_TEST
89862306a36Sopenharmony_ci	select WATCHDOG_CORE
89962306a36Sopenharmony_ci	help
90062306a36Sopenharmony_ci	  This driver adds watchdog support for the integrated watchdogs in the
90162306a36Sopenharmony_ci	  Renesas RZ/A SoCs. These watchdogs can be used to reset a system.
90262306a36Sopenharmony_ci
90362306a36Sopenharmony_ciconfig RENESAS_RZN1WDT
90462306a36Sopenharmony_ci	tristate "Renesas RZ/N1 watchdog"
90562306a36Sopenharmony_ci	depends on ARCH_RENESAS || COMPILE_TEST
90662306a36Sopenharmony_ci	select WATCHDOG_CORE
90762306a36Sopenharmony_ci	help
90862306a36Sopenharmony_ci	  This driver adds watchdog support for the integrated watchdogs in the
90962306a36Sopenharmony_ci	  Renesas RZ/N1 SoCs. These watchdogs can be used to reset a system.
91062306a36Sopenharmony_ci
91162306a36Sopenharmony_ciconfig RENESAS_RZG2LWDT
91262306a36Sopenharmony_ci	tristate "Renesas RZ/G2L WDT Watchdog"
91362306a36Sopenharmony_ci	depends on ARCH_RENESAS || COMPILE_TEST
91462306a36Sopenharmony_ci	select WATCHDOG_CORE
91562306a36Sopenharmony_ci	help
91662306a36Sopenharmony_ci	  This driver adds watchdog support for the integrated watchdogs in the
91762306a36Sopenharmony_ci	  Renesas RZ/G2L SoCs. These watchdogs can be used to reset a system.
91862306a36Sopenharmony_ci
91962306a36Sopenharmony_ciconfig ASPEED_WATCHDOG
92062306a36Sopenharmony_ci	tristate "Aspeed BMC watchdog support"
92162306a36Sopenharmony_ci	depends on ARCH_ASPEED || COMPILE_TEST
92262306a36Sopenharmony_ci	select WATCHDOG_CORE
92362306a36Sopenharmony_ci	help
92462306a36Sopenharmony_ci	  Say Y here to include support for the watchdog timer
92562306a36Sopenharmony_ci	  in Aspeed BMC SoCs.
92662306a36Sopenharmony_ci
92762306a36Sopenharmony_ci	  This driver is required to reboot the SoC.
92862306a36Sopenharmony_ci
92962306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
93062306a36Sopenharmony_ci	  module will be called aspeed_wdt.
93162306a36Sopenharmony_ci
93262306a36Sopenharmony_ciconfig STM32_WATCHDOG
93362306a36Sopenharmony_ci	tristate "STM32 Independent WatchDoG (IWDG) support"
93462306a36Sopenharmony_ci	depends on ARCH_STM32 || COMPILE_TEST
93562306a36Sopenharmony_ci	select WATCHDOG_CORE
93662306a36Sopenharmony_ci	default y
93762306a36Sopenharmony_ci	help
93862306a36Sopenharmony_ci	  Say Y here to include support for the watchdog timer
93962306a36Sopenharmony_ci	  in stm32 SoCs.
94062306a36Sopenharmony_ci
94162306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
94262306a36Sopenharmony_ci	  module will be called stm32_iwdg.
94362306a36Sopenharmony_ci
94462306a36Sopenharmony_ciconfig STPMIC1_WATCHDOG
94562306a36Sopenharmony_ci	tristate "STPMIC1 PMIC watchdog support"
94662306a36Sopenharmony_ci	depends on MFD_STPMIC1
94762306a36Sopenharmony_ci	select WATCHDOG_CORE
94862306a36Sopenharmony_ci	help
94962306a36Sopenharmony_ci	  Say Y here to include watchdog support embedded into STPMIC1 PMIC.
95062306a36Sopenharmony_ci	  If the watchdog timer expires, stpmic1 will shut down all its power
95162306a36Sopenharmony_ci	  supplies.
95262306a36Sopenharmony_ci
95362306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
95462306a36Sopenharmony_ci	  module will be called spmic1_wdt.
95562306a36Sopenharmony_ci
95662306a36Sopenharmony_ciconfig UNIPHIER_WATCHDOG
95762306a36Sopenharmony_ci	tristate "UniPhier watchdog support"
95862306a36Sopenharmony_ci	depends on ARCH_UNIPHIER || COMPILE_TEST
95962306a36Sopenharmony_ci	depends on OF && MFD_SYSCON
96062306a36Sopenharmony_ci	select WATCHDOG_CORE
96162306a36Sopenharmony_ci	help
96262306a36Sopenharmony_ci	  Say Y here to include support watchdog timer embedded
96362306a36Sopenharmony_ci	  into the UniPhier system.
96462306a36Sopenharmony_ci
96562306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
96662306a36Sopenharmony_ci	  module will be called uniphier_wdt.
96762306a36Sopenharmony_ci
96862306a36Sopenharmony_ciconfig RTD119X_WATCHDOG
96962306a36Sopenharmony_ci	bool "Realtek RTD119x/RTD129x watchdog support"
97062306a36Sopenharmony_ci	depends on ARCH_REALTEK || COMPILE_TEST
97162306a36Sopenharmony_ci	depends on OF
97262306a36Sopenharmony_ci	select WATCHDOG_CORE
97362306a36Sopenharmony_ci	default ARCH_REALTEK
97462306a36Sopenharmony_ci	help
97562306a36Sopenharmony_ci	  Say Y here to include support for the watchdog timer in
97662306a36Sopenharmony_ci	  Realtek RTD1295 SoCs.
97762306a36Sopenharmony_ci
97862306a36Sopenharmony_ciconfig REALTEK_OTTO_WDT
97962306a36Sopenharmony_ci	tristate "Realtek Otto MIPS watchdog support"
98062306a36Sopenharmony_ci	depends on MACH_REALTEK_RTL || COMPILE_TEST
98162306a36Sopenharmony_ci	depends on COMMON_CLK
98262306a36Sopenharmony_ci	select WATCHDOG_CORE
98362306a36Sopenharmony_ci	default MACH_REALTEK_RTL
98462306a36Sopenharmony_ci	help
98562306a36Sopenharmony_ci	  Say Y here to include support for the watchdog timer on Realtek
98662306a36Sopenharmony_ci	  RTL838x, RTL839x, RTL930x SoCs. This watchdog has pretimeout
98762306a36Sopenharmony_ci	  notifications and system reset on timeout.
98862306a36Sopenharmony_ci
98962306a36Sopenharmony_ci	  When built as a module this will be called realtek_otto_wdt.
99062306a36Sopenharmony_ci
99162306a36Sopenharmony_ciconfig SPRD_WATCHDOG
99262306a36Sopenharmony_ci	tristate "Spreadtrum watchdog support"
99362306a36Sopenharmony_ci	depends on ARCH_SPRD || COMPILE_TEST
99462306a36Sopenharmony_ci	select WATCHDOG_CORE
99562306a36Sopenharmony_ci	help
99662306a36Sopenharmony_ci	  Say Y here to include watchdog timer supported
99762306a36Sopenharmony_ci	  by Spreadtrum system.
99862306a36Sopenharmony_ci
99962306a36Sopenharmony_ciconfig PM8916_WATCHDOG
100062306a36Sopenharmony_ci	tristate "QCOM PM8916 pmic watchdog"
100162306a36Sopenharmony_ci	depends on OF && MFD_SPMI_PMIC
100262306a36Sopenharmony_ci	select WATCHDOG_CORE
100362306a36Sopenharmony_ci	help
100462306a36Sopenharmony_ci	  Say Y here to include support watchdog timer embedded into the
100562306a36Sopenharmony_ci	  pm8916 module.
100662306a36Sopenharmony_ci
100762306a36Sopenharmony_ciconfig VISCONTI_WATCHDOG
100862306a36Sopenharmony_ci	tristate "Toshiba Visconti series watchdog support"
100962306a36Sopenharmony_ci	depends on ARCH_VISCONTI || COMPILE_TEST
101062306a36Sopenharmony_ci	select WATCHDOG_CORE
101162306a36Sopenharmony_ci	help
101262306a36Sopenharmony_ci	  Say Y here to include support for the watchdog timer in Toshiba
101362306a36Sopenharmony_ci	  Visconti SoCs.
101462306a36Sopenharmony_ci
101562306a36Sopenharmony_ciconfig MSC313E_WATCHDOG
101662306a36Sopenharmony_ci	tristate "MStar MSC313e watchdog"
101762306a36Sopenharmony_ci	depends on ARCH_MSTARV7 || COMPILE_TEST
101862306a36Sopenharmony_ci	select WATCHDOG_CORE
101962306a36Sopenharmony_ci	help
102062306a36Sopenharmony_ci	  Say Y here to include support for the Watchdog timer embedded
102162306a36Sopenharmony_ci	  into MStar MSC313e chips. This will reboot your system when the
102262306a36Sopenharmony_ci	  timeout is reached.
102362306a36Sopenharmony_ci
102462306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
102562306a36Sopenharmony_ci	  module will be called msc313e_wdt.
102662306a36Sopenharmony_ci
102762306a36Sopenharmony_ciconfig APPLE_WATCHDOG
102862306a36Sopenharmony_ci	tristate "Apple SoC watchdog"
102962306a36Sopenharmony_ci	depends on ARCH_APPLE || COMPILE_TEST
103062306a36Sopenharmony_ci	select WATCHDOG_CORE
103162306a36Sopenharmony_ci	help
103262306a36Sopenharmony_ci	  Say Y here to include support for the Watchdog found in Apple
103362306a36Sopenharmony_ci	  SoCs such as the M1. Next to the common watchdog features this
103462306a36Sopenharmony_ci	  driver is also required in order to reboot these SoCs.
103562306a36Sopenharmony_ci
103662306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
103762306a36Sopenharmony_ci	  module will be called apple_wdt.
103862306a36Sopenharmony_ci
103962306a36Sopenharmony_ciconfig SUNPLUS_WATCHDOG
104062306a36Sopenharmony_ci	tristate "Sunplus watchdog support"
104162306a36Sopenharmony_ci	depends on ARCH_SUNPLUS || COMPILE_TEST
104262306a36Sopenharmony_ci	select WATCHDOG_CORE
104362306a36Sopenharmony_ci	help
104462306a36Sopenharmony_ci	  Say Y here to include support for the watchdog timer
104562306a36Sopenharmony_ci	  in Sunplus SoCs.
104662306a36Sopenharmony_ci
104762306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
104862306a36Sopenharmony_ci	  module will be called sunplus_wdt.
104962306a36Sopenharmony_ci
105062306a36Sopenharmony_ci# X86 (i386 + ia64 + x86_64) Architecture
105162306a36Sopenharmony_ci
105262306a36Sopenharmony_ciconfig ACQUIRE_WDT
105362306a36Sopenharmony_ci	tristate "Acquire SBC Watchdog Timer"
105462306a36Sopenharmony_ci	depends on X86
105562306a36Sopenharmony_ci	help
105662306a36Sopenharmony_ci	  This is the driver for the hardware watchdog on Single Board
105762306a36Sopenharmony_ci	  Computers produced by Acquire Inc (and others). This watchdog
105862306a36Sopenharmony_ci	  simply watches your kernel to make sure it doesn't freeze, and if
105962306a36Sopenharmony_ci	  it does, it reboots your computer after a certain amount of time.
106062306a36Sopenharmony_ci
106162306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
106262306a36Sopenharmony_ci	  module will be called acquirewdt.
106362306a36Sopenharmony_ci
106462306a36Sopenharmony_ci	  Most people will say N.
106562306a36Sopenharmony_ci
106662306a36Sopenharmony_ciconfig ADVANTECH_WDT
106762306a36Sopenharmony_ci	tristate "Advantech SBC Watchdog Timer"
106862306a36Sopenharmony_ci	depends on X86 || COMPILE_TEST
106962306a36Sopenharmony_ci	help
107062306a36Sopenharmony_ci	  If you are configuring a Linux kernel for the Advantech single-board
107162306a36Sopenharmony_ci	  computer, say `Y' here to support its built-in watchdog timer
107262306a36Sopenharmony_ci	  feature. More information can be found at
107362306a36Sopenharmony_ci	  <https://www.advantech.com.tw/products/>
107462306a36Sopenharmony_ci
107562306a36Sopenharmony_ciconfig ADVANTECH_EC_WDT
107662306a36Sopenharmony_ci	tristate "Advantech Embedded Controller Watchdog Timer"
107762306a36Sopenharmony_ci	depends on X86 || COMPILE_TEST
107862306a36Sopenharmony_ci	select ISA_BUS_API
107962306a36Sopenharmony_ci	select WATCHDOG_CORE
108062306a36Sopenharmony_ci	help
108162306a36Sopenharmony_ci		This driver supports Advantech products with ITE based Embedded Controller.
108262306a36Sopenharmony_ci		It does not support Advantech products with other ECs or without EC.
108362306a36Sopenharmony_ci
108462306a36Sopenharmony_ciconfig ALIM1535_WDT
108562306a36Sopenharmony_ci	tristate "ALi M1535 PMU Watchdog Timer"
108662306a36Sopenharmony_ci	depends on (X86 || COMPILE_TEST) && PCI
108762306a36Sopenharmony_ci	help
108862306a36Sopenharmony_ci	  This is the driver for the hardware watchdog on the ALi M1535 PMU.
108962306a36Sopenharmony_ci
109062306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
109162306a36Sopenharmony_ci	  module will be called alim1535_wdt.
109262306a36Sopenharmony_ci
109362306a36Sopenharmony_ci	  Most people will say N.
109462306a36Sopenharmony_ci
109562306a36Sopenharmony_ciconfig ALIM7101_WDT
109662306a36Sopenharmony_ci	tristate "ALi M7101 PMU Computer Watchdog"
109762306a36Sopenharmony_ci	depends on PCI
109862306a36Sopenharmony_ci	help
109962306a36Sopenharmony_ci	  This is the driver for the hardware watchdog on the ALi M7101 PMU
110062306a36Sopenharmony_ci	  as used in the x86 Cobalt servers and also found in some
110162306a36Sopenharmony_ci	  SPARC Netra servers too.
110262306a36Sopenharmony_ci
110362306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
110462306a36Sopenharmony_ci	  module will be called alim7101_wdt.
110562306a36Sopenharmony_ci
110662306a36Sopenharmony_ci	  Most people will say N.
110762306a36Sopenharmony_ci
110862306a36Sopenharmony_ciconfig EBC_C384_WDT
110962306a36Sopenharmony_ci	tristate "WinSystems EBC-C384 Watchdog Timer"
111062306a36Sopenharmony_ci	depends on X86 || COMPILE_TEST
111162306a36Sopenharmony_ci	select ISA_BUS_API
111262306a36Sopenharmony_ci	select WATCHDOG_CORE
111362306a36Sopenharmony_ci	help
111462306a36Sopenharmony_ci	  Enables watchdog timer support for the watchdog timer on the
111562306a36Sopenharmony_ci	  WinSystems EBC-C384 motherboard. The timeout may be configured via
111662306a36Sopenharmony_ci	  the timeout module parameter.
111762306a36Sopenharmony_ci
111862306a36Sopenharmony_ciconfig EXAR_WDT
111962306a36Sopenharmony_ci	tristate "Exar Watchdog Timer"
112062306a36Sopenharmony_ci	depends on X86 || COMPILE_TEST
112162306a36Sopenharmony_ci	select WATCHDOG_CORE
112262306a36Sopenharmony_ci	help
112362306a36Sopenharmony_ci	  Enables watchdog timer support for the watchdog timer present
112462306a36Sopenharmony_ci	  in some Exar/MaxLinear UART chips like the XR28V38x.
112562306a36Sopenharmony_ci
112662306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
112762306a36Sopenharmony_ci	  module will be called exar_wdt.
112862306a36Sopenharmony_ci
112962306a36Sopenharmony_ciconfig F71808E_WDT
113062306a36Sopenharmony_ci	tristate "Fintek F718xx, F818xx Super I/O Watchdog"
113162306a36Sopenharmony_ci	depends on X86 || COMPILE_TEST
113262306a36Sopenharmony_ci	select WATCHDOG_CORE
113362306a36Sopenharmony_ci	help
113462306a36Sopenharmony_ci	  This is the driver for the hardware watchdog on the Fintek F71808E,
113562306a36Sopenharmony_ci	  F71862FG, F71868, F71869, F71882FG, F71889FG, F81803, F81865, and
113662306a36Sopenharmony_ci	  F81866 Super I/O controllers.
113762306a36Sopenharmony_ci
113862306a36Sopenharmony_ci	  You can compile this driver directly into the kernel, or use
113962306a36Sopenharmony_ci	  it as a module.  The module will be called f71808e_wdt.
114062306a36Sopenharmony_ci
114162306a36Sopenharmony_ciconfig SP5100_TCO
114262306a36Sopenharmony_ci	tristate "AMD/ATI SP5100 TCO Timer/Watchdog"
114362306a36Sopenharmony_ci	depends on (X86 || COMPILE_TEST) && PCI
114462306a36Sopenharmony_ci	select WATCHDOG_CORE
114562306a36Sopenharmony_ci	help
114662306a36Sopenharmony_ci	  Hardware watchdog driver for the AMD/ATI SP5100 chipset. The TCO
114762306a36Sopenharmony_ci	  (Total Cost of Ownership) timer is a watchdog timer that will reboot
114862306a36Sopenharmony_ci	  the machine after its expiration. The expiration time can be
114962306a36Sopenharmony_ci	  configured with the "heartbeat" parameter.
115062306a36Sopenharmony_ci
115162306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
115262306a36Sopenharmony_ci	  module will be called sp5100_tco.
115362306a36Sopenharmony_ci
115462306a36Sopenharmony_ciconfig GEODE_WDT
115562306a36Sopenharmony_ci	tristate "AMD Geode CS5535/CS5536 Watchdog"
115662306a36Sopenharmony_ci	depends on CS5535_MFGPT
115762306a36Sopenharmony_ci	help
115862306a36Sopenharmony_ci	  This driver enables a watchdog capability built into the
115962306a36Sopenharmony_ci	  CS5535/CS5536 companion chips for the AMD Geode GX and LX
116062306a36Sopenharmony_ci	  processors.  This watchdog watches your kernel to make sure
116162306a36Sopenharmony_ci	  it doesn't freeze, and if it does, it reboots your computer after
116262306a36Sopenharmony_ci	  a certain amount of time.
116362306a36Sopenharmony_ci
116462306a36Sopenharmony_ci	  You can compile this driver directly into the kernel, or use
116562306a36Sopenharmony_ci	  it as a module.  The module will be called geodewdt.
116662306a36Sopenharmony_ci
116762306a36Sopenharmony_ciconfig SC520_WDT
116862306a36Sopenharmony_ci	tristate "AMD Elan SC520 processor Watchdog"
116962306a36Sopenharmony_ci	depends on MELAN || COMPILE_TEST
117062306a36Sopenharmony_ci	help
117162306a36Sopenharmony_ci	  This is the driver for the hardware watchdog built in to the
117262306a36Sopenharmony_ci	  AMD "Elan" SC520 microcomputer commonly used in embedded systems.
117362306a36Sopenharmony_ci	  This watchdog simply watches your kernel to make sure it doesn't
117462306a36Sopenharmony_ci	  freeze, and if it does, it reboots your computer after a certain
117562306a36Sopenharmony_ci	  amount of time.
117662306a36Sopenharmony_ci
117762306a36Sopenharmony_ci	  You can compile this driver directly into the kernel, or use
117862306a36Sopenharmony_ci	  it as a module.  The module will be called sc520_wdt.
117962306a36Sopenharmony_ci
118062306a36Sopenharmony_ciconfig SBC_FITPC2_WATCHDOG
118162306a36Sopenharmony_ci	tristate "Compulab SBC-FITPC2 watchdog"
118262306a36Sopenharmony_ci	depends on X86 || COMPILE_TEST
118362306a36Sopenharmony_ci	help
118462306a36Sopenharmony_ci	  This is the driver for the built-in watchdog timer on the fit-PC2,
118562306a36Sopenharmony_ci	  fit-PC2i, CM-iAM single-board computers made by Compulab.
118662306a36Sopenharmony_ci
118762306a36Sopenharmony_ci	  It's possible to enable the watchdog timer either from BIOS (F2) or
118862306a36Sopenharmony_ci	  from booted Linux.
118962306a36Sopenharmony_ci	  When the "Watchdog Timer Value" is enabled one can set 31-255 seconds
119062306a36Sopenharmony_ci	  operational range.
119162306a36Sopenharmony_ci
119262306a36Sopenharmony_ci	  Entering BIOS setup temporarily disables watchdog operation regardless
119362306a36Sopenharmony_ci	  of current state, so system will not be restarted while user is in
119462306a36Sopenharmony_ci	  BIOS setup.
119562306a36Sopenharmony_ci
119662306a36Sopenharmony_ci	  Once the watchdog is enabled the system will be restarted every
119762306a36Sopenharmony_ci	  "Watchdog Timer Value" period, so to prevent it user can restart or
119862306a36Sopenharmony_ci	  disable the watchdog.
119962306a36Sopenharmony_ci
120062306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
120162306a36Sopenharmony_ci	  module will be called sbc_fitpc2_wdt.
120262306a36Sopenharmony_ci
120362306a36Sopenharmony_ci	  Most people will say N.
120462306a36Sopenharmony_ci
120562306a36Sopenharmony_ciconfig EUROTECH_WDT
120662306a36Sopenharmony_ci	tristate "Eurotech CPU-1220/1410 Watchdog Timer"
120762306a36Sopenharmony_ci	depends on X86 || COMPILE_TEST
120862306a36Sopenharmony_ci	help
120962306a36Sopenharmony_ci	  Enable support for the watchdog timer on the Eurotech CPU-1220 and
121062306a36Sopenharmony_ci	  CPU-1410 cards.  These are PC/104 SBCs. Spec sheets and product
121162306a36Sopenharmony_ci	  information are at <http://www.eurotech.it/>.
121262306a36Sopenharmony_ci
121362306a36Sopenharmony_ciconfig IB700_WDT
121462306a36Sopenharmony_ci	tristate "IB700 SBC Watchdog Timer"
121562306a36Sopenharmony_ci	depends on X86 || COMPILE_TEST
121662306a36Sopenharmony_ci	help
121762306a36Sopenharmony_ci	  This is the driver for the hardware watchdog on the IB700 Single
121862306a36Sopenharmony_ci	  Board Computer produced by TMC Technology (www.tmc-uk.com). This
121962306a36Sopenharmony_ci	  watchdog simply watches your kernel to make sure it doesn't freeze,
122062306a36Sopenharmony_ci	  and if it does, it reboots your computer after a certain amount of time.
122162306a36Sopenharmony_ci
122262306a36Sopenharmony_ci	  This driver is like the WDT501 driver but for slightly different
122362306a36Sopenharmony_ci	  hardware.
122462306a36Sopenharmony_ci
122562306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
122662306a36Sopenharmony_ci	  module will be called ib700wdt.
122762306a36Sopenharmony_ci
122862306a36Sopenharmony_ci	  Most people will say N.
122962306a36Sopenharmony_ci
123062306a36Sopenharmony_ciconfig IBMASR
123162306a36Sopenharmony_ci	tristate "IBM Automatic Server Restart"
123262306a36Sopenharmony_ci	depends on X86 || COMPILE_TEST
123362306a36Sopenharmony_ci	help
123462306a36Sopenharmony_ci	  This is the driver for the IBM Automatic Server Restart watchdog
123562306a36Sopenharmony_ci	  timer built-in into some eServer xSeries machines.
123662306a36Sopenharmony_ci
123762306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
123862306a36Sopenharmony_ci	  module will be called ibmasr.
123962306a36Sopenharmony_ci
124062306a36Sopenharmony_ciconfig WAFER_WDT
124162306a36Sopenharmony_ci	tristate "ICP Single Board Computer Watchdog Timer"
124262306a36Sopenharmony_ci	depends on X86 || COMPILE_TEST
124362306a36Sopenharmony_ci	help
124462306a36Sopenharmony_ci	  This is a driver for the hardware watchdog on the ICP Single
124562306a36Sopenharmony_ci	  Board Computer. This driver is working on (at least) the following
124662306a36Sopenharmony_ci	  IPC SBC's: Wafer 5823, Rocky 4783, Rocky 3703 and Rocky 3782.
124762306a36Sopenharmony_ci
124862306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
124962306a36Sopenharmony_ci	  module will be called wafer5823wdt.
125062306a36Sopenharmony_ci
125162306a36Sopenharmony_ciconfig I6300ESB_WDT
125262306a36Sopenharmony_ci	tristate "Intel 6300ESB Timer/Watchdog"
125362306a36Sopenharmony_ci	depends on PCI
125462306a36Sopenharmony_ci	select WATCHDOG_CORE
125562306a36Sopenharmony_ci	help
125662306a36Sopenharmony_ci	  Hardware driver for the watchdog timer built into the Intel
125762306a36Sopenharmony_ci	  6300ESB controller hub.
125862306a36Sopenharmony_ci
125962306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
126062306a36Sopenharmony_ci	  module will be called i6300esb.
126162306a36Sopenharmony_ci
126262306a36Sopenharmony_ciconfig IE6XX_WDT
126362306a36Sopenharmony_ci	tristate "Intel Atom E6xx Watchdog"
126462306a36Sopenharmony_ci	depends on (X86 || COMPILE_TEST) && PCI
126562306a36Sopenharmony_ci	select WATCHDOG_CORE
126662306a36Sopenharmony_ci	select MFD_CORE
126762306a36Sopenharmony_ci	select LPC_SCH
126862306a36Sopenharmony_ci	help
126962306a36Sopenharmony_ci	  Hardware driver for the watchdog timer built into the Intel
127062306a36Sopenharmony_ci	  Atom E6XX (TunnelCreek) processor.
127162306a36Sopenharmony_ci
127262306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
127362306a36Sopenharmony_ci	  module will be called ie6xx_wdt.
127462306a36Sopenharmony_ci
127562306a36Sopenharmony_ciconfig INTEL_MID_WATCHDOG
127662306a36Sopenharmony_ci	tristate "Intel MID Watchdog Timer"
127762306a36Sopenharmony_ci	depends on X86_INTEL_MID
127862306a36Sopenharmony_ci	select WATCHDOG_CORE
127962306a36Sopenharmony_ci	help
128062306a36Sopenharmony_ci	  Watchdog timer driver built into the Intel SCU for Intel MID
128162306a36Sopenharmony_ci	  Platforms.
128262306a36Sopenharmony_ci
128362306a36Sopenharmony_ci	  This driver currently supports only the watchdog evolution
128462306a36Sopenharmony_ci	  implementation in SCU, available for Merrifield generation.
128562306a36Sopenharmony_ci
128662306a36Sopenharmony_ci	  To compile this driver as a module, choose M here.
128762306a36Sopenharmony_ci
128862306a36Sopenharmony_ciconfig ITCO_WDT
128962306a36Sopenharmony_ci	tristate "Intel TCO Timer/Watchdog"
129062306a36Sopenharmony_ci	depends on (X86 || IA64) && PCI
129162306a36Sopenharmony_ci	select WATCHDOG_CORE
129262306a36Sopenharmony_ci	depends on I2C || I2C=n
129362306a36Sopenharmony_ci	depends on MFD_INTEL_PMC_BXT || !MFD_INTEL_PMC_BXT
129462306a36Sopenharmony_ci	select LPC_ICH if !EXPERT
129562306a36Sopenharmony_ci	select I2C_I801 if !EXPERT && I2C
129662306a36Sopenharmony_ci	help
129762306a36Sopenharmony_ci	  Hardware driver for the intel TCO timer based watchdog devices.
129862306a36Sopenharmony_ci	  These drivers are included in the Intel 82801 I/O Controller
129962306a36Sopenharmony_ci	  Hub family (from ICH0 up to ICH10) and in the Intel 63xxESB
130062306a36Sopenharmony_ci	  controller hub.
130162306a36Sopenharmony_ci
130262306a36Sopenharmony_ci	  The TCO (Total Cost of Ownership) timer is a watchdog timer
130362306a36Sopenharmony_ci	  that will reboot the machine after its second expiration. The
130462306a36Sopenharmony_ci	  expiration time can be configured with the "heartbeat" parameter.
130562306a36Sopenharmony_ci
130662306a36Sopenharmony_ci	  On some motherboards the driver may fail to reset the chipset's
130762306a36Sopenharmony_ci	  NO_REBOOT flag which prevents the watchdog from rebooting the
130862306a36Sopenharmony_ci	  machine. If this is the case you will get a kernel message like
130962306a36Sopenharmony_ci	  "failed to reset NO_REBOOT flag, reboot disabled by hardware".
131062306a36Sopenharmony_ci
131162306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
131262306a36Sopenharmony_ci	  module will be called iTCO_wdt.
131362306a36Sopenharmony_ci
131462306a36Sopenharmony_ciconfig ITCO_VENDOR_SUPPORT
131562306a36Sopenharmony_ci	bool "Intel TCO Timer/Watchdog Specific Vendor Support"
131662306a36Sopenharmony_ci	depends on ITCO_WDT
131762306a36Sopenharmony_ci	help
131862306a36Sopenharmony_ci	  Add vendor specific support to the intel TCO timer based watchdog
131962306a36Sopenharmony_ci	  devices. At this moment we only have additional support for some
132062306a36Sopenharmony_ci	  SuperMicro Inc. motherboards.
132162306a36Sopenharmony_ci
132262306a36Sopenharmony_ciconfig IT8712F_WDT
132362306a36Sopenharmony_ci	tristate "IT8712F (Smart Guardian) Watchdog Timer"
132462306a36Sopenharmony_ci	depends on X86 || COMPILE_TEST
132562306a36Sopenharmony_ci	help
132662306a36Sopenharmony_ci	  This is the driver for the built-in watchdog timer on the IT8712F
132762306a36Sopenharmony_ci	  Super I/0 chipset used on many motherboards.
132862306a36Sopenharmony_ci
132962306a36Sopenharmony_ci	  If the driver does not work, then make sure that the game port in
133062306a36Sopenharmony_ci	  the BIOS is enabled.
133162306a36Sopenharmony_ci
133262306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
133362306a36Sopenharmony_ci	  module will be called it8712f_wdt.
133462306a36Sopenharmony_ci
133562306a36Sopenharmony_ciconfig IT87_WDT
133662306a36Sopenharmony_ci	tristate "IT87 Watchdog Timer"
133762306a36Sopenharmony_ci	depends on X86 || COMPILE_TEST
133862306a36Sopenharmony_ci	select WATCHDOG_CORE
133962306a36Sopenharmony_ci	help
134062306a36Sopenharmony_ci	  This is the driver for the hardware watchdog on the ITE IT8607,
134162306a36Sopenharmony_ci	  IT8620, IT8622, IT8625, IT8628, IT8655, IT8665, IT8686, IT8702,
134262306a36Sopenharmony_ci	  IT8712, IT8716, IT8718, IT8720, IT8721, IT8726, IT8728, and
134362306a36Sopenharmony_ci	  IT8783 Super I/O chips.
134462306a36Sopenharmony_ci
134562306a36Sopenharmony_ci	  This watchdog simply watches your kernel to make sure it doesn't
134662306a36Sopenharmony_ci	  freeze, and if it does, it reboots your computer after a certain
134762306a36Sopenharmony_ci	  amount of time.
134862306a36Sopenharmony_ci
134962306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the module will
135062306a36Sopenharmony_ci	  be called it87_wdt.
135162306a36Sopenharmony_ci
135262306a36Sopenharmony_ciconfig HP_WATCHDOG
135362306a36Sopenharmony_ci	tristate "HP ProLiant iLO2+ Hardware Watchdog Timer"
135462306a36Sopenharmony_ci	select WATCHDOG_CORE
135562306a36Sopenharmony_ci	depends on (ARM64 || X86 || COMPILE_TEST) && PCI
135662306a36Sopenharmony_ci	help
135762306a36Sopenharmony_ci	  A software monitoring watchdog and NMI handling driver. This driver
135862306a36Sopenharmony_ci	  will detect lockups and provide a stack trace. This is a driver that
135962306a36Sopenharmony_ci	  will only load on an HP ProLiant system with a minimum of iLO2 support.
136062306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the module will be
136162306a36Sopenharmony_ci	  called hpwdt.
136262306a36Sopenharmony_ci
136362306a36Sopenharmony_ciconfig HPWDT_NMI_DECODING
136462306a36Sopenharmony_ci	bool "NMI support for the HP ProLiant iLO2+ Hardware Watchdog Timer"
136562306a36Sopenharmony_ci	depends on X86 && HP_WATCHDOG
136662306a36Sopenharmony_ci	default y
136762306a36Sopenharmony_ci	help
136862306a36Sopenharmony_ci	  Enables the NMI handler for the watchdog pretimeout NMI and the iLO
136962306a36Sopenharmony_ci	  "Generate NMI to System" virtual button.  When an NMI is claimed
137062306a36Sopenharmony_ci	  by the driver, panic is called.
137162306a36Sopenharmony_ci
137262306a36Sopenharmony_ciconfig KEMPLD_WDT
137362306a36Sopenharmony_ci	tristate "Kontron COM Watchdog Timer"
137462306a36Sopenharmony_ci	depends on MFD_KEMPLD
137562306a36Sopenharmony_ci	select WATCHDOG_CORE
137662306a36Sopenharmony_ci	help
137762306a36Sopenharmony_ci	  Support for the PLD watchdog on some Kontron ETX and COMexpress
137862306a36Sopenharmony_ci	  (ETXexpress) modules
137962306a36Sopenharmony_ci
138062306a36Sopenharmony_ci	  This driver can also be built as a module. If so, the module will be
138162306a36Sopenharmony_ci	  called kempld_wdt.
138262306a36Sopenharmony_ci
138362306a36Sopenharmony_ciconfig SC1200_WDT
138462306a36Sopenharmony_ci	tristate "National Semiconductor PC87307/PC97307 (ala SC1200) Watchdog"
138562306a36Sopenharmony_ci	depends on X86 || COMPILE_TEST
138662306a36Sopenharmony_ci	help
138762306a36Sopenharmony_ci	  This is a driver for National Semiconductor PC87307/PC97307 hardware
138862306a36Sopenharmony_ci	  watchdog cards as found on the SC1200. This watchdog is mainly used
138962306a36Sopenharmony_ci	  for power management purposes and can be used to power down the device
139062306a36Sopenharmony_ci	  during inactivity periods (includes interrupt activity monitoring).
139162306a36Sopenharmony_ci
139262306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
139362306a36Sopenharmony_ci	  module will be called sc1200wdt.
139462306a36Sopenharmony_ci
139562306a36Sopenharmony_ci	  Most people will say N.
139662306a36Sopenharmony_ci
139762306a36Sopenharmony_ciconfig SCx200_WDT
139862306a36Sopenharmony_ci	tristate "National Semiconductor SCx200 Watchdog"
139962306a36Sopenharmony_ci	depends on SCx200 && PCI
140062306a36Sopenharmony_ci	help
140162306a36Sopenharmony_ci	  Enable the built-in watchdog timer support on the National
140262306a36Sopenharmony_ci	  Semiconductor SCx200 processors.
140362306a36Sopenharmony_ci
140462306a36Sopenharmony_ci	  If compiled as a module, it will be called scx200_wdt.
140562306a36Sopenharmony_ci
140662306a36Sopenharmony_ciconfig PC87413_WDT
140762306a36Sopenharmony_ci	tristate "NS PC87413 watchdog"
140862306a36Sopenharmony_ci	depends on X86 || COMPILE_TEST
140962306a36Sopenharmony_ci	help
141062306a36Sopenharmony_ci	  This is the driver for the hardware watchdog on the PC87413 chipset
141162306a36Sopenharmony_ci	  This watchdog simply watches your kernel to make sure it doesn't
141262306a36Sopenharmony_ci	  freeze, and if it does, it reboots your computer after a certain
141362306a36Sopenharmony_ci	  amount of time.
141462306a36Sopenharmony_ci
141562306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
141662306a36Sopenharmony_ci	  module will be called pc87413_wdt.
141762306a36Sopenharmony_ci
141862306a36Sopenharmony_ci	  Most people will say N.
141962306a36Sopenharmony_ci
142062306a36Sopenharmony_ciconfig NV_TCO
142162306a36Sopenharmony_ci	tristate "nVidia TCO Timer/Watchdog"
142262306a36Sopenharmony_ci	depends on (X86 || COMPILE_TEST) && PCI
142362306a36Sopenharmony_ci	help
142462306a36Sopenharmony_ci	  Hardware driver for the TCO timer built into the nVidia Hub family
142562306a36Sopenharmony_ci	  (such as the MCP51).  The TCO (Total Cost of Ownership) timer is a
142662306a36Sopenharmony_ci	  watchdog timer that will reboot the machine after its second
142762306a36Sopenharmony_ci	  expiration. The expiration time can be configured with the
142862306a36Sopenharmony_ci	  "heartbeat" parameter.
142962306a36Sopenharmony_ci
143062306a36Sopenharmony_ci	  On some motherboards the driver may fail to reset the chipset's
143162306a36Sopenharmony_ci	  NO_REBOOT flag which prevents the watchdog from rebooting the
143262306a36Sopenharmony_ci	  machine. If this is the case you will get a kernel message like
143362306a36Sopenharmony_ci	  "failed to reset NO_REBOOT flag, reboot disabled by hardware".
143462306a36Sopenharmony_ci
143562306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
143662306a36Sopenharmony_ci	  module will be called nv_tco.
143762306a36Sopenharmony_ci
143862306a36Sopenharmony_ciconfig RDC321X_WDT
143962306a36Sopenharmony_ci	tristate "RDC R-321x SoC watchdog"
144062306a36Sopenharmony_ci	depends on X86_RDC321X || COMPILE_TEST
144162306a36Sopenharmony_ci	depends on PCI
144262306a36Sopenharmony_ci	help
144362306a36Sopenharmony_ci	  This is the driver for the built in hardware watchdog
144462306a36Sopenharmony_ci	  in the RDC R-321x SoC.
144562306a36Sopenharmony_ci
144662306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
144762306a36Sopenharmony_ci	  module will be called rdc321x_wdt.
144862306a36Sopenharmony_ci
144962306a36Sopenharmony_ciconfig 60XX_WDT
145062306a36Sopenharmony_ci	tristate "SBC-60XX Watchdog Timer"
145162306a36Sopenharmony_ci	depends on X86 || COMPILE_TEST
145262306a36Sopenharmony_ci	help
145362306a36Sopenharmony_ci	  This driver can be used with the watchdog timer found on some
145462306a36Sopenharmony_ci	  single board computers, namely the 6010 PII based computer.
145562306a36Sopenharmony_ci	  It may well work with other cards.  It reads port 0x443 to enable
145662306a36Sopenharmony_ci	  and re-set the watchdog timer, and reads port 0x45 to disable
145762306a36Sopenharmony_ci	  the watchdog.  If you have a card that behave in similar ways,
145862306a36Sopenharmony_ci	  you can probably make this driver work with your card as well.
145962306a36Sopenharmony_ci
146062306a36Sopenharmony_ci	  You can compile this driver directly into the kernel, or use
146162306a36Sopenharmony_ci	  it as a module.  The module will be called sbc60xxwdt.
146262306a36Sopenharmony_ci
146362306a36Sopenharmony_ciconfig SBC8360_WDT
146462306a36Sopenharmony_ci	tristate "SBC8360 Watchdog Timer"
146562306a36Sopenharmony_ci	depends on X86_32
146662306a36Sopenharmony_ci	help
146762306a36Sopenharmony_ci
146862306a36Sopenharmony_ci	  This is the driver for the hardware watchdog on the SBC8360 Single
146962306a36Sopenharmony_ci	  Board Computer produced by Axiomtek Co., Ltd. (www.axiomtek.com).
147062306a36Sopenharmony_ci
147162306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
147262306a36Sopenharmony_ci	  module will be called sbc8360.
147362306a36Sopenharmony_ci
147462306a36Sopenharmony_ci	  Most people will say N.
147562306a36Sopenharmony_ci
147662306a36Sopenharmony_ciconfig SBC7240_WDT
147762306a36Sopenharmony_ci	tristate "SBC Nano 7240 Watchdog Timer"
147862306a36Sopenharmony_ci	depends on X86_32 && !UML
147962306a36Sopenharmony_ci	help
148062306a36Sopenharmony_ci	  This is the driver for the hardware watchdog found on the IEI
148162306a36Sopenharmony_ci	  single board computers EPIC Nano 7240 (and likely others). This
148262306a36Sopenharmony_ci	  watchdog simply watches your kernel to make sure it doesn't freeze,
148362306a36Sopenharmony_ci	  and if it does, it reboots your computer after a certain amount of
148462306a36Sopenharmony_ci	  time.
148562306a36Sopenharmony_ci
148662306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
148762306a36Sopenharmony_ci	  module will be called sbc7240_wdt.
148862306a36Sopenharmony_ci
148962306a36Sopenharmony_ciconfig CPU5_WDT
149062306a36Sopenharmony_ci	tristate "SMA CPU5 Watchdog"
149162306a36Sopenharmony_ci	depends on X86 || COMPILE_TEST
149262306a36Sopenharmony_ci	help
149362306a36Sopenharmony_ci	  TBD.
149462306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
149562306a36Sopenharmony_ci	  module will be called cpu5wdt.
149662306a36Sopenharmony_ci
149762306a36Sopenharmony_ciconfig SMSC_SCH311X_WDT
149862306a36Sopenharmony_ci	tristate "SMSC SCH311X Watchdog Timer"
149962306a36Sopenharmony_ci	depends on X86 || COMPILE_TEST
150062306a36Sopenharmony_ci	help
150162306a36Sopenharmony_ci	  This is the driver for the hardware watchdog timer on the
150262306a36Sopenharmony_ci	  SMSC SCH3112, SCH3114 and SCH3116 Super IO chipset
150362306a36Sopenharmony_ci	  (LPC IO with 8042 KBC, Reset Generation, HWM and multiple
150462306a36Sopenharmony_ci	  serial ports).
150562306a36Sopenharmony_ci
150662306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
150762306a36Sopenharmony_ci	  module will be called sch311x_wdt.
150862306a36Sopenharmony_ci
150962306a36Sopenharmony_ciconfig SMSC37B787_WDT
151062306a36Sopenharmony_ci	tristate "Winbond SMsC37B787 Watchdog Timer"
151162306a36Sopenharmony_ci	depends on X86 || COMPILE_TEST
151262306a36Sopenharmony_ci	help
151362306a36Sopenharmony_ci	  This is the driver for the hardware watchdog component on the
151462306a36Sopenharmony_ci	  Winbond SMsC37B787 chipset as used on the NetRunner Mainboard
151562306a36Sopenharmony_ci	  from Vision Systems and maybe others.
151662306a36Sopenharmony_ci
151762306a36Sopenharmony_ci	  This watchdog simply watches your kernel to make sure it doesn't
151862306a36Sopenharmony_ci	  freeze, and if it does, it reboots your computer after a certain
151962306a36Sopenharmony_ci	  amount of time.
152062306a36Sopenharmony_ci
152162306a36Sopenharmony_ci	  Usually a userspace daemon will notify the kernel WDT driver that
152262306a36Sopenharmony_ci	  userspace is still alive, at regular intervals.
152362306a36Sopenharmony_ci
152462306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
152562306a36Sopenharmony_ci	  module will be called smsc37b787_wdt.
152662306a36Sopenharmony_ci
152762306a36Sopenharmony_ci	  Most people will say N.
152862306a36Sopenharmony_ci
152962306a36Sopenharmony_ciconfig TQMX86_WDT
153062306a36Sopenharmony_ci	tristate "TQ-Systems TQMX86 Watchdog Timer"
153162306a36Sopenharmony_ci	depends on X86 || COMPILE_TEST
153262306a36Sopenharmony_ci	select WATCHDOG_CORE
153362306a36Sopenharmony_ci	help
153462306a36Sopenharmony_ci	  This is the driver for the hardware watchdog timer in the TQMX86 IO
153562306a36Sopenharmony_ci	  controller found on some of their ComExpress Modules.
153662306a36Sopenharmony_ci
153762306a36Sopenharmony_ci	  To compile this driver as a module, choose M here; the module
153862306a36Sopenharmony_ci	  will be called tqmx86_wdt.
153962306a36Sopenharmony_ci
154062306a36Sopenharmony_ci	  Most people will say N.
154162306a36Sopenharmony_ci
154262306a36Sopenharmony_ciconfig VIA_WDT
154362306a36Sopenharmony_ci	tristate "VIA Watchdog Timer"
154462306a36Sopenharmony_ci	depends on (X86 || COMPILE_TEST) && PCI
154562306a36Sopenharmony_ci	select WATCHDOG_CORE
154662306a36Sopenharmony_ci	help
154762306a36Sopenharmony_ci	  This is the driver for the hardware watchdog timer on VIA
154862306a36Sopenharmony_ci	  southbridge chipset CX700, VX800/VX820 or VX855/VX875.
154962306a36Sopenharmony_ci
155062306a36Sopenharmony_ci	  To compile this driver as a module, choose M here; the module
155162306a36Sopenharmony_ci	  will be called via_wdt.
155262306a36Sopenharmony_ci
155362306a36Sopenharmony_ci	  Most people will say N.
155462306a36Sopenharmony_ci
155562306a36Sopenharmony_ciconfig W83627HF_WDT
155662306a36Sopenharmony_ci	tristate "Watchdog timer for W83627HF/W83627DHG and compatibles"
155762306a36Sopenharmony_ci	depends on X86 || COMPILE_TEST
155862306a36Sopenharmony_ci	select WATCHDOG_CORE
155962306a36Sopenharmony_ci	help
156062306a36Sopenharmony_ci	  This is the driver for the hardware watchdog on the following
156162306a36Sopenharmony_ci	  Super I/O chips.
156262306a36Sopenharmony_ci		W83627DHG/DHG-P/EHF/EHG/F/G/HF/S/SF/THF/UHG/UG
156362306a36Sopenharmony_ci		W83637HF
156462306a36Sopenharmony_ci		W83667HG/HG-B
156562306a36Sopenharmony_ci		W83687THF
156662306a36Sopenharmony_ci		W83697HF
156762306a36Sopenharmony_ci		W83697UG
156862306a36Sopenharmony_ci		NCT6775
156962306a36Sopenharmony_ci		NCT6776
157062306a36Sopenharmony_ci		NCT6779
157162306a36Sopenharmony_ci		NCT6791
157262306a36Sopenharmony_ci		NCT6792
157362306a36Sopenharmony_ci		NCT6102D/04D/06D
157462306a36Sopenharmony_ci		NCT6116D
157562306a36Sopenharmony_ci
157662306a36Sopenharmony_ci	  This watchdog simply watches your kernel to make sure it doesn't
157762306a36Sopenharmony_ci	  freeze, and if it does, it reboots your computer after a certain
157862306a36Sopenharmony_ci	  amount of time.
157962306a36Sopenharmony_ci
158062306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
158162306a36Sopenharmony_ci	  module will be called w83627hf_wdt.
158262306a36Sopenharmony_ci
158362306a36Sopenharmony_ci	  Most people will say N.
158462306a36Sopenharmony_ci
158562306a36Sopenharmony_ciconfig W83877F_WDT
158662306a36Sopenharmony_ci	tristate "W83877F (EMACS) Watchdog Timer"
158762306a36Sopenharmony_ci	depends on X86 || COMPILE_TEST
158862306a36Sopenharmony_ci	help
158962306a36Sopenharmony_ci	  This is the driver for the hardware watchdog on the W83877F chipset
159062306a36Sopenharmony_ci	  as used in EMACS PC-104 motherboards (and likely others).  This
159162306a36Sopenharmony_ci	  watchdog simply watches your kernel to make sure it doesn't freeze,
159262306a36Sopenharmony_ci	  and if it does, it reboots your computer after a certain amount of
159362306a36Sopenharmony_ci	  time.
159462306a36Sopenharmony_ci
159562306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
159662306a36Sopenharmony_ci	  module will be called w83877f_wdt.
159762306a36Sopenharmony_ci
159862306a36Sopenharmony_ci	  Most people will say N.
159962306a36Sopenharmony_ci
160062306a36Sopenharmony_ciconfig W83977F_WDT
160162306a36Sopenharmony_ci	tristate "W83977F (PCM-5335) Watchdog Timer"
160262306a36Sopenharmony_ci	depends on X86 || COMPILE_TEST
160362306a36Sopenharmony_ci	help
160462306a36Sopenharmony_ci	  This is the driver for the hardware watchdog on the W83977F I/O chip
160562306a36Sopenharmony_ci	  as used in AAEON's PCM-5335 SBC (and likely others).  This
160662306a36Sopenharmony_ci	  watchdog simply watches your kernel to make sure it doesn't freeze,
160762306a36Sopenharmony_ci	  and if it does, it reboots your computer after a certain amount of
160862306a36Sopenharmony_ci	  time.
160962306a36Sopenharmony_ci
161062306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
161162306a36Sopenharmony_ci	  module will be called w83977f_wdt.
161262306a36Sopenharmony_ci
161362306a36Sopenharmony_ciconfig MACHZ_WDT
161462306a36Sopenharmony_ci	tristate "ZF MachZ Watchdog"
161562306a36Sopenharmony_ci	depends on X86 || COMPILE_TEST
161662306a36Sopenharmony_ci	help
161762306a36Sopenharmony_ci	  If you are using a ZF Micro MachZ processor, say Y here, otherwise
161862306a36Sopenharmony_ci	  N.  This is the driver for the watchdog timer built-in on that
161962306a36Sopenharmony_ci	  processor using ZF-Logic interface.  This watchdog simply watches
162062306a36Sopenharmony_ci	  your kernel to make sure it doesn't freeze, and if it does, it
162162306a36Sopenharmony_ci	  reboots your computer after a certain amount of time.
162262306a36Sopenharmony_ci
162362306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
162462306a36Sopenharmony_ci	  module will be called machzwd.
162562306a36Sopenharmony_ci
162662306a36Sopenharmony_ciconfig SBC_EPX_C3_WATCHDOG
162762306a36Sopenharmony_ci	tristate "Winsystems SBC EPX-C3 watchdog"
162862306a36Sopenharmony_ci	depends on X86 || COMPILE_TEST
162962306a36Sopenharmony_ci	help
163062306a36Sopenharmony_ci	  This is the driver for the built-in watchdog timer on the EPX-C3
163162306a36Sopenharmony_ci	  Single-board computer made by Winsystems, Inc.
163262306a36Sopenharmony_ci
163362306a36Sopenharmony_ci	  *Note*: This hardware watchdog is not probeable and thus there
163462306a36Sopenharmony_ci	  is no way to know if writing to its IO address will corrupt
163562306a36Sopenharmony_ci	  your system or have any real effect.  The only way to be sure
163662306a36Sopenharmony_ci	  that this driver does what you want is to make sure you
163762306a36Sopenharmony_ci	  are running it on an EPX-C3 from Winsystems with the watchdog
163862306a36Sopenharmony_ci	  timer at IO address 0x1ee and 0x1ef.  It will write to both those
163962306a36Sopenharmony_ci	  IO ports.  Basically, the assumption is made that if you compile
164062306a36Sopenharmony_ci	  this driver into your kernel and/or load it as a module, that you
164162306a36Sopenharmony_ci	  know what you are doing and that you are in fact running on an
164262306a36Sopenharmony_ci	  EPX-C3 board!
164362306a36Sopenharmony_ci
164462306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
164562306a36Sopenharmony_ci	  module will be called sbc_epx_c3.
164662306a36Sopenharmony_ci
164762306a36Sopenharmony_ciconfig INTEL_MEI_WDT
164862306a36Sopenharmony_ci	tristate "Intel MEI iAMT Watchdog"
164962306a36Sopenharmony_ci	depends on INTEL_MEI && X86
165062306a36Sopenharmony_ci	select WATCHDOG_CORE
165162306a36Sopenharmony_ci	help
165262306a36Sopenharmony_ci	  A device driver for the Intel MEI iAMT watchdog.
165362306a36Sopenharmony_ci
165462306a36Sopenharmony_ci	  The Intel AMT Watchdog is an OS Health (Hang/Crash) watchdog.
165562306a36Sopenharmony_ci	  Whenever the OS hangs or crashes, iAMT will send an event
165662306a36Sopenharmony_ci	  to any subscriber to this event. The watchdog doesn't reset the
165762306a36Sopenharmony_ci	  the platform.
165862306a36Sopenharmony_ci
165962306a36Sopenharmony_ci	  To compile this driver as a module, choose M here:
166062306a36Sopenharmony_ci	  the module will be called mei_wdt.
166162306a36Sopenharmony_ci
166262306a36Sopenharmony_ciconfig NI903X_WDT
166362306a36Sopenharmony_ci	tristate "NI 903x/913x Watchdog"
166462306a36Sopenharmony_ci	depends on X86 && ACPI
166562306a36Sopenharmony_ci	select WATCHDOG_CORE
166662306a36Sopenharmony_ci	help
166762306a36Sopenharmony_ci	  This is the driver for the watchdog timer on the National Instruments
166862306a36Sopenharmony_ci	  903x/913x real-time controllers.
166962306a36Sopenharmony_ci
167062306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the module will be
167162306a36Sopenharmony_ci	  called ni903x_wdt.
167262306a36Sopenharmony_ci
167362306a36Sopenharmony_ciconfig NIC7018_WDT
167462306a36Sopenharmony_ci	tristate "NIC7018 Watchdog"
167562306a36Sopenharmony_ci	depends on X86 && ACPI
167662306a36Sopenharmony_ci	select WATCHDOG_CORE
167762306a36Sopenharmony_ci	help
167862306a36Sopenharmony_ci	  Support for National Instruments NIC7018 Watchdog.
167962306a36Sopenharmony_ci
168062306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the module will be
168162306a36Sopenharmony_ci	  called nic7018_wdt.
168262306a36Sopenharmony_ci
168362306a36Sopenharmony_ciconfig SIEMENS_SIMATIC_IPC_WDT
168462306a36Sopenharmony_ci	tristate "Siemens Simatic IPC Watchdog"
168562306a36Sopenharmony_ci	depends on SIEMENS_SIMATIC_IPC && PCI
168662306a36Sopenharmony_ci	default y
168762306a36Sopenharmony_ci	select WATCHDOG_CORE
168862306a36Sopenharmony_ci	select P2SB if X86
168962306a36Sopenharmony_ci	help
169062306a36Sopenharmony_ci	  This driver adds support for several watchdogs found in Industrial
169162306a36Sopenharmony_ci	  PCs from Siemens.
169262306a36Sopenharmony_ci
169362306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the module will be
169462306a36Sopenharmony_ci	  called simatic-ipc-wdt.
169562306a36Sopenharmony_ci
169662306a36Sopenharmony_ci# M68K Architecture
169762306a36Sopenharmony_ci
169862306a36Sopenharmony_ciconfig M54xx_WATCHDOG
169962306a36Sopenharmony_ci	tristate "MCF54xx watchdog support"
170062306a36Sopenharmony_ci	depends on M548x
170162306a36Sopenharmony_ci	help
170262306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
170362306a36Sopenharmony_ci	  module will be called m54xx_wdt.
170462306a36Sopenharmony_ci
170562306a36Sopenharmony_ci# MicroBlaze Architecture
170662306a36Sopenharmony_ci
170762306a36Sopenharmony_ci# MIPS Architecture
170862306a36Sopenharmony_ci
170962306a36Sopenharmony_ciconfig ATH79_WDT
171062306a36Sopenharmony_ci	tristate "Atheros AR71XX/AR724X/AR913X hardware watchdog"
171162306a36Sopenharmony_ci	depends on ATH79 || (ARM && COMPILE_TEST)
171262306a36Sopenharmony_ci	help
171362306a36Sopenharmony_ci	  Hardware driver for the built-in watchdog timer on the Atheros
171462306a36Sopenharmony_ci	  AR71XX/AR724X/AR913X SoCs.
171562306a36Sopenharmony_ci
171662306a36Sopenharmony_ciconfig BCM47XX_WDT
171762306a36Sopenharmony_ci	tristate "Broadcom BCM47xx Watchdog Timer"
171862306a36Sopenharmony_ci	depends on BCM47XX || ARCH_BCM_5301X || COMPILE_TEST
171962306a36Sopenharmony_ci	select WATCHDOG_CORE
172062306a36Sopenharmony_ci	help
172162306a36Sopenharmony_ci	  Hardware driver for the Broadcom BCM47xx Watchdog Timer.
172262306a36Sopenharmony_ci
172362306a36Sopenharmony_ciconfig RC32434_WDT
172462306a36Sopenharmony_ci	tristate "IDT RC32434 SoC Watchdog Timer"
172562306a36Sopenharmony_ci	depends on MIKROTIK_RB532
172662306a36Sopenharmony_ci	help
172762306a36Sopenharmony_ci	  Hardware driver for the IDT RC32434 SoC built-in
172862306a36Sopenharmony_ci	  watchdog timer.
172962306a36Sopenharmony_ci
173062306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
173162306a36Sopenharmony_ci	  module will be called rc32434_wdt.
173262306a36Sopenharmony_ci
173362306a36Sopenharmony_ciconfig INDYDOG
173462306a36Sopenharmony_ci	tristate "Indy/I2 Hardware Watchdog"
173562306a36Sopenharmony_ci	depends on SGI_HAS_INDYDOG
173662306a36Sopenharmony_ci	help
173762306a36Sopenharmony_ci	  Hardware driver for the Indy's/I2's watchdog. This is a
173862306a36Sopenharmony_ci	  watchdog timer that will reboot the machine after a 60 second
173962306a36Sopenharmony_ci	  timer expired and no process has written to /dev/watchdog during
174062306a36Sopenharmony_ci	  that time.
174162306a36Sopenharmony_ci
174262306a36Sopenharmony_ciconfig JZ4740_WDT
174362306a36Sopenharmony_ci	tristate "Ingenic jz4740 SoC hardware watchdog"
174462306a36Sopenharmony_ci	depends on MIPS || COMPILE_TEST
174562306a36Sopenharmony_ci	depends on COMMON_CLK
174662306a36Sopenharmony_ci	select WATCHDOG_CORE
174762306a36Sopenharmony_ci	select MFD_SYSCON
174862306a36Sopenharmony_ci	help
174962306a36Sopenharmony_ci	  Hardware driver for the built-in watchdog timer on Ingenic jz4740 SoCs.
175062306a36Sopenharmony_ci
175162306a36Sopenharmony_ciconfig WDT_MTX1
175262306a36Sopenharmony_ci	tristate "MTX-1 Hardware Watchdog"
175362306a36Sopenharmony_ci	depends on MIPS_MTX1 || (MIPS && COMPILE_TEST)
175462306a36Sopenharmony_ci	help
175562306a36Sopenharmony_ci	  Hardware driver for the MTX-1 boards. This is a watchdog timer that
175662306a36Sopenharmony_ci	  will reboot the machine after a 100 seconds timer expired.
175762306a36Sopenharmony_ci
175862306a36Sopenharmony_ciconfig SIBYTE_WDOG
175962306a36Sopenharmony_ci	tristate "Sibyte SoC hardware watchdog"
176062306a36Sopenharmony_ci	depends on CPU_SB1
176162306a36Sopenharmony_ci	help
176262306a36Sopenharmony_ci	  Watchdog driver for the built in watchdog hardware in Sibyte
176362306a36Sopenharmony_ci	  SoC processors.  There are apparently two watchdog timers
176462306a36Sopenharmony_ci	  on such processors; this driver supports only the first one,
176562306a36Sopenharmony_ci	  because currently Linux only supports exporting one watchdog
176662306a36Sopenharmony_ci	  to userspace.
176762306a36Sopenharmony_ci
176862306a36Sopenharmony_ci	  To compile this driver as a loadable module, choose M here.
176962306a36Sopenharmony_ci	  The module will be called sb_wdog.
177062306a36Sopenharmony_ci
177162306a36Sopenharmony_ciconfig AR7_WDT
177262306a36Sopenharmony_ci	tristate "TI AR7 Watchdog Timer"
177362306a36Sopenharmony_ci	depends on AR7 || (MIPS && 32BIT && COMPILE_TEST)
177462306a36Sopenharmony_ci	help
177562306a36Sopenharmony_ci	  Hardware driver for the TI AR7 Watchdog Timer.
177662306a36Sopenharmony_ci
177762306a36Sopenharmony_ciconfig TXX9_WDT
177862306a36Sopenharmony_ci	tristate "Toshiba TXx9 Watchdog Timer"
177962306a36Sopenharmony_ci	depends on CPU_TX49XX || (MIPS && COMPILE_TEST)
178062306a36Sopenharmony_ci	select WATCHDOG_CORE
178162306a36Sopenharmony_ci	help
178262306a36Sopenharmony_ci	  Hardware driver for the built-in watchdog timer on TXx9 MIPS SoCs.
178362306a36Sopenharmony_ci
178462306a36Sopenharmony_ciconfig OCTEON_WDT
178562306a36Sopenharmony_ci	tristate "Cavium OCTEON SOC family Watchdog Timer"
178662306a36Sopenharmony_ci	depends on CAVIUM_OCTEON_SOC
178762306a36Sopenharmony_ci	default y
178862306a36Sopenharmony_ci	select WATCHDOG_CORE
178962306a36Sopenharmony_ci	select EXPORT_UASM if OCTEON_WDT = m
179062306a36Sopenharmony_ci	help
179162306a36Sopenharmony_ci	  Hardware driver for OCTEON's on chip watchdog timer.
179262306a36Sopenharmony_ci	  Enables the watchdog for all cores running Linux. It
179362306a36Sopenharmony_ci	  installs a NMI handler and pokes the watchdog based on an
179462306a36Sopenharmony_ci	  interrupt.  On first expiration of the watchdog, the
179562306a36Sopenharmony_ci	  interrupt handler pokes it.  The second expiration causes an
179662306a36Sopenharmony_ci	  NMI that prints a message. The third expiration causes a
179762306a36Sopenharmony_ci	  global soft reset.
179862306a36Sopenharmony_ci
179962306a36Sopenharmony_ci	  When userspace has /dev/watchdog open, no poking is done
180062306a36Sopenharmony_ci	  from the first interrupt, it is then only poked when the
180162306a36Sopenharmony_ci	  device is written.
180262306a36Sopenharmony_ci
180362306a36Sopenharmony_ciconfig MARVELL_GTI_WDT
180462306a36Sopenharmony_ci	tristate "Marvell GTI Watchdog driver"
180562306a36Sopenharmony_ci	depends on ARCH_THUNDER || (COMPILE_TEST && 64BIT)
180662306a36Sopenharmony_ci	default y
180762306a36Sopenharmony_ci	select WATCHDOG_CORE
180862306a36Sopenharmony_ci	help
180962306a36Sopenharmony_ci	  Marvell GTI hardware supports watchdog timer. First timeout
181062306a36Sopenharmony_ci	  works as watchdog pretimeout and installed interrupt handler
181162306a36Sopenharmony_ci	  will be called on first timeout. Hardware can generate interrupt
181262306a36Sopenharmony_ci	  to SCP on second timeout but it is not enabled, so second
181362306a36Sopenharmony_ci	  timeout is ignored. If device poke does not happen then system
181462306a36Sopenharmony_ci	  will reboot on third timeout.
181562306a36Sopenharmony_ci
181662306a36Sopenharmony_ciconfig BCM2835_WDT
181762306a36Sopenharmony_ci	tristate "Broadcom BCM2835 hardware watchdog"
181862306a36Sopenharmony_ci	depends on ARCH_BCM2835 || (OF && COMPILE_TEST)
181962306a36Sopenharmony_ci	select WATCHDOG_CORE
182062306a36Sopenharmony_ci	help
182162306a36Sopenharmony_ci	  Watchdog driver for the built in watchdog hardware in Broadcom
182262306a36Sopenharmony_ci	  BCM2835 SoC.
182362306a36Sopenharmony_ci
182462306a36Sopenharmony_ci	  To compile this driver as a loadable module, choose M here.
182562306a36Sopenharmony_ci	  The module will be called bcm2835_wdt.
182662306a36Sopenharmony_ci
182762306a36Sopenharmony_ciconfig BCM_KONA_WDT
182862306a36Sopenharmony_ci	tristate "BCM Kona Watchdog"
182962306a36Sopenharmony_ci	depends on ARCH_BCM_MOBILE || COMPILE_TEST
183062306a36Sopenharmony_ci	select WATCHDOG_CORE
183162306a36Sopenharmony_ci	help
183262306a36Sopenharmony_ci	  Support for the watchdog timer on the following Broadcom BCM281xx
183362306a36Sopenharmony_ci	  family, which includes BCM11130, BCM11140, BCM11351, BCM28145 and
183462306a36Sopenharmony_ci	  BCM28155 variants.
183562306a36Sopenharmony_ci
183662306a36Sopenharmony_ci	  Say 'Y' or 'M' here to enable the driver. The module will be called
183762306a36Sopenharmony_ci	  bcm_kona_wdt.
183862306a36Sopenharmony_ci
183962306a36Sopenharmony_ciconfig BCM_KONA_WDT_DEBUG
184062306a36Sopenharmony_ci	bool "DEBUGFS support for BCM Kona Watchdog"
184162306a36Sopenharmony_ci	depends on BCM_KONA_WDT || COMPILE_TEST
184262306a36Sopenharmony_ci	help
184362306a36Sopenharmony_ci	  If enabled, adds /sys/kernel/debug/bcm_kona_wdt/info which provides
184462306a36Sopenharmony_ci	  access to the driver's internal data structures as well as watchdog
184562306a36Sopenharmony_ci	  timer hardware registres.
184662306a36Sopenharmony_ci
184762306a36Sopenharmony_ci	  If in doubt, say 'N'.
184862306a36Sopenharmony_ci
184962306a36Sopenharmony_ciconfig BCM7038_WDT
185062306a36Sopenharmony_ci	tristate "BCM63xx/BCM7038 Watchdog"
185162306a36Sopenharmony_ci	select WATCHDOG_CORE
185262306a36Sopenharmony_ci	depends on HAS_IOMEM
185362306a36Sopenharmony_ci	depends on ARCH_BCMBCA || ARCH_BRCMSTB || BMIPS_GENERIC || BCM63XX || COMPILE_TEST
185462306a36Sopenharmony_ci	help
185562306a36Sopenharmony_ci	  Watchdog driver for the built-in hardware in Broadcom 7038 and
185662306a36Sopenharmony_ci	  later SoCs used in set-top boxes.  BCM7038 was made public
185762306a36Sopenharmony_ci	  during the 2004 CES, and since then, many Broadcom chips use this
185862306a36Sopenharmony_ci	  watchdog block, including some cable modem chips and DSL (63xx)
185962306a36Sopenharmony_ci	  chips.
186062306a36Sopenharmony_ci
186162306a36Sopenharmony_ciconfig IMGPDC_WDT
186262306a36Sopenharmony_ci	tristate "Imagination Technologies PDC Watchdog Timer"
186362306a36Sopenharmony_ci	depends on HAS_IOMEM
186462306a36Sopenharmony_ci	depends on MIPS || COMPILE_TEST
186562306a36Sopenharmony_ci	select WATCHDOG_CORE
186662306a36Sopenharmony_ci	help
186762306a36Sopenharmony_ci	  Driver for Imagination Technologies PowerDown Controller
186862306a36Sopenharmony_ci	  Watchdog Timer.
186962306a36Sopenharmony_ci
187062306a36Sopenharmony_ci	  To compile this driver as a loadable module, choose M here.
187162306a36Sopenharmony_ci	  The module will be called imgpdc_wdt.
187262306a36Sopenharmony_ci
187362306a36Sopenharmony_ciconfig LANTIQ_WDT
187462306a36Sopenharmony_ci	tristate "Lantiq SoC watchdog"
187562306a36Sopenharmony_ci	depends on LANTIQ
187662306a36Sopenharmony_ci	select WATCHDOG_CORE
187762306a36Sopenharmony_ci	help
187862306a36Sopenharmony_ci	  Hardware driver for the Lantiq SoC Watchdog Timer.
187962306a36Sopenharmony_ci
188062306a36Sopenharmony_ciconfig LOONGSON1_WDT
188162306a36Sopenharmony_ci	tristate "Loongson1 SoC hardware watchdog"
188262306a36Sopenharmony_ci	depends on MACH_LOONGSON32 || COMPILE_TEST
188362306a36Sopenharmony_ci	select WATCHDOG_CORE
188462306a36Sopenharmony_ci	help
188562306a36Sopenharmony_ci	  Hardware driver for the Loongson1 SoC Watchdog Timer.
188662306a36Sopenharmony_ci
188762306a36Sopenharmony_ciconfig RALINK_WDT
188862306a36Sopenharmony_ci	tristate "Ralink SoC watchdog"
188962306a36Sopenharmony_ci	select WATCHDOG_CORE
189062306a36Sopenharmony_ci	depends on RALINK
189162306a36Sopenharmony_ci	help
189262306a36Sopenharmony_ci	  Hardware driver for the Ralink SoC Watchdog Timer.
189362306a36Sopenharmony_ci
189462306a36Sopenharmony_ciconfig GXP_WATCHDOG
189562306a36Sopenharmony_ci	tristate "HPE GXP watchdog support"
189662306a36Sopenharmony_ci	depends on ARCH_HPE_GXP || COMPILE_TEST
189762306a36Sopenharmony_ci	select WATCHDOG_CORE
189862306a36Sopenharmony_ci	help
189962306a36Sopenharmony_ci	  Say Y here to include support for the watchdog timer
190062306a36Sopenharmony_ci	  in HPE GXP SoCs.
190162306a36Sopenharmony_ci
190262306a36Sopenharmony_ci	  To compile this driver as a module, choose M here.
190362306a36Sopenharmony_ci	  The module will be called gxp-wdt.
190462306a36Sopenharmony_ci
190562306a36Sopenharmony_ciconfig MT7621_WDT
190662306a36Sopenharmony_ci	tristate "Mediatek SoC watchdog"
190762306a36Sopenharmony_ci	select WATCHDOG_CORE
190862306a36Sopenharmony_ci	select REGMAP_MMIO
190962306a36Sopenharmony_ci	select MFD_SYSCON
191062306a36Sopenharmony_ci	depends on SOC_MT7620 || SOC_MT7621 || COMPILE_TEST
191162306a36Sopenharmony_ci	help
191262306a36Sopenharmony_ci	  Hardware driver for the Mediatek/Ralink MT7621/8 SoC Watchdog Timer.
191362306a36Sopenharmony_ci
191462306a36Sopenharmony_ciconfig PIC32_WDT
191562306a36Sopenharmony_ci	tristate "Microchip PIC32 hardware watchdog"
191662306a36Sopenharmony_ci	select WATCHDOG_CORE
191762306a36Sopenharmony_ci	depends on MACH_PIC32 || (MIPS && COMPILE_TEST)
191862306a36Sopenharmony_ci	help
191962306a36Sopenharmony_ci	  Watchdog driver for the built in watchdog hardware in a PIC32.
192062306a36Sopenharmony_ci
192162306a36Sopenharmony_ci	  Configuration bits must be set appropriately for the watchdog to be
192262306a36Sopenharmony_ci	  controlled by this driver.
192362306a36Sopenharmony_ci
192462306a36Sopenharmony_ci	  To compile this driver as a loadable module, choose M here.
192562306a36Sopenharmony_ci	  The module will be called pic32-wdt.
192662306a36Sopenharmony_ci
192762306a36Sopenharmony_ciconfig PIC32_DMT
192862306a36Sopenharmony_ci	tristate "Microchip PIC32 Deadman Timer"
192962306a36Sopenharmony_ci	select WATCHDOG_CORE
193062306a36Sopenharmony_ci	depends on MACH_PIC32 || (MIPS && COMPILE_TEST)
193162306a36Sopenharmony_ci	help
193262306a36Sopenharmony_ci	  Watchdog driver for PIC32 instruction fetch counting timer. This
193362306a36Sopenharmony_ci	  specific timer is typically be used in mission critical and safety
193462306a36Sopenharmony_ci	  critical applications, where any single failure of the software
193562306a36Sopenharmony_ci	  functionality and sequencing must be detected.
193662306a36Sopenharmony_ci
193762306a36Sopenharmony_ci	  To compile this driver as a loadable module, choose M here.
193862306a36Sopenharmony_ci	  The module will be called pic32-dmt.
193962306a36Sopenharmony_ci
194062306a36Sopenharmony_ci# PARISC Architecture
194162306a36Sopenharmony_ci
194262306a36Sopenharmony_ci# POWERPC Architecture
194362306a36Sopenharmony_ci
194462306a36Sopenharmony_ciconfig GEF_WDT
194562306a36Sopenharmony_ci	tristate "GE Watchdog Timer"
194662306a36Sopenharmony_ci	depends on GE_FPGA
194762306a36Sopenharmony_ci	help
194862306a36Sopenharmony_ci	  Watchdog timer found in a number of GE single board computers.
194962306a36Sopenharmony_ci
195062306a36Sopenharmony_ciconfig MPC5200_WDT
195162306a36Sopenharmony_ci	bool "MPC52xx Watchdog Timer"
195262306a36Sopenharmony_ci	depends on PPC_MPC52xx || COMPILE_TEST
195362306a36Sopenharmony_ci	help
195462306a36Sopenharmony_ci	  Use General Purpose Timer (GPT) 0 on the MPC5200 as Watchdog.
195562306a36Sopenharmony_ci
195662306a36Sopenharmony_ciconfig 8xxx_WDT
195762306a36Sopenharmony_ci	tristate "MPC8xxx Platform Watchdog Timer"
195862306a36Sopenharmony_ci	depends on PPC_8xx || PPC_83xx || PPC_86xx || PPC_MPC512x
195962306a36Sopenharmony_ci	select WATCHDOG_CORE
196062306a36Sopenharmony_ci	help
196162306a36Sopenharmony_ci	  This driver is for a SoC level watchdog that exists on some
196262306a36Sopenharmony_ci	  Freescale PowerPC processors. So far this driver supports:
196362306a36Sopenharmony_ci	  - MPC8xx watchdogs
196462306a36Sopenharmony_ci	  - MPC83xx watchdogs
196562306a36Sopenharmony_ci	  - MPC86xx watchdogs
196662306a36Sopenharmony_ci
196762306a36Sopenharmony_ci	  For BookE processors (MPC85xx) use the BOOKE_WDT driver instead.
196862306a36Sopenharmony_ci
196962306a36Sopenharmony_ciconfig PIKA_WDT
197062306a36Sopenharmony_ci	tristate "PIKA FPGA Watchdog"
197162306a36Sopenharmony_ci	depends on WARP || (PPC64 && COMPILE_TEST)
197262306a36Sopenharmony_ci	default y
197362306a36Sopenharmony_ci	help
197462306a36Sopenharmony_ci	  This enables the watchdog in the PIKA FPGA. Currently used on
197562306a36Sopenharmony_ci	  the Warp platform.
197662306a36Sopenharmony_ci
197762306a36Sopenharmony_ciconfig BOOKE_WDT
197862306a36Sopenharmony_ci	tristate "PowerPC Book-E Watchdog Timer"
197962306a36Sopenharmony_ci	depends on BOOKE || 4xx
198062306a36Sopenharmony_ci	select WATCHDOG_CORE
198162306a36Sopenharmony_ci	help
198262306a36Sopenharmony_ci	  Watchdog driver for PowerPC Book-E chips, such as the Freescale
198362306a36Sopenharmony_ci	  MPC85xx SOCs and the IBM PowerPC 440.
198462306a36Sopenharmony_ci
198562306a36Sopenharmony_ci	  Please see Documentation/watchdog/watchdog-api.rst for
198662306a36Sopenharmony_ci	  more information.
198762306a36Sopenharmony_ci
198862306a36Sopenharmony_ciconfig BOOKE_WDT_DEFAULT_TIMEOUT
198962306a36Sopenharmony_ci	int "PowerPC Book-E Watchdog Timer Default Timeout"
199062306a36Sopenharmony_ci	depends on BOOKE_WDT
199162306a36Sopenharmony_ci	default 38 if PPC_E500
199262306a36Sopenharmony_ci	range 0 63 if PPC_E500
199362306a36Sopenharmony_ci	default 3 if !PPC_E500
199462306a36Sopenharmony_ci	range 0 3 if !PPC_E500
199562306a36Sopenharmony_ci	help
199662306a36Sopenharmony_ci	  Select the default watchdog timer period to be used by the PowerPC
199762306a36Sopenharmony_ci	  Book-E watchdog driver.  A watchdog "event" occurs when the bit
199862306a36Sopenharmony_ci	  position represented by this number transitions from zero to one.
199962306a36Sopenharmony_ci
200062306a36Sopenharmony_ci	  For Freescale Book-E processors, this is a number between 0 and 63.
200162306a36Sopenharmony_ci	  For other Book-E processors, this is a number between 0 and 3.
200262306a36Sopenharmony_ci
200362306a36Sopenharmony_ci	  The value can be overridden by the wdt_period command-line parameter.
200462306a36Sopenharmony_ci
200562306a36Sopenharmony_ciconfig MEN_A21_WDT
200662306a36Sopenharmony_ci	tristate "MEN A21 VME CPU Carrier Board Watchdog Timer"
200762306a36Sopenharmony_ci	select WATCHDOG_CORE
200862306a36Sopenharmony_ci	depends on GPIOLIB || COMPILE_TEST
200962306a36Sopenharmony_ci	help
201062306a36Sopenharmony_ci	  Watchdog driver for MEN A21 VMEbus CPU Carrier Boards.
201162306a36Sopenharmony_ci
201262306a36Sopenharmony_ci	  The driver can also be built as a module. If so, the module will be
201362306a36Sopenharmony_ci	  called mena21_wdt.
201462306a36Sopenharmony_ci
201562306a36Sopenharmony_ci	  If unsure select N here.
201662306a36Sopenharmony_ci
201762306a36Sopenharmony_ci# PPC64 Architecture
201862306a36Sopenharmony_ci
201962306a36Sopenharmony_ciconfig PSERIES_WDT
202062306a36Sopenharmony_ci	tristate "POWER Architecture Platform Watchdog Timer"
202162306a36Sopenharmony_ci	depends on PPC_PSERIES
202262306a36Sopenharmony_ci	select WATCHDOG_CORE
202362306a36Sopenharmony_ci	help
202462306a36Sopenharmony_ci	  Driver for virtual watchdog timers provided by PAPR
202562306a36Sopenharmony_ci	  hypervisors (e.g. PowerVM, KVM).
202662306a36Sopenharmony_ci
202762306a36Sopenharmony_ciconfig WATCHDOG_RTAS
202862306a36Sopenharmony_ci	tristate "RTAS watchdog"
202962306a36Sopenharmony_ci	depends on PPC_RTAS
203062306a36Sopenharmony_ci	help
203162306a36Sopenharmony_ci	  This driver adds watchdog support for the RTAS watchdog.
203262306a36Sopenharmony_ci
203362306a36Sopenharmony_ci	  To compile this driver as a module, choose M here. The module
203462306a36Sopenharmony_ci	  will be called wdrtas.
203562306a36Sopenharmony_ci
203662306a36Sopenharmony_ci# RISC-V Architecture
203762306a36Sopenharmony_ci
203862306a36Sopenharmony_ciconfig STARFIVE_WATCHDOG
203962306a36Sopenharmony_ci	tristate "StarFive Watchdog support"
204062306a36Sopenharmony_ci	depends on ARCH_STARFIVE || COMPILE_TEST
204162306a36Sopenharmony_ci	select WATCHDOG_CORE
204262306a36Sopenharmony_ci	default ARCH_STARFIVE
204362306a36Sopenharmony_ci	help
204462306a36Sopenharmony_ci	  Say Y here to support the watchdog of StarFive JH7100 and JH7110
204562306a36Sopenharmony_ci	  SoC. This driver can also be built as a module if choose M.
204662306a36Sopenharmony_ci
204762306a36Sopenharmony_ci# S390 Architecture
204862306a36Sopenharmony_ci
204962306a36Sopenharmony_ciconfig DIAG288_WATCHDOG
205062306a36Sopenharmony_ci	tristate "System z diag288 Watchdog"
205162306a36Sopenharmony_ci	depends on S390
205262306a36Sopenharmony_ci	select WATCHDOG_CORE
205362306a36Sopenharmony_ci	help
205462306a36Sopenharmony_ci	  IBM s/390 and zSeries machines running under z/VM 5.1 or later
205562306a36Sopenharmony_ci	  provide a virtual watchdog timer to their guest that cause a
205662306a36Sopenharmony_ci	  user define Control Program command to be executed after a
205762306a36Sopenharmony_ci	  timeout.
205862306a36Sopenharmony_ci	  LPAR provides a very similar interface. This driver handles
205962306a36Sopenharmony_ci	  both.
206062306a36Sopenharmony_ci
206162306a36Sopenharmony_ci	  To compile this driver as a module, choose M here. The module
206262306a36Sopenharmony_ci	  will be called diag288_wdt.
206362306a36Sopenharmony_ci
206462306a36Sopenharmony_ci# SUPERH (sh + sh64) Architecture
206562306a36Sopenharmony_ci
206662306a36Sopenharmony_ciconfig SH_WDT
206762306a36Sopenharmony_ci	tristate "SuperH Watchdog"
206862306a36Sopenharmony_ci	depends on SUPERH && (CPU_SH3 || CPU_SH4 || COMPILE_TEST)
206962306a36Sopenharmony_ci	select WATCHDOG_CORE
207062306a36Sopenharmony_ci	help
207162306a36Sopenharmony_ci	  This driver adds watchdog support for the integrated watchdog in the
207262306a36Sopenharmony_ci	  SuperH processors. If you have one of these processors and wish
207362306a36Sopenharmony_ci	  to have watchdog support enabled, say Y, otherwise say N.
207462306a36Sopenharmony_ci
207562306a36Sopenharmony_ci	  As a side note, saying Y here will automatically boost HZ to 1000
207662306a36Sopenharmony_ci	  so that the timer has a chance to clear the overflow counter. On
207762306a36Sopenharmony_ci	  slower systems (such as the SH-2 and SH-3) this will likely yield
207862306a36Sopenharmony_ci	  some performance issues. As such, the WDT should be avoided here
207962306a36Sopenharmony_ci	  unless it is absolutely necessary.
208062306a36Sopenharmony_ci
208162306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
208262306a36Sopenharmony_ci	  module will be called shwdt.
208362306a36Sopenharmony_ci
208462306a36Sopenharmony_ci# SPARC Architecture
208562306a36Sopenharmony_ci
208662306a36Sopenharmony_ci# SPARC64 Architecture
208762306a36Sopenharmony_ci
208862306a36Sopenharmony_ciconfig WATCHDOG_CP1XXX
208962306a36Sopenharmony_ci	tristate "CP1XXX Hardware Watchdog support"
209062306a36Sopenharmony_ci	depends on SPARC64 && PCI
209162306a36Sopenharmony_ci	help
209262306a36Sopenharmony_ci	  This is the driver for the hardware watchdog timers present on
209362306a36Sopenharmony_ci	  Sun Microsystems CompactPCI models CP1400 and CP1500.
209462306a36Sopenharmony_ci
209562306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
209662306a36Sopenharmony_ci	  module will be called cpwatchdog.
209762306a36Sopenharmony_ci
209862306a36Sopenharmony_ci	  If you do not have a CompactPCI model CP1400 or CP1500, or
209962306a36Sopenharmony_ci	  another UltraSPARC-IIi-cEngine boardset with hardware watchdog,
210062306a36Sopenharmony_ci	  you should say N to this option.
210162306a36Sopenharmony_ci
210262306a36Sopenharmony_ciconfig WATCHDOG_RIO
210362306a36Sopenharmony_ci	tristate "RIO Hardware Watchdog support"
210462306a36Sopenharmony_ci	depends on SPARC64 && PCI
210562306a36Sopenharmony_ci	help
210662306a36Sopenharmony_ci	  Say Y here to support the hardware watchdog capability on Sun RIO
210762306a36Sopenharmony_ci	  machines.  The watchdog timeout period is normally one minute but
210862306a36Sopenharmony_ci	  can be changed with a boot-time parameter.
210962306a36Sopenharmony_ci
211062306a36Sopenharmony_ciconfig WATCHDOG_SUN4V
211162306a36Sopenharmony_ci	tristate "Sun4v Watchdog support"
211262306a36Sopenharmony_ci	select WATCHDOG_CORE
211362306a36Sopenharmony_ci	depends on SPARC64
211462306a36Sopenharmony_ci	help
211562306a36Sopenharmony_ci	  Say Y here to support the hypervisor watchdog capability embedded
211662306a36Sopenharmony_ci	  in the SPARC sun4v architecture.
211762306a36Sopenharmony_ci
211862306a36Sopenharmony_ci	  To compile this driver as a module, choose M here. The module will
211962306a36Sopenharmony_ci	  be called sun4v_wdt.
212062306a36Sopenharmony_ci
212162306a36Sopenharmony_ci# XTENSA Architecture
212262306a36Sopenharmony_ci
212362306a36Sopenharmony_ci# Xen Architecture
212462306a36Sopenharmony_ci
212562306a36Sopenharmony_ciconfig XEN_WDT
212662306a36Sopenharmony_ci	tristate "Xen Watchdog support"
212762306a36Sopenharmony_ci	depends on XEN
212862306a36Sopenharmony_ci	select WATCHDOG_CORE
212962306a36Sopenharmony_ci	help
213062306a36Sopenharmony_ci	  Say Y here to support the hypervisor watchdog capability provided
213162306a36Sopenharmony_ci	  by Xen 4.0 and newer.  The watchdog timeout period is normally one
213262306a36Sopenharmony_ci	  minute but can be changed with a boot-time parameter.
213362306a36Sopenharmony_ci
213462306a36Sopenharmony_ciconfig UML_WATCHDOG
213562306a36Sopenharmony_ci	tristate "UML watchdog"
213662306a36Sopenharmony_ci	depends on UML || COMPILE_TEST
213762306a36Sopenharmony_ci
213862306a36Sopenharmony_ci#
213962306a36Sopenharmony_ci# ISA-based Watchdog Cards
214062306a36Sopenharmony_ci#
214162306a36Sopenharmony_ci
214262306a36Sopenharmony_cicomment "ISA-based Watchdog Cards"
214362306a36Sopenharmony_ci	depends on ISA
214462306a36Sopenharmony_ci
214562306a36Sopenharmony_ciconfig PCWATCHDOG
214662306a36Sopenharmony_ci	tristate "Berkshire Products ISA-PC Watchdog"
214762306a36Sopenharmony_ci	depends on ISA
214862306a36Sopenharmony_ci	help
214962306a36Sopenharmony_ci	  This is the driver for the Berkshire Products ISA-PC Watchdog card.
215062306a36Sopenharmony_ci	  This card simply watches your kernel to make sure it doesn't freeze,
215162306a36Sopenharmony_ci	  and if it does, it reboots your computer after a certain amount of
215262306a36Sopenharmony_ci	  time. This driver is like the WDT501 driver but for different
215362306a36Sopenharmony_ci	  hardware. Please read <file:Documentation/watchdog/pcwd-watchdog.rst>.
215462306a36Sopenharmony_ci	  The PC watchdog cards can be ordered from <http://www.berkprod.com/>.
215562306a36Sopenharmony_ci
215662306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
215762306a36Sopenharmony_ci	  module will be called pcwd.
215862306a36Sopenharmony_ci
215962306a36Sopenharmony_ci	  Most people will say N.
216062306a36Sopenharmony_ci
216162306a36Sopenharmony_ciconfig MIXCOMWD
216262306a36Sopenharmony_ci	tristate "Mixcom Watchdog"
216362306a36Sopenharmony_ci	depends on ISA
216462306a36Sopenharmony_ci	help
216562306a36Sopenharmony_ci	  This is a driver for the Mixcom hardware watchdog cards.  This
216662306a36Sopenharmony_ci	  watchdog simply watches your kernel to make sure it doesn't freeze,
216762306a36Sopenharmony_ci	  and if it does, it reboots your computer after a certain amount of
216862306a36Sopenharmony_ci	  time.
216962306a36Sopenharmony_ci
217062306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
217162306a36Sopenharmony_ci	  module will be called mixcomwd.
217262306a36Sopenharmony_ci
217362306a36Sopenharmony_ci	  Most people will say N.
217462306a36Sopenharmony_ci
217562306a36Sopenharmony_ciconfig WDT
217662306a36Sopenharmony_ci	tristate "WDT Watchdog timer"
217762306a36Sopenharmony_ci	depends on ISA
217862306a36Sopenharmony_ci	help
217962306a36Sopenharmony_ci	  If you have a WDT500P or WDT501P watchdog board, say Y here,
218062306a36Sopenharmony_ci	  otherwise N. It is not possible to probe for this board, which means
218162306a36Sopenharmony_ci	  that you have to inform the kernel about the IO port and IRQ that
218262306a36Sopenharmony_ci	  is needed (you can do this via the io and irq parameters)
218362306a36Sopenharmony_ci
218462306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
218562306a36Sopenharmony_ci	  module will be called wdt.
218662306a36Sopenharmony_ci
218762306a36Sopenharmony_ci#
218862306a36Sopenharmony_ci# PCI-based Watchdog Cards
218962306a36Sopenharmony_ci#
219062306a36Sopenharmony_ci
219162306a36Sopenharmony_cicomment "PCI-based Watchdog Cards"
219262306a36Sopenharmony_ci	depends on PCI
219362306a36Sopenharmony_ci
219462306a36Sopenharmony_ciconfig PCIPCWATCHDOG
219562306a36Sopenharmony_ci	tristate "Berkshire Products PCI-PC Watchdog"
219662306a36Sopenharmony_ci	depends on PCI
219762306a36Sopenharmony_ci	help
219862306a36Sopenharmony_ci	  This is the driver for the Berkshire Products PCI-PC Watchdog card.
219962306a36Sopenharmony_ci	  This card simply watches your kernel to make sure it doesn't freeze,
220062306a36Sopenharmony_ci	  and if it does, it reboots your computer after a certain amount of
220162306a36Sopenharmony_ci	  time. The card can also monitor the internal temperature of the PC.
220262306a36Sopenharmony_ci	  More info is available at <http://www.berkprod.com/pci_pc_watchdog.htm>.
220362306a36Sopenharmony_ci
220462306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
220562306a36Sopenharmony_ci	  module will be called pcwd_pci.
220662306a36Sopenharmony_ci
220762306a36Sopenharmony_ci	  Most people will say N.
220862306a36Sopenharmony_ci
220962306a36Sopenharmony_ciconfig WDTPCI
221062306a36Sopenharmony_ci	tristate "PCI-WDT500/501 Watchdog timer"
221162306a36Sopenharmony_ci	depends on PCI
221262306a36Sopenharmony_ci	help
221362306a36Sopenharmony_ci	  If you have a PCI-WDT500/501 watchdog board, say Y here, otherwise N.
221462306a36Sopenharmony_ci
221562306a36Sopenharmony_ci	  If you have a PCI-WDT501 watchdog board then you can enable the
221662306a36Sopenharmony_ci	  temperature sensor by setting the type parameter to 501.
221762306a36Sopenharmony_ci
221862306a36Sopenharmony_ci	  If you want to enable the Fan Tachometer on the PCI-WDT501, then you
221962306a36Sopenharmony_ci	  can do this via the tachometer parameter. Only do this if you have a
222062306a36Sopenharmony_ci	  fan tachometer actually set up.
222162306a36Sopenharmony_ci
222262306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
222362306a36Sopenharmony_ci	  module will be called wdt_pci.
222462306a36Sopenharmony_ci
222562306a36Sopenharmony_ci#
222662306a36Sopenharmony_ci# USB-based Watchdog Cards
222762306a36Sopenharmony_ci#
222862306a36Sopenharmony_ci
222962306a36Sopenharmony_cicomment "USB-based Watchdog Cards"
223062306a36Sopenharmony_ci	depends on USB
223162306a36Sopenharmony_ci
223262306a36Sopenharmony_ciconfig USBPCWATCHDOG
223362306a36Sopenharmony_ci	tristate "Berkshire Products USB-PC Watchdog"
223462306a36Sopenharmony_ci	depends on USB
223562306a36Sopenharmony_ci	help
223662306a36Sopenharmony_ci	  This is the driver for the Berkshire Products USB-PC Watchdog card.
223762306a36Sopenharmony_ci	  This card simply watches your kernel to make sure it doesn't freeze,
223862306a36Sopenharmony_ci	  and if it does, it reboots your computer after a certain amount of
223962306a36Sopenharmony_ci	  time. The card can also monitor the internal temperature of the PC.
224062306a36Sopenharmony_ci	  More info is available at <http://www.berkprod.com/usb_pc_watchdog.htm>.
224162306a36Sopenharmony_ci
224262306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
224362306a36Sopenharmony_ci	  module will be called pcwd_usb.
224462306a36Sopenharmony_ci
224562306a36Sopenharmony_ci	  Most people will say N.
224662306a36Sopenharmony_ci
224762306a36Sopenharmony_ciconfig KEEMBAY_WATCHDOG
224862306a36Sopenharmony_ci	tristate "Intel Keem Bay SoC non-secure watchdog"
224962306a36Sopenharmony_ci	depends on ARCH_KEEMBAY || (ARM64 && COMPILE_TEST)
225062306a36Sopenharmony_ci	select WATCHDOG_CORE
225162306a36Sopenharmony_ci	help
225262306a36Sopenharmony_ci	  This option enable support for an In-secure watchdog timer driver for
225362306a36Sopenharmony_ci	  Intel Keem Bay SoC. This WDT has a 32 bit timer and decrements in every
225462306a36Sopenharmony_ci	  count unit. An interrupt will be triggered, when the count crosses
225562306a36Sopenharmony_ci	  the threshold configured in the register.
225662306a36Sopenharmony_ci
225762306a36Sopenharmony_ci	  To compile this driver as a module, choose M here: the
225862306a36Sopenharmony_ci	  module will be called keembay_wdt.
225962306a36Sopenharmony_ci
226062306a36Sopenharmony_ciendif # WATCHDOG
2261