Skip to contentSkip to conversation

Watchdog patches for v2.6.40-rc1

PATCH Wim Van Sebroeck 2 participants 3 messages May 27, 2011 – May 31, 2011 Watchdog device drivers

lore
Share & tools
lore
#0 lore raw

Hi All,

These are the patches that I will sent Linus on monday:

 drivers/watchdog/Kconfig              |    9 
 drivers/watchdog/Makefile             |    1 
 drivers/watchdog/dw_wdt.c             |  376 +++++++++++++++++++++++++++++++
 drivers/watchdog/iTCO_wdt.c           |  407 +++++++++++-----------------------
 drivers/watchdog/intel_scu_watchdog.c |    1 
 drivers/watchdog/it8712f_wdt.c        |   61 +++--
 drivers/watchdog/it87_wdt.c           |  168 +++++++-------
 drivers/watchdog/pc87413_wdt.c        |   96 ++++----
 8 files changed, 709 insertions(+), 410 deletions(-)

with these Changes:

Author: Jesper Juhl <[email protected]>
Date:   Thu May 26 11:12:53 2011 +0200

watchdog: Intel SCU Watchdog: Fix duplicate include

linux/types.h is needlessly being included twice in drivers/watchdog/intel_scu_watchdog.c

Author: Jamie Iles <[email protected]>
Date:   Mon Jan 24 12:19:12 2011 +0000

watchdog: add support for the Synopsys DesignWare WDT

The Synopsys DesignWare watchdog is found in several ARM based systems and provides a choice of 16 timeout periods depending on the clock input. The watchdog cannot be disabled once started.

Author: Jonathan McDowell <[email protected]>
Date:   Thu Apr 14 12:02:39 2011 -0700

watchdog: pc87413_wdt: Cleanup pc87413 watchdog driver to use

Inspired by Nat Gurumoorthy's recent patches for cleaning up the it87 drivers to use request_muxed_region for accessing the SuperIO area on these chips, and the fact I have a GPIO driver for the pc8741x basically ready for submission, here is a patch to cleanup the pc87413 watchdog driver to use request_muxed_region for accessing the SuperIO area.

It also pulls out the details about the SWC IO area on initial driver load, and properly does a request_region for that area - there's no requirement to touch the SuperIO area after doing the initial watchdog enable and IO base retrieval.

While I have hardware with a pc87413 on it it is not wired in a way that allows the watchdog to reboot the machine, so I have not been able to fully test these changes - I have checked that the driver correctly initialises itself still and requests the SWC io region ok.

Author: Wim Van Sebroeck <[email protected]>
Date:   Fri May 20 08:28:48 2011 +0000

watchdog: iTCO_wdt: clean-up PCI device ID's

Clean up of the iTCO_wdt PCI device ID's. Own macro is replaced by the PCI_VDEVICE macro.

Author: Nat Gurumoorthy <[email protected]>
Date:   Mon May 9 11:45:07 2011 -0700

watchdog: Use "request_muxed_region" in it87 watchdog drivers

Changes the it87 watchdog drivers to use "request_muxed_region". Serialize access to the hardware by using "request_muxed_region" macro defined by Alan Cox. Call to this macro will hold off the requestor if the resource is currently busy.

The use of the above macro makes it possible to get rid of spinlocks in it8712f_wdt.c and it87_wdt.c watchdog drivers. This also greatly simplifies the implementation of it87_wdt.c driver.

"superio_enter" will return an error if call to "request_muxed_region" fails.
Rest of the code change is to ripple an error return from superio_enter to the top level.

The Changes can also be looked at on:

	http://www.kernel.org/git/?p=linux/kernel/git/wim/linux-2.6-watchdog.git;a=summary

For completeness, I added the overal diff below.

Greetings,
Wim.

================================================================================

drivers/watchdog/Kconfig +9 -0
index 022f9eb..ca8b6ba 100644
@@ -186,6 +186,15 @@ config SA1100_WATCHDOG
 	  To compile this driver as a module, choose M here: the
 	  module will be called sa1100_wdt.
 
+config DW_WATCHDOG
+	tristate "Synopsys DesignWare watchdog"
+	depends on ARM && HAVE_CLK
+	help
+	  Say Y here if to include support for the Synopsys DesignWare
+	  watchdog timer found in many ARM chips.
+	  To compile this driver as a module, choose M here: the
+	  module will be called dw_wdt.
+
 config MPCORE_WATCHDOG
 	tristate "MPcore watchdog"
 	depends on HAVE_ARM_TWD
drivers/watchdog/Makefile +1 -0
index ed26f70..b2ddff7 100644
@@ -37,6 +37,7 @@ obj-$(CONFIG_IXP4XX_WATCHDOG) += ixp4xx_wdt.o
 obj-$(CONFIG_KS8695_WATCHDOG) += ks8695_wdt.o
 obj-$(CONFIG_S3C2410_WATCHDOG) += s3c2410_wdt.o
 obj-$(CONFIG_SA1100_WATCHDOG) += sa1100_wdt.o
+obj-$(CONFIG_DW_WATCHDOG) += dw_wdt.o
 obj-$(CONFIG_MPCORE_WATCHDOG) += mpcore_wdt.o
 obj-$(CONFIG_EP93XX_WATCHDOG) += ep93xx_wdt.o
 obj-$(CONFIG_PNX4008_WATCHDOG) += pnx4008_wdt.o
drivers/watchdog/dw_wdt.c new file +376 -0

376 lines not on this page · raw message

drivers/watchdog/iTCO_wdt.c +139 -268

432 lines not on this page · raw message

drivers/watchdog/intel_scu_watchdog.c +0 -1
index 919bdd1..ba43860 100644
@@ -42,7 +42,6 @@
 #include <linux/sched.h>
 #include <linux/signal.h>
 #include <linux/sfi.h>
-#include <linux/types.h>
 #include <asm/irq.h>
 #include <asm/atomic.h>
 #include <asm/intel_scu_ipc.h>
drivers/watchdog/it8712f_wdt.c +44 -17

160 lines not on this page · raw message

drivers/watchdog/it87_wdt.c +90 -78

348 lines not on this page · raw message

drivers/watchdog/pc87413_wdt.c +50 -46

201 lines not on this page · raw message

#1 lore raw
Quoted 2 lines · Wim Van Sebroeck

These are the patches that I will sent Linus on monday:

If you send them on Monday (or, indeed, late Sunday), I won't be pulling them any more.

There will always be a 41 (or 3.1 or whatever).

Linus

#2 lore raw

Hi All,

Quoted 8 lines · Wim Van Sebroeck
Quoted 2 lines

These are the patches that I will sent Linus on monday:

If you send them on Monday (or, indeed, late Sunday), I won't be pulling them any more.

There will always be a 41 (or 3.1 or whatever).

I was not available in the weekend. Sorry about that. So we will go for 3.1 .

Kind regards,
Wim.