MODULE_PARM_DESC(heartbeat,"Watchdog heartbeat in seconds. (2<=heartbeat<=7200, default="__MODULE_STRING(WATCHDOG_HEARTBEAT)")");
MODULE_PARM_DESC(heartbeat,"Watchdog heartbeat in seconds. (2<=heartbeat<=7200 or 0=delay-time from dip-switches, default="__MODULE_STRING(WATCHDOG_HEARTBEAT)")");
staticintnowayout=WATCHDOG_NOWAYOUT;
staticintnowayout=WATCHDOG_NOWAYOUT;
module_param(nowayout,int,0);
module_param(nowayout,int,0);
...
@@ -844,6 +856,10 @@ static int __devinit pcwatchdog_init(int base_addr)
...
@@ -844,6 +856,10 @@ static int __devinit pcwatchdog_init(int base_addr)
/* Show info about the card itself */
/* Show info about the card itself */
pcwd_show_card_info();
pcwd_show_card_info();
/* If heartbeat = 0 then we use the heartbeat from the dip-switches */
MODULE_PARM_DESC(heartbeat,"Watchdog heartbeat in seconds. (0<heartbeat<65536, default="__MODULE_STRING(WATCHDOG_HEARTBEAT)")");
MODULE_PARM_DESC(heartbeat,"Watchdog heartbeat in seconds. (0<heartbeat<65536 or 0=delay-time from dip-switches, default="__MODULE_STRING(WATCHDOG_HEARTBEAT)")");
staticintnowayout=WATCHDOG_NOWAYOUT;
staticintnowayout=WATCHDOG_NOWAYOUT;
module_param(nowayout,int,0);
module_param(nowayout,int,0);
...
@@ -286,7 +298,9 @@ static int pcipcwd_stop(void)
...
@@ -286,7 +298,9 @@ static int pcipcwd_stop(void)
staticintpcipcwd_keepalive(void)
staticintpcipcwd_keepalive(void)
{
{
/* Re-trigger watchdog by writing to port 0 */
/* Re-trigger watchdog by writing to port 0 */
spin_lock(&pcipcwd_private.io_lock);
outb_p(0x42,pcipcwd_private.io_addr);/* send out any data */
outb_p(0x42,pcipcwd_private.io_addr);/* send out any data */
spin_unlock(&pcipcwd_private.io_lock);
if(debug>=DEBUG)
if(debug>=DEBUG)
printk(KERN_DEBUGPFX"Watchdog keepalive signal send\n");
printk(KERN_DEBUGPFX"Watchdog keepalive signal send\n");
...
@@ -373,7 +387,9 @@ static int pcipcwd_get_temperature(int *temperature)
...
@@ -373,7 +387,9 @@ static int pcipcwd_get_temperature(int *temperature)
if(!pcipcwd_private.supports_temp)
if(!pcipcwd_private.supports_temp)
return-ENODEV;
return-ENODEV;
spin_lock(&pcipcwd_private.io_lock);
*temperature=inb_p(pcipcwd_private.io_addr);
*temperature=inb_p(pcipcwd_private.io_addr);
spin_unlock(&pcipcwd_private.io_lock);
/*
/*
* Convert celsius to fahrenheit, since this was
* Convert celsius to fahrenheit, since this was
...
@@ -711,6 +727,10 @@ static int __devinit pcipcwd_card_init(struct pci_dev *pdev,
...
@@ -711,6 +727,10 @@ static int __devinit pcipcwd_card_init(struct pci_dev *pdev,
/* Show info about the card itself */
/* Show info about the card itself */
pcipcwd_show_card_info();
pcipcwd_show_card_info();
/* If heartbeat = 0 then we use the heartbeat from the dip-switches */
MODULE_PARM_DESC(heartbeat,"Watchdog heartbeat in seconds. (0<heartbeat<65536, default="__MODULE_STRING(WATCHDOG_HEARTBEAT)")");
MODULE_PARM_DESC(heartbeat,"Watchdog heartbeat in seconds. (0<heartbeat<65536 or 0=delay-time from dip-switches, default="__MODULE_STRING(WATCHDOG_HEARTBEAT)")");