summary refs log tree commit diff
path: root/drivers/net/s2io.h
diff options
context:
space:
mode:
authorraghavendra.koushik@neterion.com <raghavendra.koushik@neterion.com>2005-08-03 12:34:11 -0700
committerJeff Garzik <jgarzik@pobox.com>2005-08-11 00:10:45 -0400
commit25fff88eb7dbc63e03f1766e130515900d440dbb (patch)
tree8ca0644a07520e4b2beec8caf7d9ba091ef50299 /drivers/net/s2io.h
parentd8892c6ee39614bc6d282dbef0ff9fa461a6467c (diff)
downloadlinux-25fff88eb7dbc63e03f1766e130515900d440dbb.tar.gz
[PATCH] S2io: Timer based slowpath handling
Hi,
This patch implements the slow-path handling functions(link
state change, hardware errors) as a timer. It is not
handled in interrupt handler as was done previously.

Signed-off-by: Ravinandan Arakali <ravinandan.arakali@neterion.com>
Signed-off-by: Raghavendra Koushik <raghavendra.koushik@neterion.com>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Diffstat (limited to 'drivers/net/s2io.h')
-rw-r--r--drivers/net/s2io.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/net/s2io.h b/drivers/net/s2io.h
index ce9bf6d5ee00..263fe7a1b903 100644
--- a/drivers/net/s2io.h
+++ b/drivers/net/s2io.h
@@ -624,6 +624,9 @@ struct s2io_nic {
 	struct tasklet_struct task;
 	volatile unsigned long tasklet_status;
 
+	/* Timer that handles I/O errors/exceptions */
+	struct timer_list alarm_timer;
+
 	/* Space to back up the PCI config space */
 	u32 config_space[256 / sizeof(u32)];
 
@@ -819,6 +822,7 @@ static int s2io_poll(struct net_device *dev, int *budget);
 #endif
 static void s2io_init_pci(nic_t * sp);
 int s2io_set_mac_addr(struct net_device *dev, u8 * addr);
+static void s2io_alarm_handle(unsigned long data);
 static irqreturn_t s2io_isr(int irq, void *dev_id, struct pt_regs *regs);
 static int verify_xena_quiescence(nic_t *sp, u64 val64, int flag);
 static struct ethtool_ops netdev_ethtool_ops;