aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/net/enic/cq_desc.h2
-rw-r--r--drivers/net/enic/cq_enet_desc.h4
-rw-r--r--drivers/net/enic/enic.h4
-rw-r--r--drivers/net/enic/enic_main.c11
-rw-r--r--drivers/net/enic/enic_res.c2
-rw-r--r--drivers/net/enic/enic_res.h2
-rw-r--r--drivers/net/enic/rq_enet_desc.h2
-rw-r--r--drivers/net/enic/vnic_cq.c2
-rw-r--r--drivers/net/enic/vnic_cq.h2
-rw-r--r--drivers/net/enic/vnic_dev.c25
-rw-r--r--drivers/net/enic/vnic_dev.h2
-rw-r--r--drivers/net/enic/vnic_devcmd.h2
-rw-r--r--drivers/net/enic/vnic_enet.h2
-rw-r--r--drivers/net/enic/vnic_intr.c2
-rw-r--r--drivers/net/enic/vnic_intr.h8
-rw-r--r--drivers/net/enic/vnic_nic.h2
-rw-r--r--drivers/net/enic/vnic_resource.h2
-rw-r--r--drivers/net/enic/vnic_rq.c3
-rw-r--r--drivers/net/enic/vnic_rq.h2
-rw-r--r--drivers/net/enic/vnic_rss.h2
-rw-r--r--drivers/net/enic/vnic_stats.h2
-rw-r--r--drivers/net/enic/vnic_vic.c3
-rw-r--r--drivers/net/enic/vnic_wq.c2
-rw-r--r--drivers/net/enic/vnic_wq.h2
-rw-r--r--drivers/net/enic/wq_enet_desc.h2
25 files changed, 41 insertions, 53 deletions
diff --git a/drivers/net/enic/cq_desc.h b/drivers/net/enic/cq_desc.h
index 1eb289f773bf..d6dd1b4edf6e 100644
--- a/drivers/net/enic/cq_desc.h
+++ b/drivers/net/enic/cq_desc.h
@@ -1,5 +1,5 @@
1/* 1/*
2 * Copyright 2008 Cisco Systems, Inc. All rights reserved. 2 * Copyright 2008-2010 Cisco Systems, Inc. All rights reserved.
3 * Copyright 2007 Nuova Systems, Inc. All rights reserved. 3 * Copyright 2007 Nuova Systems, Inc. All rights reserved.
4 * 4 *
5 * This program is free software; you may redistribute it and/or modify 5 * This program is free software; you may redistribute it and/or modify
diff --git a/drivers/net/enic/cq_enet_desc.h b/drivers/net/enic/cq_enet_desc.h
index f2d98bbf05aa..c2c0680a1146 100644
--- a/drivers/net/enic/cq_enet_desc.h
+++ b/drivers/net/enic/cq_enet_desc.h
@@ -1,5 +1,5 @@
1/* 1/*
2 * Copyright 2008 Cisco Systems, Inc. All rights reserved. 2 * Copyright 2008-2010 Cisco Systems, Inc. All rights reserved.
3 * Copyright 2007 Nuova Systems, Inc. All rights reserved. 3 * Copyright 2007 Nuova Systems, Inc. All rights reserved.
4 * 4 *
5 * This program is free software; you may redistribute it and/or modify 5 * This program is free software; you may redistribute it and/or modify
@@ -82,7 +82,7 @@ struct cq_enet_rq_desc {
82 ((1 << CQ_ENET_RQ_DESC_VLAN_TCI_USER_PRIO_BITS) - 1) 82 ((1 << CQ_ENET_RQ_DESC_VLAN_TCI_USER_PRIO_BITS) - 1)
83#define CQ_ENET_RQ_DESC_VLAN_TCI_USER_PRIO_SHIFT 13 83#define CQ_ENET_RQ_DESC_VLAN_TCI_USER_PRIO_SHIFT 13
84 84
85#define CQ_ENET_RQ_DESC_FCOE_SOF_BITS 4 85#define CQ_ENET_RQ_DESC_FCOE_SOF_BITS 8
86#define CQ_ENET_RQ_DESC_FCOE_SOF_MASK \ 86#define CQ_ENET_RQ_DESC_FCOE_SOF_MASK \
87 ((1 << CQ_ENET_RQ_DESC_FCOE_SOF_BITS) - 1) 87 ((1 << CQ_ENET_RQ_DESC_FCOE_SOF_BITS) - 1)
88#define CQ_ENET_RQ_DESC_FCOE_EOF_BITS 8 88#define CQ_ENET_RQ_DESC_FCOE_EOF_BITS 8
diff --git a/drivers/net/enic/enic.h b/drivers/net/enic/enic.h
index 7280314804a3..f239aa8c6f4c 100644
--- a/drivers/net/enic/enic.h
+++ b/drivers/net/enic/enic.h
@@ -1,5 +1,5 @@
1/* 1/*
2 * Copyright 2008 Cisco Systems, Inc. All rights reserved. 2 * Copyright 2008-2010 Cisco Systems, Inc. All rights reserved.
3 * Copyright 2007 Nuova Systems, Inc. All rights reserved. 3 * Copyright 2007 Nuova Systems, Inc. All rights reserved.
4 * 4 *
5 * This program is free software; you may redistribute it and/or modify 5 * This program is free software; you may redistribute it and/or modify
@@ -33,7 +33,7 @@
33#define DRV_NAME "enic" 33#define DRV_NAME "enic"
34#define DRV_DESCRIPTION "Cisco VIC Ethernet NIC Driver" 34#define DRV_DESCRIPTION "Cisco VIC Ethernet NIC Driver"
35#define DRV_VERSION "1.4.1.1" 35#define DRV_VERSION "1.4.1.1"
36#define DRV_COPYRIGHT "Copyright 2008-2009 Cisco Systems, Inc" 36#define DRV_COPYRIGHT "Copyright 2008-2010 Cisco Systems, Inc"
37 37
38#define ENIC_BARS_MAX 6 38#define ENIC_BARS_MAX 6
39 39
diff --git a/drivers/net/enic/enic_main.c b/drivers/net/enic/enic_main.c
index eda5530004dc..6c6795b90fa6 100644
--- a/drivers/net/enic/enic_main.c
+++ b/drivers/net/enic/enic_main.c
@@ -1,5 +1,5 @@
1/* 1/*
2 * Copyright 2008 Cisco Systems, Inc. All rights reserved. 2 * Copyright 2008-2010 Cisco Systems, Inc. All rights reserved.
3 * Copyright 2007 Nuova Systems, Inc. All rights reserved. 3 * Copyright 2007 Nuova Systems, Inc. All rights reserved.
4 * 4 *
5 * This program is free software; you may redistribute it and/or modify 5 * This program is free software; you may redistribute it and/or modify
@@ -29,12 +29,12 @@
29#include <linux/etherdevice.h> 29#include <linux/etherdevice.h>
30#include <linux/if_ether.h> 30#include <linux/if_ether.h>
31#include <linux/if_vlan.h> 31#include <linux/if_vlan.h>
32#include <linux/if_link.h>
33#include <linux/ethtool.h> 32#include <linux/ethtool.h>
34#include <linux/in.h> 33#include <linux/in.h>
35#include <linux/ip.h> 34#include <linux/ip.h>
36#include <linux/ipv6.h> 35#include <linux/ipv6.h>
37#include <linux/tcp.h> 36#include <linux/tcp.h>
37#include <linux/rtnetlink.h>
38#include <net/ip6_checksum.h> 38#include <net/ip6_checksum.h>
39 39
40#include "cq_enet_desc.h" 40#include "cq_enet_desc.h"
@@ -1799,8 +1799,10 @@ static int enic_stop(struct net_device *netdev)
1799 unsigned int i; 1799 unsigned int i;
1800 int err; 1800 int err;
1801 1801
1802 for (i = 0; i < enic->intr_count; i++) 1802 for (i = 0; i < enic->intr_count; i++) {
1803 vnic_intr_mask(&enic->intr[i]); 1803 vnic_intr_mask(&enic->intr[i]);
1804 (void)vnic_intr_masked(&enic->intr[i]); /* flush write */
1805 }
1804 1806
1805 enic_synchronize_irqs(enic); 1807 enic_synchronize_irqs(enic);
1806 1808
@@ -1810,7 +1812,6 @@ static int enic_stop(struct net_device *netdev)
1810 napi_disable(&enic->napi); 1812 napi_disable(&enic->napi);
1811 netif_carrier_off(netdev); 1813 netif_carrier_off(netdev);
1812 netif_tx_disable(netdev); 1814 netif_tx_disable(netdev);
1813
1814 enic_dev_del_station_addr(enic); 1815 enic_dev_del_station_addr(enic);
1815 1816
1816 for (i = 0; i < enic->wq_count; i++) { 1817 for (i = 0; i < enic->wq_count; i++) {
@@ -2299,7 +2300,7 @@ static int __devinit enic_probe(struct pci_dev *pdev,
2299 /* Setup PCI resources 2300 /* Setup PCI resources
2300 */ 2301 */
2301 2302
2302 err = pci_enable_device(pdev); 2303 err = pci_enable_device_mem(pdev);
2303 if (err) { 2304 if (err) {
2304 dev_err(dev, "Cannot enable PCI device, aborting\n"); 2305 dev_err(dev, "Cannot enable PCI device, aborting\n");
2305 goto err_out_free_netdev; 2306 goto err_out_free_netdev;
diff --git a/drivers/net/enic/enic_res.c b/drivers/net/enic/enic_res.c
index 2cc7e278caae..29ede8a17a2c 100644
--- a/drivers/net/enic/enic_res.c
+++ b/drivers/net/enic/enic_res.c
@@ -1,5 +1,5 @@
1/* 1/*
2 * Copyright 2008 Cisco Systems, Inc. All rights reserved. 2 * Copyright 2008-2010 Cisco Systems, Inc. All rights reserved.
3 * Copyright 2007 Nuova Systems, Inc. All rights reserved. 3 * Copyright 2007 Nuova Systems, Inc. All rights reserved.
4 * 4 *
5 * This program is free software; you may redistribute it and/or modify 5 * This program is free software; you may redistribute it and/or modify
diff --git a/drivers/net/enic/enic_res.h b/drivers/net/enic/enic_res.h
index 8b25a07a67d1..83bd172c356c 100644
--- a/drivers/net/enic/enic_res.h
+++ b/drivers/net/enic/enic_res.h
@@ -1,5 +1,5 @@
1/* 1/*
2 * Copyright 2008 Cisco Systems, Inc. All rights reserved. 2 * Copyright 2008-2010 Cisco Systems, Inc. All rights reserved.
3 * Copyright 2007 Nuova Systems, Inc. All rights reserved. 3 * Copyright 2007 Nuova Systems, Inc. All rights reserved.
4 * 4 *
5 * This program is free software; you may redistribute it and/or modify 5 * This program is free software; you may redistribute it and/or modify
diff --git a/drivers/net/enic/rq_enet_desc.h b/drivers/net/enic/rq_enet_desc.h
index a06e649010ce..e6dd30988d6f 100644
--- a/drivers/net/enic/rq_enet_desc.h
+++ b/drivers/net/enic/rq_enet_desc.h
@@ -1,5 +1,5 @@
1/* 1/*
2 * Copyright 2008 Cisco Systems, Inc. All rights reserved. 2 * Copyright 2008-2010 Cisco Systems, Inc. All rights reserved.
3 * Copyright 2007 Nuova Systems, Inc. All rights reserved. 3 * Copyright 2007 Nuova Systems, Inc. All rights reserved.
4 * 4 *
5 * This program is free software; you may redistribute it and/or modify 5 * This program is free software; you may redistribute it and/or modify
diff --git a/drivers/net/enic/vnic_cq.c b/drivers/net/enic/vnic_cq.c
index 326ea40297f2..b86d6ef8dad3 100644
--- a/drivers/net/enic/vnic_cq.c
+++ b/drivers/net/enic/vnic_cq.c
@@ -1,5 +1,5 @@
1/* 1/*
2 * Copyright 2008 Cisco Systems, Inc. All rights reserved. 2 * Copyright 2008-2010 Cisco Systems, Inc. All rights reserved.
3 * Copyright 2007 Nuova Systems, Inc. All rights reserved. 3 * Copyright 2007 Nuova Systems, Inc. All rights reserved.
4 * 4 *
5 * This program is free software; you may redistribute it and/or modify 5 * This program is free software; you may redistribute it and/or modify
diff --git a/drivers/net/enic/vnic_cq.h b/drivers/net/enic/vnic_cq.h
index 114763cbc2f8..552d3daf2508 100644
--- a/drivers/net/enic/vnic_cq.h
+++ b/drivers/net/enic/vnic_cq.h
@@ -1,5 +1,5 @@
1/* 1/*
2 * Copyright 2008 Cisco Systems, Inc. All rights reserved. 2 * Copyright 2008-2010 Cisco Systems, Inc. All rights reserved.
3 * Copyright 2007 Nuova Systems, Inc. All rights reserved. 3 * Copyright 2007 Nuova Systems, Inc. All rights reserved.
4 * 4 *
5 * This program is free software; you may redistribute it and/or modify 5 * This program is free software; you may redistribute it and/or modify
diff --git a/drivers/net/enic/vnic_dev.c b/drivers/net/enic/vnic_dev.c
index 662123c9581e..6a5b578a69e1 100644
--- a/drivers/net/enic/vnic_dev.c
+++ b/drivers/net/enic/vnic_dev.c
@@ -1,5 +1,5 @@
1/* 1/*
2 * Copyright 2008 Cisco Systems, Inc. All rights reserved. 2 * Copyright 2008-2010 Cisco Systems, Inc. All rights reserved.
3 * Copyright 2007 Nuova Systems, Inc. All rights reserved. 3 * Copyright 2007 Nuova Systems, Inc. All rights reserved.
4 * 4 *
5 * This program is free software; you may redistribute it and/or modify 5 * This program is free software; you may redistribute it and/or modify
@@ -23,7 +23,6 @@
23#include <linux/pci.h> 23#include <linux/pci.h>
24#include <linux/delay.h> 24#include <linux/delay.h>
25#include <linux/if_ether.h> 25#include <linux/if_ether.h>
26#include <linux/slab.h>
27 26
28#include "vnic_resource.h" 27#include "vnic_resource.h"
29#include "vnic_devcmd.h" 28#include "vnic_devcmd.h"
@@ -41,8 +40,6 @@ struct vnic_res {
41 unsigned int count; 40 unsigned int count;
42}; 41};
43 42
44#define VNIC_DEV_CAP_INIT 0x0001
45
46struct vnic_dev { 43struct vnic_dev {
47 void *priv; 44 void *priv;
48 struct pci_dev *pdev; 45 struct pci_dev *pdev;
@@ -53,13 +50,11 @@ struct vnic_dev {
53 struct vnic_devcmd_notify notify_copy; 50 struct vnic_devcmd_notify notify_copy;
54 dma_addr_t notify_pa; 51 dma_addr_t notify_pa;
55 u32 notify_sz; 52 u32 notify_sz;
56 u32 *linkstatus;
57 dma_addr_t linkstatus_pa; 53 dma_addr_t linkstatus_pa;
58 struct vnic_stats *stats; 54 struct vnic_stats *stats;
59 dma_addr_t stats_pa; 55 dma_addr_t stats_pa;
60 struct vnic_devcmd_fw_info *fw_info; 56 struct vnic_devcmd_fw_info *fw_info;
61 dma_addr_t fw_info_pa; 57 dma_addr_t fw_info_pa;
62 u32 cap_flags;
63 enum vnic_proxy_type proxy; 58 enum vnic_proxy_type proxy;
64 u32 proxy_index; 59 u32 proxy_index;
65 u64 args[VNIC_DEVCMD_NARGS]; 60 u64 args[VNIC_DEVCMD_NARGS];
@@ -279,7 +274,6 @@ static int _vnic_dev_cmd(struct vnic_dev *vdev, enum vnic_devcmd_cmd cmd,
279 /* PCI-e target device is gone */ 274 /* PCI-e target device is gone */
280 return -ENODEV; 275 return -ENODEV;
281 } 276 }
282
283 if (status & STAT_BUSY) { 277 if (status & STAT_BUSY) {
284 pr_err("Busy devcmd %d\n", _CMD_N(cmd)); 278 pr_err("Busy devcmd %d\n", _CMD_N(cmd));
285 return -EBUSY; 279 return -EBUSY;
@@ -852,7 +846,7 @@ int vnic_dev_init(struct vnic_dev *vdev, int arg)
852 int wait = 1000; 846 int wait = 1000;
853 int r = 0; 847 int r = 0;
854 848
855 if (vdev->cap_flags & VNIC_DEV_CAP_INIT) 849 if (vnic_dev_capable(vdev, CMD_INIT))
856 r = vnic_dev_cmd(vdev, CMD_INIT, &a0, &a1, wait); 850 r = vnic_dev_cmd(vdev, CMD_INIT, &a0, &a1, wait);
857 else { 851 else {
858 vnic_dev_cmd(vdev, CMD_INIT_v1, &a0, &a1, wait); 852 vnic_dev_cmd(vdev, CMD_INIT_v1, &a0, &a1, wait);
@@ -919,9 +913,6 @@ int vnic_dev_deinit(struct vnic_dev *vdev)
919 913
920int vnic_dev_link_status(struct vnic_dev *vdev) 914int vnic_dev_link_status(struct vnic_dev *vdev)
921{ 915{
922 if (vdev->linkstatus)
923 return *vdev->linkstatus;
924
925 if (!vnic_dev_notify_ready(vdev)) 916 if (!vnic_dev_notify_ready(vdev))
926 return 0; 917 return 0;
927 918
@@ -996,14 +987,9 @@ void vnic_dev_unregister(struct vnic_dev *vdev)
996 sizeof(struct vnic_devcmd_notify), 987 sizeof(struct vnic_devcmd_notify),
997 vdev->notify, 988 vdev->notify,
998 vdev->notify_pa); 989 vdev->notify_pa);
999 if (vdev->linkstatus)
1000 pci_free_consistent(vdev->pdev,
1001 sizeof(u32),
1002 vdev->linkstatus,
1003 vdev->linkstatus_pa);
1004 if (vdev->stats) 990 if (vdev->stats)
1005 pci_free_consistent(vdev->pdev, 991 pci_free_consistent(vdev->pdev,
1006 sizeof(struct vnic_dev), 992 sizeof(struct vnic_stats),
1007 vdev->stats, vdev->stats_pa); 993 vdev->stats, vdev->stats_pa);
1008 if (vdev->fw_info) 994 if (vdev->fw_info)
1009 pci_free_consistent(vdev->pdev, 995 pci_free_consistent(vdev->pdev,
@@ -1033,11 +1019,6 @@ struct vnic_dev *vnic_dev_register(struct vnic_dev *vdev,
1033 if (!vdev->devcmd) 1019 if (!vdev->devcmd)
1034 goto err_out; 1020 goto err_out;
1035 1021
1036 vdev->cap_flags = 0;
1037
1038 if (vnic_dev_capable(vdev, CMD_INIT))
1039 vdev->cap_flags |= VNIC_DEV_CAP_INIT;
1040
1041 return vdev; 1022 return vdev;
1042 1023
1043err_out: 1024err_out:
diff --git a/drivers/net/enic/vnic_dev.h b/drivers/net/enic/vnic_dev.h
index cfdaa69bf5a5..3a61873138b6 100644
--- a/drivers/net/enic/vnic_dev.h
+++ b/drivers/net/enic/vnic_dev.h
@@ -1,5 +1,5 @@
1/* 1/*
2 * Copyright 2008 Cisco Systems, Inc. All rights reserved. 2 * Copyright 2008-2010 Cisco Systems, Inc. All rights reserved.
3 * Copyright 2007 Nuova Systems, Inc. All rights reserved. 3 * Copyright 2007 Nuova Systems, Inc. All rights reserved.
4 * 4 *
5 * This program is free software; you may redistribute it and/or modify 5 * This program is free software; you may redistribute it and/or modify
diff --git a/drivers/net/enic/vnic_devcmd.h b/drivers/net/enic/vnic_devcmd.h
index e6c80c77dbd8..20661755df6b 100644
--- a/drivers/net/enic/vnic_devcmd.h
+++ b/drivers/net/enic/vnic_devcmd.h
@@ -1,5 +1,5 @@
1/* 1/*
2 * Copyright 2008 Cisco Systems, Inc. All rights reserved. 2 * Copyright 2008-2010 Cisco Systems, Inc. All rights reserved.
3 * Copyright 2007 Nuova Systems, Inc. All rights reserved. 3 * Copyright 2007 Nuova Systems, Inc. All rights reserved.
4 * 4 *
5 * This program is free software; you may redistribute it and/or modify 5 * This program is free software; you may redistribute it and/or modify
diff --git a/drivers/net/enic/vnic_enet.h b/drivers/net/enic/vnic_enet.h
index 42baaa13ce59..3b3291248956 100644
--- a/drivers/net/enic/vnic_enet.h
+++ b/drivers/net/enic/vnic_enet.h
@@ -1,5 +1,5 @@
1/* 1/*
2 * Copyright 2008 Cisco Systems, Inc. All rights reserved. 2 * Copyright 2008-2010 Cisco Systems, Inc. All rights reserved.
3 * Copyright 2007 Nuova Systems, Inc. All rights reserved. 3 * Copyright 2007 Nuova Systems, Inc. All rights reserved.
4 * 4 *
5 * This program is free software; you may redistribute it and/or modify 5 * This program is free software; you may redistribute it and/or modify
diff --git a/drivers/net/enic/vnic_intr.c b/drivers/net/enic/vnic_intr.c
index 416eae73fa0a..52ab61af2750 100644
--- a/drivers/net/enic/vnic_intr.c
+++ b/drivers/net/enic/vnic_intr.c
@@ -1,5 +1,5 @@
1/* 1/*
2 * Copyright 2008 Cisco Systems, Inc. All rights reserved. 2 * Copyright 2008-2010 Cisco Systems, Inc. All rights reserved.
3 * Copyright 2007 Nuova Systems, Inc. All rights reserved. 3 * Copyright 2007 Nuova Systems, Inc. All rights reserved.
4 * 4 *
5 * This program is free software; you may redistribute it and/or modify 5 * This program is free software; you may redistribute it and/or modify
diff --git a/drivers/net/enic/vnic_intr.h b/drivers/net/enic/vnic_intr.h
index 2fe6c6339e3c..09dc0b73ff46 100644
--- a/drivers/net/enic/vnic_intr.h
+++ b/drivers/net/enic/vnic_intr.h
@@ -1,5 +1,5 @@
1/* 1/*
2 * Copyright 2008 Cisco Systems, Inc. All rights reserved. 2 * Copyright 2008-2010 Cisco Systems, Inc. All rights reserved.
3 * Copyright 2007 Nuova Systems, Inc. All rights reserved. 3 * Copyright 2007 Nuova Systems, Inc. All rights reserved.
4 * 4 *
5 * This program is free software; you may redistribute it and/or modify 5 * This program is free software; you may redistribute it and/or modify
@@ -61,7 +61,11 @@ static inline void vnic_intr_unmask(struct vnic_intr *intr)
61static inline void vnic_intr_mask(struct vnic_intr *intr) 61static inline void vnic_intr_mask(struct vnic_intr *intr)
62{ 62{
63 iowrite32(1, &intr->ctrl->mask); 63 iowrite32(1, &intr->ctrl->mask);
64 (void)ioread32(&intr->ctrl->mask); 64}
65
66static inline int vnic_intr_masked(struct vnic_intr *intr)
67{
68 return ioread32(&intr->ctrl->mask);
65} 69}
66 70
67static inline void vnic_intr_return_credits(struct vnic_intr *intr, 71static inline void vnic_intr_return_credits(struct vnic_intr *intr,
diff --git a/drivers/net/enic/vnic_nic.h b/drivers/net/enic/vnic_nic.h
index cf80ab46d582..995a50dd4c99 100644
--- a/drivers/net/enic/vnic_nic.h
+++ b/drivers/net/enic/vnic_nic.h
@@ -1,5 +1,5 @@
1/* 1/*
2 * Copyright 2008 Cisco Systems, Inc. All rights reserved. 2 * Copyright 2008-2010 Cisco Systems, Inc. All rights reserved.
3 * Copyright 2007 Nuova Systems, Inc. All rights reserved. 3 * Copyright 2007 Nuova Systems, Inc. All rights reserved.
4 * 4 *
5 * This program is free software; you may redistribute it and/or modify 5 * This program is free software; you may redistribute it and/or modify
diff --git a/drivers/net/enic/vnic_resource.h b/drivers/net/enic/vnic_resource.h
index b61c22aec41a..810287beff14 100644
--- a/drivers/net/enic/vnic_resource.h
+++ b/drivers/net/enic/vnic_resource.h
@@ -1,5 +1,5 @@
1/* 1/*
2 * Copyright 2008 Cisco Systems, Inc. All rights reserved. 2 * Copyright 2008-2010 Cisco Systems, Inc. All rights reserved.
3 * Copyright 2007 Nuova Systems, Inc. All rights reserved. 3 * Copyright 2007 Nuova Systems, Inc. All rights reserved.
4 * 4 *
5 * This program is free software; you may redistribute it and/or modify 5 * This program is free software; you may redistribute it and/or modify
diff --git a/drivers/net/enic/vnic_rq.c b/drivers/net/enic/vnic_rq.c
index 061a26fbbbfb..dbb2aca258b9 100644
--- a/drivers/net/enic/vnic_rq.c
+++ b/drivers/net/enic/vnic_rq.c
@@ -1,5 +1,5 @@
1/* 1/*
2 * Copyright 2008 Cisco Systems, Inc. All rights reserved. 2 * Copyright 2008-2010 Cisco Systems, Inc. All rights reserved.
3 * Copyright 2007 Nuova Systems, Inc. All rights reserved. 3 * Copyright 2007 Nuova Systems, Inc. All rights reserved.
4 * 4 *
5 * This program is free software; you may redistribute it and/or modify 5 * This program is free software; you may redistribute it and/or modify
@@ -209,7 +209,6 @@ void vnic_rq_clean(struct vnic_rq *rq,
209 /* Hardware surprise removal: reset fetch_index */ 209 /* Hardware surprise removal: reset fetch_index */
210 fetch_index = 0; 210 fetch_index = 0;
211 } 211 }
212
213 rq->to_use = rq->to_clean = 212 rq->to_use = rq->to_clean =
214 &rq->bufs[fetch_index / VNIC_RQ_BUF_BLK_ENTRIES(count)] 213 &rq->bufs[fetch_index / VNIC_RQ_BUF_BLK_ENTRIES(count)]
215 [fetch_index % VNIC_RQ_BUF_BLK_ENTRIES(count)]; 214 [fetch_index % VNIC_RQ_BUF_BLK_ENTRIES(count)];
diff --git a/drivers/net/enic/vnic_rq.h b/drivers/net/enic/vnic_rq.h
index 8f0fb78f0cdf..2dc48f91abf7 100644
--- a/drivers/net/enic/vnic_rq.h
+++ b/drivers/net/enic/vnic_rq.h
@@ -1,5 +1,5 @@
1/* 1/*
2 * Copyright 2008, 2009 Cisco Systems, Inc. All rights reserved. 2 * Copyright 2008-2010 Cisco Systems, Inc. All rights reserved.
3 * Copyright 2007 Nuova Systems, Inc. All rights reserved. 3 * Copyright 2007 Nuova Systems, Inc. All rights reserved.
4 * 4 *
5 * This program is free software; you may redistribute it and/or modify 5 * This program is free software; you may redistribute it and/or modify
diff --git a/drivers/net/enic/vnic_rss.h b/drivers/net/enic/vnic_rss.h
index 5fbb3c923bcd..f62d18719629 100644
--- a/drivers/net/enic/vnic_rss.h
+++ b/drivers/net/enic/vnic_rss.h
@@ -1,5 +1,5 @@
1/* 1/*
2 * Copyright 2008 Cisco Systems, Inc. All rights reserved. 2 * Copyright 2008-2010 Cisco Systems, Inc. All rights reserved.
3 * Copyright 2007 Nuova Systems, Inc. All rights reserved. 3 * Copyright 2007 Nuova Systems, Inc. All rights reserved.
4 * 4 *
5 * This program is free software; you may redistribute it and/or modify 5 * This program is free software; you may redistribute it and/or modify
diff --git a/drivers/net/enic/vnic_stats.h b/drivers/net/enic/vnic_stats.h
index 9ff9614d89b1..77750ec93954 100644
--- a/drivers/net/enic/vnic_stats.h
+++ b/drivers/net/enic/vnic_stats.h
@@ -1,5 +1,5 @@
1/* 1/*
2 * Copyright 2008 Cisco Systems, Inc. All rights reserved. 2 * Copyright 2008-2010 Cisco Systems, Inc. All rights reserved.
3 * Copyright 2007 Nuova Systems, Inc. All rights reserved. 3 * Copyright 2007 Nuova Systems, Inc. All rights reserved.
4 * 4 *
5 * This program is free software; you may redistribute it and/or modify 5 * This program is free software; you may redistribute it and/or modify
diff --git a/drivers/net/enic/vnic_vic.c b/drivers/net/enic/vnic_vic.c
index 0a35085004d0..197c9d24af82 100644
--- a/drivers/net/enic/vnic_vic.c
+++ b/drivers/net/enic/vnic_vic.c
@@ -27,6 +27,9 @@ struct vic_provinfo *vic_provinfo_alloc(gfp_t flags, u8 *oui, u8 type)
27{ 27{
28 struct vic_provinfo *vp; 28 struct vic_provinfo *vp;
29 29
30 if (!oui)
31 return NULL;
32
30 vp = kzalloc(VIC_PROVINFO_MAX_DATA, flags); 33 vp = kzalloc(VIC_PROVINFO_MAX_DATA, flags);
31 if (!vp) 34 if (!vp)
32 return NULL; 35 return NULL;
diff --git a/drivers/net/enic/vnic_wq.c b/drivers/net/enic/vnic_wq.c
index 3ab7fa5501cd..122e33bcc578 100644
--- a/drivers/net/enic/vnic_wq.c
+++ b/drivers/net/enic/vnic_wq.c
@@ -1,5 +1,5 @@
1/* 1/*
2 * Copyright 2008 Cisco Systems, Inc. All rights reserved. 2 * Copyright 2008-2010 Cisco Systems, Inc. All rights reserved.
3 * Copyright 2007 Nuova Systems, Inc. All rights reserved. 3 * Copyright 2007 Nuova Systems, Inc. All rights reserved.
4 * 4 *
5 * This program is free software; you may redistribute it and/or modify 5 * This program is free software; you may redistribute it and/or modify
diff --git a/drivers/net/enic/vnic_wq.h b/drivers/net/enic/vnic_wq.h
index 1c8213959fc4..94ac4621acc5 100644
--- a/drivers/net/enic/vnic_wq.h
+++ b/drivers/net/enic/vnic_wq.h
@@ -1,5 +1,5 @@
1/* 1/*
2 * Copyright 2008 Cisco Systems, Inc. All rights reserved. 2 * Copyright 2008-2010 Cisco Systems, Inc. All rights reserved.
3 * Copyright 2007 Nuova Systems, Inc. All rights reserved. 3 * Copyright 2007 Nuova Systems, Inc. All rights reserved.
4 * 4 *
5 * This program is free software; you may redistribute it and/or modify 5 * This program is free software; you may redistribute it and/or modify
diff --git a/drivers/net/enic/wq_enet_desc.h b/drivers/net/enic/wq_enet_desc.h
index 483596c2d8bf..c7021e3a631f 100644
--- a/drivers/net/enic/wq_enet_desc.h
+++ b/drivers/net/enic/wq_enet_desc.h
@@ -1,5 +1,5 @@
1/* 1/*
2 * Copyright 2008 Cisco Systems, Inc. All rights reserved. 2 * Copyright 2008-2010 Cisco Systems, Inc. All rights reserved.
3 * Copyright 2007 Nuova Systems, Inc. All rights reserved. 3 * Copyright 2007 Nuova Systems, Inc. All rights reserved.
4 * 4 *
5 * This program is free software; you may redistribute it and/or modify 5 * This program is free software; you may redistribute it and/or modify