Skip to contentSkip to conversation

Intel SCU Watchdog Timer Driver for Moorestown and Medfield platforms.

PATCH Superseded Alan Cox 2 participants 2 messages Nov 9, 2010 – Nov 10, 2010 Watchdog device drivers

lore
Share & tools
lore

Alan Cox

author
#0 lore raw

PATCH 1/1 Intel SCU Watchdog Timer Driver for Moorestown and Medfield platforms.

From: Donald Johnson <[email protected]>

This submission includes:
- Fix to intel_scu_write() to start watchdog timer the on the first write, and refresh on subsequent writes.
This enables Open, write, write, ... usage model.
- Moves boot parameter checks from intel_scu_open() to intel_scu_watchdog_init(), so driver init will fail if these parameters are out of bounds.
- Adds check for whether process waiting in wait_event_interruptible() received a signal while it was waiting.
- Other small error handling changes.

[Fix a backwards check]
[Printk and style clean + check loaded on a MID device]

---

 drivers/watchdog/Kconfig              |   10 +
 drivers/watchdog/Makefile             |    1 
 drivers/watchdog/intel_scu_watchdog.c |  620 +++++++++++++++++++++++++++++++++
 drivers/watchdog/intel_scu_watchdog.h |   66 ++++
 4 files changed, 697 insertions(+), 0 deletions(-)
 create mode 100644 drivers/watchdog/intel_scu_watchdog.c
 create mode 100644 drivers/watchdog/intel_scu_watchdog.h
drivers/watchdog/Kconfig +10 -0
index 4a29104..bdd98a3 100644
@@ -522,6 +522,16 @@ config I6300ESB_WDT
 	  To compile this driver as a module, choose M here: the
 	  module will be called i6300esb.
 
+config INTEL_SCU_WATCHDOG
+	bool "Intel SCU Watchdog for Mobile Platforms"
+	depends on WATCHDOG
+	depends on INTEL_SCU_IPC
+	---help---
+	  Hardware driver for the watchdog time built into the Intel SCU
+	  for Intel Mobile Platforms.
+
+	  To compile this driver as a module, choose M here.
+
 config ITCO_WDT
 	tristate "Intel TCO Timer/Watchdog"
 	depends on (X86 || IA64) && PCI
drivers/watchdog/Makefile +1 -0
index 4b0ef38..c64b97e 100644
@@ -100,6 +100,7 @@ obj-$(CONFIG_W83877F_WDT) += w83877f_wdt.o
 obj-$(CONFIG_W83977F_WDT) += w83977f_wdt.o
 obj-$(CONFIG_MACHZ_WDT) += machzwd.o
 obj-$(CONFIG_SBC_EPX_C3_WATCHDOG) += sbc_epx_c3.o
+obj-$(CONFIG_INTEL_SCU_WATCHDOG) += intel_scu_watchdog.o
 
 # M32R Architecture
 
drivers/watchdog/intel_scu_watchdog.c new file +620 -0

620 lines not on this page · raw message

drivers/watchdog/intel_scu_watchdog.h new file +66 -0

66 lines not on this page · raw message

#1 lore raw

Hi Alan,

Quoted 13 lines

From: Donald Johnson <[email protected]>

This submission includes:
- Fix to intel_scu_write() to start watchdog timer the on the first write, and refresh on subsequent writes.
This enables Open, write, write, ... usage model.
- Moves boot parameter checks from intel_scu_open() to intel_scu_watchdog_init(), so driver init will fail if these parameters are out of bounds.
- Adds check for whether process waiting in wait_event_interruptible() received a signal while it was waiting.
- Other small error handling changes.

Quoted 5 lines
[Fix a backwards check]
[Printk and style clean + check loaded on a MID device]

Will review it and add it to linux-2.6-watchdog-next in the coming 2 weeks.

Kind regards,
Wim.