mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-08-23 01:10:04 +00:00
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
This commit is contained in:
commit
3f1ae22390
8 changed files with 21 additions and 24 deletions
|
@ -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
|
||||||
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 = {
|
||||||
/*
|
/*
|
||||||
* 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;
|
||||||
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[] = {
|
||||||
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 @@
|
||||||
#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;
|
||||||
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)
|
||||||
__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)
|
||||||
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)
|
||||||
__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)
|
||||||
{
|
{
|
||||||
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)
|
||||||
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)
|
||||||
{
|
{
|
||||||
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)
|
||||||
} 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;
|
||||||
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)
|
||||||
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;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue