提交 3f1ae223 编写于 作者: L Linus Torvalds

Merge git://git.kernel.org/pub/scm/linux/kernel/git/wim/linux-2.6-watchdog

* git://git.kernel.org/pub/scm/linux/kernel/git/wim/linux-2.6-watchdog:
  [WATCHDOG] pcwd.c - fix open_allowed type.
  [WATCHDOG] fix watchdog/ixp4xx_wdt.c compilation
  [WATCHDOG] fix watchdog/wdt285.c compilation
  [WATCHDOG] fix watchdog/at91rm9200_wdt.c compilation
  [WATCHDOG] fix watchdog/shwdt.c compilation
  [WATCHDOG] fix watchdog/txx9wdt.c compilation
  [WATCHDOG] MAINTAINERS: remove ZF MACHZ WATCHDOG entry
  [WATCHDOG] Fix build with CONFIG_ITCO_VENDOR_SUPPORT=n
...@@ -4683,12 +4683,6 @@ L: linux-wireless@vger.kernel.org ...@@ -4683,12 +4683,6 @@ L: linux-wireless@vger.kernel.org
L: zd1211-devs@lists.sourceforge.net (subscribers-only) L: zd1211-devs@lists.sourceforge.net (subscribers-only)
S: Maintained S: Maintained
ZF MACHZ WATCHDOG
P: Fernando Fuganti
M: fuganti@netbank.com.br
W: http://cvs.conectiva.com.br/drivers/ZFL-watchdog/
S: Maintained
ZR36067 VIDEO FOR LINUX DRIVER ZR36067 VIDEO FOR LINUX DRIVER
P: Ronald Bultje P: Ronald Bultje
M: rbultje@ronald.bitfreak.net M: rbultje@ronald.bitfreak.net
......
...@@ -66,7 +66,10 @@ obj-$(CONFIG_IB700_WDT) += ib700wdt.o ...@@ -66,7 +66,10 @@ obj-$(CONFIG_IB700_WDT) += ib700wdt.o
obj-$(CONFIG_IBMASR) += ibmasr.o obj-$(CONFIG_IBMASR) += ibmasr.o
obj-$(CONFIG_WAFER_WDT) += wafer5823wdt.o obj-$(CONFIG_WAFER_WDT) += wafer5823wdt.o
obj-$(CONFIG_I6300ESB_WDT) += i6300esb.o obj-$(CONFIG_I6300ESB_WDT) += i6300esb.o
obj-$(CONFIG_ITCO_WDT) += iTCO_wdt.o iTCO_vendor_support.o obj-$(CONFIG_ITCO_WDT) += iTCO_wdt.o
ifeq ($(CONFIG_ITCO_VENDOR_SUPPORT),y)
obj-$(CONFIG_ITCO_WDT) += iTCO_vendor_support.o
endif
obj-$(CONFIG_IT8712F_WDT) += it8712f_wdt.o obj-$(CONFIG_IT8712F_WDT) += it8712f_wdt.o
obj-$(CONFIG_HP_WATCHDOG) += hpwdt.o obj-$(CONFIG_HP_WATCHDOG) += hpwdt.o
obj-$(CONFIG_SC1200_WDT) += sc1200wdt.o obj-$(CONFIG_SC1200_WDT) += sc1200wdt.o
......
...@@ -128,7 +128,7 @@ static struct watchdog_info at91_wdt_info = { ...@@ -128,7 +128,7 @@ static struct watchdog_info at91_wdt_info = {
/* /*
* Handle commands from user-space. * Handle commands from user-space.
*/ */
static long at91_wdt_ioct(struct file *file, static long at91_wdt_ioctl(struct file *file,
unsigned int cmd, unsigned long arg) unsigned int cmd, unsigned long arg)
{ {
void __user *argp = (void __user *)arg; void __user *argp = (void __user *)arg;
......
...@@ -29,7 +29,7 @@ static int nowayout = WATCHDOG_NOWAYOUT; ...@@ -29,7 +29,7 @@ static int nowayout = WATCHDOG_NOWAYOUT;
static int heartbeat = 60; /* (secs) Default is 1 minute */ static int heartbeat = 60; /* (secs) Default is 1 minute */
static unsigned long wdt_status; static unsigned long wdt_status;
static unsigned long boot_status; static unsigned long boot_status;
static spin_lock_t wdt_lock; static DEFINE_SPINLOCK(wdt_lock);
#define WDT_TICK_RATE (IXP4XX_PERIPHERAL_BUS_CLOCK * 1000000UL) #define WDT_TICK_RATE (IXP4XX_PERIPHERAL_BUS_CLOCK * 1000000UL)
......
...@@ -168,7 +168,7 @@ static const int heartbeat_tbl[] = { ...@@ -168,7 +168,7 @@ static const int heartbeat_tbl[] = {
static int cards_found; static int cards_found;
/* internal variables */ /* internal variables */
static atomic_t open_allowed = ATOMIC_INIT(1); static unsigned long open_allowed;
static char expect_close; static char expect_close;
static int temp_panic; static int temp_panic;
......
...@@ -30,7 +30,7 @@ ...@@ -30,7 +30,7 @@
#include <linux/mm.h> #include <linux/mm.h>
#include <linux/io.h> #include <linux/io.h>
#include <linux/uaccess.h> #include <linux/uaccess.h>
#include <linux/watchdog.h> #include <asm/watchdog.h>
#define PFX "shwdt: " #define PFX "shwdt: "
...@@ -68,7 +68,7 @@ static int clock_division_ratio = WTCSR_CKS_4096; ...@@ -68,7 +68,7 @@ static int clock_division_ratio = WTCSR_CKS_4096;
static void sh_wdt_ping(unsigned long data); static void sh_wdt_ping(unsigned long data);
static unsigned long shwdt_is_open; static unsigned long shwdt_is_open;
static struct watchdog_info sh_wdt_info; static const struct watchdog_info sh_wdt_info;
static char shwdt_expect_close; static char shwdt_expect_close;
static DEFINE_TIMER(timer, sh_wdt_ping, 0, 0); static DEFINE_TIMER(timer, sh_wdt_ping, 0, 0);
static unsigned long next_heartbeat; static unsigned long next_heartbeat;
...@@ -89,7 +89,7 @@ static void sh_wdt_start(void) ...@@ -89,7 +89,7 @@ static void sh_wdt_start(void)
__u8 csr; __u8 csr;
unsigned long flags; unsigned long flags;
spin_lock_irqsave(&wdt_lock, flags); spin_lock_irqsave(&shwdt_lock, flags);
next_heartbeat = jiffies + (heartbeat * HZ); next_heartbeat = jiffies + (heartbeat * HZ);
mod_timer(&timer, next_ping_period(clock_division_ratio)); mod_timer(&timer, next_ping_period(clock_division_ratio));
...@@ -127,7 +127,7 @@ static void sh_wdt_start(void) ...@@ -127,7 +127,7 @@ static void sh_wdt_start(void)
csr &= ~RSTCSR_RSTS; csr &= ~RSTCSR_RSTS;
sh_wdt_write_rstcsr(csr); sh_wdt_write_rstcsr(csr);
#endif #endif
spin_unlock_irqrestore(&wdt_lock, flags); spin_unlock_irqrestore(&shwdt_lock, flags);
} }
/** /**
...@@ -139,14 +139,14 @@ static void sh_wdt_stop(void) ...@@ -139,14 +139,14 @@ static void sh_wdt_stop(void)
__u8 csr; __u8 csr;
unsigned long flags; unsigned long flags;
spin_lock_irqsave(&wdt_lock, flags); spin_lock_irqsave(&shwdt_lock, flags);
del_timer(&timer); del_timer(&timer);
csr = sh_wdt_read_csr(); csr = sh_wdt_read_csr();
csr &= ~WTCSR_TME; csr &= ~WTCSR_TME;
sh_wdt_write_csr(csr); sh_wdt_write_csr(csr);
spin_unlock_irqrestore(&wdt_lock, flags); spin_unlock_irqrestore(&shwdt_lock, flags);
} }
/** /**
...@@ -157,9 +157,9 @@ static inline void sh_wdt_keepalive(void) ...@@ -157,9 +157,9 @@ static inline void sh_wdt_keepalive(void)
{ {
unsigned long flags; unsigned long flags;
spin_lock_irqsave(&wdt_lock, flags); spin_lock_irqsave(&shwdt_lock, flags);
next_heartbeat = jiffies + (heartbeat * HZ); next_heartbeat = jiffies + (heartbeat * HZ);
spin_unlock_irqrestore(&wdt_lock, flags); spin_unlock_irqrestore(&shwdt_lock, flags);
} }
/** /**
...@@ -173,9 +173,9 @@ static int sh_wdt_set_heartbeat(int t) ...@@ -173,9 +173,9 @@ static int sh_wdt_set_heartbeat(int t)
if (unlikely(t < 1 || t > 3600)) /* arbitrary upper limit */ if (unlikely(t < 1 || t > 3600)) /* arbitrary upper limit */
return -EINVAL; return -EINVAL;
spin_lock_irqsave(&wdt_lock, flags); spin_lock_irqsave(&shwdt_lock, flags);
heartbeat = t; heartbeat = t;
spin_unlock_irqrestore(&wdt_lock, flags); spin_unlock_irqrestore(&shwdt_lock, flags);
return 0; return 0;
} }
...@@ -189,7 +189,7 @@ static void sh_wdt_ping(unsigned long data) ...@@ -189,7 +189,7 @@ static void sh_wdt_ping(unsigned long data)
{ {
unsigned long flags; unsigned long flags;
spin_lock_irqsave(&wdt_lock, flags); spin_lock_irqsave(&shwdt_lock, flags);
if (time_before(jiffies, next_heartbeat)) { if (time_before(jiffies, next_heartbeat)) {
__u8 csr; __u8 csr;
...@@ -203,7 +203,7 @@ static void sh_wdt_ping(unsigned long data) ...@@ -203,7 +203,7 @@ static void sh_wdt_ping(unsigned long data)
} else } else
printk(KERN_WARNING PFX "Heartbeat lost! Will not ping " printk(KERN_WARNING PFX "Heartbeat lost! Will not ping "
"the watchdog\n"); "the watchdog\n");
spin_unlock_irqrestore(&wdt_lock, flags); spin_unlock_irqrestore(&shwdt_lock, flags);
} }
/** /**
......
...@@ -45,7 +45,7 @@ static unsigned long txx9wdt_alive; ...@@ -45,7 +45,7 @@ static unsigned long txx9wdt_alive;
static int expect_close; static int expect_close;
static struct txx9_tmr_reg __iomem *txx9wdt_reg; static struct txx9_tmr_reg __iomem *txx9wdt_reg;
static struct clk *txx9_imclk; static struct clk *txx9_imclk;
static DECLARE_LOCK(txx9_lock); static DEFINE_SPINLOCK(txx9_lock);
static void txx9wdt_ping(void) static void txx9wdt_ping(void)
{ {
......
...@@ -208,7 +208,7 @@ static int __init footbridge_watchdog_init(void) ...@@ -208,7 +208,7 @@ static int __init footbridge_watchdog_init(void)
soft_margin); soft_margin);
if (machine_is_cats()) if (machine_is_cats())
printk(KERN_WARN printk(KERN_WARNING
"Warning: Watchdog reset may not work on this machine.\n"); "Warning: Watchdog reset may not work on this machine.\n");
return 0; return 0;
} }
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册