aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/watchdog/Kconfig
diff options
context:
space:
mode:
authorMika Westerberg <mika.westerberg@linux.intel.com>2016-09-20 08:30:51 -0400
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>2016-09-23 20:10:04 -0400
commit058dfc7670086edda8d34f0dbe93c596db5d4a6b (patch)
treea7f469b35b797f90a6cdc7c1c9859f62b36f4a14 /drivers/watchdog/Kconfig
parent3be7988674ab33565700a37b210f502563d932e6 (diff)
ACPI / watchdog: Add support for WDAT hardware watchdog
Starting from Intel Skylake the iTCO watchdog timer registers were moved to reside in the same register space with SMBus host controller. Not all needed registers are available though and we need to unhide P2SB (Primary to Sideband) device briefly to be able to read status of required NO_REBOOT bit. The i2c-i801.c SMBus driver used to handle this and creation of the iTCO watchdog platform device. Windows, on the other hand, does not use the iTCO watchdog hardware directly even if it is available. Instead it relies on ACPI Watchdog Action Table (WDAT) table to describe the watchdog hardware to the OS. This table contains necessary information about the the hardware and also set of actions which are executed by a driver as needed. This patch implements a new watchdog driver that takes advantage of the ACPI WDAT table. We split the functionality into two parts: first part enumerates the WDAT table and if found, populates resources and creates platform device for the actual driver. The second part is the driver itself. The reason for the split is that this way we can make the driver itself to be a module and loaded automatically if the WDAT table is found. Otherwise the module is not loaded. Signed-off-by: Mika Westerberg <mika.westerberg@linux.intel.com> Reviewed-by: Guenter Roeck <linux@roeck-us.net> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Diffstat (limited to 'drivers/watchdog/Kconfig')
-rw-r--r--drivers/watchdog/Kconfig13
1 files changed, 13 insertions, 0 deletions
diff --git a/drivers/watchdog/Kconfig b/drivers/watchdog/Kconfig
index 1bffe006ca9a..50dbaa805658 100644
--- a/drivers/watchdog/Kconfig
+++ b/drivers/watchdog/Kconfig
@@ -152,6 +152,19 @@ config TANGOX_WATCHDOG
152 152
153 This driver can be built as a module. The module name is tangox_wdt. 153 This driver can be built as a module. The module name is tangox_wdt.
154 154
155config WDAT_WDT
156 tristate "ACPI Watchdog Action Table (WDAT)"
157 depends on ACPI
158 select ACPI_WATCHDOG
159 help
160 This driver adds support for systems with ACPI Watchdog Action
161 Table (WDAT) table. Servers typically have this but it can be
162 found on some desktop machines as well. This driver will take
163 over the native iTCO watchdog driver found on many Intel CPUs.
164
165 To compile this driver as module, choose M here: the module will
166 be called wdat_wdt.
167
155config WM831X_WATCHDOG 168config WM831X_WATCHDOG
156 tristate "WM831x watchdog" 169 tristate "WM831x watchdog"
157 depends on MFD_WM831X 170 depends on MFD_WM831X