diff --git a/drivers/net/netxen/netxen_nic.h b/drivers/net/netxen/netxen_nic.h
index c7d76c14f7be6b59c45fbc6d323c20668467b873..0458db45e70091861ca39ff63a5c1c1d1c2c674a 100644
--- a/drivers/net/netxen/netxen_nic.h
+++ b/drivers/net/netxen/netxen_nic.h
@@ -30,7 +30,6 @@
 #ifndef _NETXEN_NIC_H_
 #define _NETXEN_NIC_H_
 
-#include <linux/config.h>
 #include <linux/module.h>
 #include <linux/kernel.h>
 #include <linux/types.h>
diff --git a/drivers/net/netxen/netxen_nic_hdr.h b/drivers/net/netxen/netxen_nic_hdr.h
index 965cf625ba4b6407678ea8c04bfaa8cf0f31b831..83bf28b372a41ee0e090699f58a81861ec4ffef2 100644
--- a/drivers/net/netxen/netxen_nic_hdr.h
+++ b/drivers/net/netxen/netxen_nic_hdr.h
@@ -32,7 +32,6 @@
 
 #include <linux/module.h>
 #include <linux/kernel.h>
-#include <linux/config.h>
 #include <linux/version.h>
 
 #include <asm/semaphore.h>
diff --git a/drivers/net/netxen/netxen_nic_hw.c b/drivers/net/netxen/netxen_nic_hw.c
index c7d97054d05c87f5776dbaaca4be65a5e047bad3..9603c635b0547107e993399ae255db84373322f7 100644
--- a/drivers/net/netxen/netxen_nic_hw.c
+++ b/drivers/net/netxen/netxen_nic_hw.c
@@ -351,7 +351,7 @@ void netxen_tso_check(struct netxen_adapter *adapter,
 		    ((skb->nh.iph)->ihl * sizeof(u32)) +
 		    ((skb->h.th)->doff * sizeof(u32));
 		desc->opcode = TX_TCP_LSO;
-	} else if (skb->ip_summed == CHECKSUM_HW) {
+	} else if (skb->ip_summed == CHECKSUM_COMPLETE) {
 		if (skb->nh.iph->protocol == IPPROTO_TCP) {
 			desc->opcode = TX_TCP_PKT;
 		} else if (skb->nh.iph->protocol == IPPROTO_UDP) {
diff --git a/drivers/net/netxen/netxen_nic_main.c b/drivers/net/netxen/netxen_nic_main.c
index b54ea164e0eac0c1dce72b58b8194ad570602161..145bf47f0a8dada5d9d257d6e5921fa72588952d 100644
--- a/drivers/net/netxen/netxen_nic_main.c
+++ b/drivers/net/netxen/netxen_nic_main.c
@@ -38,6 +38,9 @@
 #include "netxen_nic_phan_reg.h"
 #include "netxen_nic_ioctl.h"
 
+#include <linux/dma-mapping.h>
+#include <linux/vmalloc.h>
+
 MODULE_DESCRIPTION("NetXen Multi port (1/10) Gigabit Network Driver");
 MODULE_LICENSE("GPL");
 MODULE_VERSION(NETXEN_NIC_LINUX_VERSIONID);
@@ -66,7 +69,7 @@ static int netxen_nic_poll(struct net_device *dev, int *budget);
 #ifdef CONFIG_NET_POLL_CONTROLLER
 static void netxen_nic_poll_controller(struct net_device *netdev);
 #endif
-static irqreturn_t netxen_intr(int irq, void *data, struct pt_regs *regs);
+static irqreturn_t netxen_intr(int irq, void *data);
 
 /*  PCI Device ID Table  */
 static struct pci_device_id netxen_pci_tbl[] __devinitdata = {
@@ -969,7 +972,7 @@ netxen_handle_int(struct netxen_adapter *adapter, struct net_device *netdev)
  * @irq: interrupt number
  * data points to adapter stucture (which may be handling more than 1 port
  */
-irqreturn_t netxen_intr(int irq, void *data, struct pt_regs * regs)
+irqreturn_t netxen_intr(int irq, void *data)
 {
 	struct netxen_adapter *adapter;
 	struct netxen_port *port;
@@ -1049,7 +1052,7 @@ static void netxen_nic_poll_controller(struct net_device *netdev)
 	struct netxen_port *port = netdev_priv(netdev);
 	struct netxen_adapter *adapter = port->adapter;
 	disable_irq(adapter->irq);
-	netxen_intr(adapter->irq, adapter, NULL);
+	netxen_intr(adapter->irq, adapter);
 	enable_irq(adapter->irq);
 }
 #endif