diff options
author | Vasanthy Kolluri <vkolluri@cisco.com> | 2010-09-30 09:35:34 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2010-10-01 03:36:52 -0400 |
commit | bf746e62afc83be1baccc0cc9e128a9805ecd5fd (patch) | |
tree | a092aaecb4b0d95012a9300296c5664384c00ddb /drivers/net/enic | |
parent | 367e5e376922dcf52f92e1db436010fb828d3bfa (diff) |
enic: Remove dead code
Removed code that is unused
Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
Signed-off-by: Vasanthy Kolluri <vkolluri@cisco.com>
Signed-off-by: Roopa Prabhu <roprabhu@cisco.com>
Signed-off-by: David Wang <dwang2@cisco.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/enic')
-rw-r--r-- | drivers/net/enic/enic.h | 3 | ||||
-rw-r--r-- | drivers/net/enic/enic_res.c | 17 | ||||
-rw-r--r-- | drivers/net/enic/enic_res.h | 2 | ||||
-rw-r--r-- | drivers/net/enic/vnic_dev.c | 104 | ||||
-rw-r--r-- | drivers/net/enic/vnic_dev.h | 12 | ||||
-rw-r--r-- | drivers/net/enic/vnic_intr.c | 5 | ||||
-rw-r--r-- | drivers/net/enic/vnic_rss.h | 45 |
7 files changed, 1 insertions, 187 deletions
diff --git a/drivers/net/enic/enic.h b/drivers/net/enic/enic.h index 75869ed7226f..ae623206f180 100644 --- a/drivers/net/enic/enic.h +++ b/drivers/net/enic/enic.h | |||
@@ -28,11 +28,10 @@ | |||
28 | #include "vnic_intr.h" | 28 | #include "vnic_intr.h" |
29 | #include "vnic_stats.h" | 29 | #include "vnic_stats.h" |
30 | #include "vnic_nic.h" | 30 | #include "vnic_nic.h" |
31 | #include "vnic_rss.h" | ||
32 | 31 | ||
33 | #define DRV_NAME "enic" | 32 | #define DRV_NAME "enic" |
34 | #define DRV_DESCRIPTION "Cisco VIC Ethernet NIC Driver" | 33 | #define DRV_DESCRIPTION "Cisco VIC Ethernet NIC Driver" |
35 | #define DRV_VERSION "1.4.1.2" | 34 | #define DRV_VERSION "1.4.1.2a" |
36 | #define DRV_COPYRIGHT "Copyright 2008-2010 Cisco Systems, Inc" | 35 | #define DRV_COPYRIGHT "Copyright 2008-2010 Cisco Systems, Inc" |
37 | 36 | ||
38 | #define ENIC_BARS_MAX 6 | 37 | #define ENIC_BARS_MAX 6 |
diff --git a/drivers/net/enic/enic_res.c b/drivers/net/enic/enic_res.c index 29ede8a17a2c..19a276cf7681 100644 --- a/drivers/net/enic/enic_res.c +++ b/drivers/net/enic/enic_res.c | |||
@@ -35,7 +35,6 @@ | |||
35 | #include "vnic_intr.h" | 35 | #include "vnic_intr.h" |
36 | #include "vnic_stats.h" | 36 | #include "vnic_stats.h" |
37 | #include "vnic_nic.h" | 37 | #include "vnic_nic.h" |
38 | #include "vnic_rss.h" | ||
39 | #include "enic_res.h" | 38 | #include "enic_res.h" |
40 | #include "enic.h" | 39 | #include "enic.h" |
41 | 40 | ||
@@ -149,22 +148,6 @@ int enic_set_nic_cfg(struct enic *enic, u8 rss_default_cpu, u8 rss_hash_type, | |||
149 | return vnic_dev_cmd(enic->vdev, CMD_NIC_CFG, &a0, &a1, wait); | 148 | return vnic_dev_cmd(enic->vdev, CMD_NIC_CFG, &a0, &a1, wait); |
150 | } | 149 | } |
151 | 150 | ||
152 | int enic_set_rss_key(struct enic *enic, dma_addr_t key_pa, u64 len) | ||
153 | { | ||
154 | u64 a0 = (u64)key_pa, a1 = len; | ||
155 | int wait = 1000; | ||
156 | |||
157 | return vnic_dev_cmd(enic->vdev, CMD_RSS_KEY, &a0, &a1, wait); | ||
158 | } | ||
159 | |||
160 | int enic_set_rss_cpu(struct enic *enic, dma_addr_t cpu_pa, u64 len) | ||
161 | { | ||
162 | u64 a0 = (u64)cpu_pa, a1 = len; | ||
163 | int wait = 1000; | ||
164 | |||
165 | return vnic_dev_cmd(enic->vdev, CMD_RSS_CPU, &a0, &a1, wait); | ||
166 | } | ||
167 | |||
168 | void enic_free_vnic_resources(struct enic *enic) | 151 | void enic_free_vnic_resources(struct enic *enic) |
169 | { | 152 | { |
170 | unsigned int i; | 153 | unsigned int i; |
diff --git a/drivers/net/enic/enic_res.h b/drivers/net/enic/enic_res.h index 83bd172c356c..3c59f541cb5d 100644 --- a/drivers/net/enic/enic_res.h +++ b/drivers/net/enic/enic_res.h | |||
@@ -137,8 +137,6 @@ int enic_del_vlan(struct enic *enic, u16 vlanid); | |||
137 | int enic_set_nic_cfg(struct enic *enic, u8 rss_default_cpu, u8 rss_hash_type, | 137 | int enic_set_nic_cfg(struct enic *enic, u8 rss_default_cpu, u8 rss_hash_type, |
138 | u8 rss_hash_bits, u8 rss_base_cpu, u8 rss_enable, u8 tso_ipid_split_en, | 138 | u8 rss_hash_bits, u8 rss_base_cpu, u8 rss_enable, u8 tso_ipid_split_en, |
139 | u8 ig_vlan_strip_en); | 139 | u8 ig_vlan_strip_en); |
140 | int enic_set_rss_key(struct enic *enic, dma_addr_t key_pa, u64 len); | ||
141 | int enic_set_rss_cpu(struct enic *enic, dma_addr_t cpu_pa, u64 len); | ||
142 | void enic_get_res_counts(struct enic *enic); | 140 | void enic_get_res_counts(struct enic *enic); |
143 | void enic_init_vnic_resources(struct enic *enic); | 141 | void enic_init_vnic_resources(struct enic *enic); |
144 | int enic_alloc_vnic_resources(struct enic *); | 142 | int enic_alloc_vnic_resources(struct enic *); |
diff --git a/drivers/net/enic/vnic_dev.c b/drivers/net/enic/vnic_dev.c index 08d5d42da260..f99ddeed1c4f 100644 --- a/drivers/net/enic/vnic_dev.c +++ b/drivers/net/enic/vnic_dev.c | |||
@@ -186,21 +186,6 @@ void __iomem *vnic_dev_get_res(struct vnic_dev *vdev, enum vnic_res_type type, | |||
186 | } | 186 | } |
187 | } | 187 | } |
188 | 188 | ||
189 | dma_addr_t vnic_dev_get_res_bus_addr(struct vnic_dev *vdev, | ||
190 | enum vnic_res_type type, unsigned int index) | ||
191 | { | ||
192 | switch (type) { | ||
193 | case RES_TYPE_WQ: | ||
194 | case RES_TYPE_RQ: | ||
195 | case RES_TYPE_CQ: | ||
196 | case RES_TYPE_INTR_CTRL: | ||
197 | return vdev->res[type].bus_addr + | ||
198 | index * VNIC_RES_STRIDE; | ||
199 | default: | ||
200 | return vdev->res[type].bus_addr; | ||
201 | } | ||
202 | } | ||
203 | |||
204 | unsigned int vnic_dev_desc_ring_size(struct vnic_dev_ring *ring, | 189 | unsigned int vnic_dev_desc_ring_size(struct vnic_dev_ring *ring, |
205 | unsigned int desc_count, unsigned int desc_size) | 190 | unsigned int desc_count, unsigned int desc_size) |
206 | { | 191 | { |
@@ -384,18 +369,6 @@ static int vnic_dev_cmd_no_proxy(struct vnic_dev *vdev, | |||
384 | return err; | 369 | return err; |
385 | } | 370 | } |
386 | 371 | ||
387 | void vnic_dev_cmd_proxy_by_bdf_start(struct vnic_dev *vdev, u16 bdf) | ||
388 | { | ||
389 | vdev->proxy = PROXY_BY_BDF; | ||
390 | vdev->proxy_index = bdf; | ||
391 | } | ||
392 | |||
393 | void vnic_dev_cmd_proxy_end(struct vnic_dev *vdev) | ||
394 | { | ||
395 | vdev->proxy = PROXY_NONE; | ||
396 | vdev->proxy_index = 0; | ||
397 | } | ||
398 | |||
399 | int vnic_dev_cmd(struct vnic_dev *vdev, enum vnic_devcmd_cmd cmd, | 372 | int vnic_dev_cmd(struct vnic_dev *vdev, enum vnic_devcmd_cmd cmd, |
400 | u64 *a0, u64 *a1, int wait) | 373 | u64 *a0, u64 *a1, int wait) |
401 | { | 374 | { |
@@ -488,13 +461,6 @@ int vnic_dev_spec(struct vnic_dev *vdev, unsigned int offset, unsigned int size, | |||
488 | return err; | 461 | return err; |
489 | } | 462 | } |
490 | 463 | ||
491 | int vnic_dev_stats_clear(struct vnic_dev *vdev) | ||
492 | { | ||
493 | u64 a0 = 0, a1 = 0; | ||
494 | int wait = 1000; | ||
495 | return vnic_dev_cmd(vdev, CMD_STATS_CLEAR, &a0, &a1, wait); | ||
496 | } | ||
497 | |||
498 | int vnic_dev_stats_dump(struct vnic_dev *vdev, struct vnic_stats **stats) | 464 | int vnic_dev_stats_dump(struct vnic_dev *vdev, struct vnic_stats **stats) |
499 | { | 465 | { |
500 | u64 a0, a1; | 466 | u64 a0, a1; |
@@ -528,19 +494,6 @@ int vnic_dev_enable(struct vnic_dev *vdev) | |||
528 | return vnic_dev_cmd(vdev, CMD_ENABLE, &a0, &a1, wait); | 494 | return vnic_dev_cmd(vdev, CMD_ENABLE, &a0, &a1, wait); |
529 | } | 495 | } |
530 | 496 | ||
531 | int vnic_dev_enable_wait(struct vnic_dev *vdev) | ||
532 | { | ||
533 | u64 a0 = 0, a1 = 0; | ||
534 | int wait = 1000; | ||
535 | int err; | ||
536 | |||
537 | err = vnic_dev_cmd(vdev, CMD_ENABLE_WAIT, &a0, &a1, wait); | ||
538 | if (err == ERR_ECMDUNKNOWN) | ||
539 | return vnic_dev_cmd(vdev, CMD_ENABLE, &a0, &a1, wait); | ||
540 | |||
541 | return err; | ||
542 | } | ||
543 | |||
544 | int vnic_dev_disable(struct vnic_dev *vdev) | 497 | int vnic_dev_disable(struct vnic_dev *vdev) |
545 | { | 498 | { |
546 | u64 a0 = 0, a1 = 0; | 499 | u64 a0 = 0, a1 = 0; |
@@ -680,26 +633,6 @@ int vnic_dev_packet_filter(struct vnic_dev *vdev, int directed, int multicast, | |||
680 | return err; | 633 | return err; |
681 | } | 634 | } |
682 | 635 | ||
683 | int vnic_dev_packet_filter_all(struct vnic_dev *vdev, int directed, | ||
684 | int multicast, int broadcast, int promisc, int allmulti) | ||
685 | { | ||
686 | u64 a0, a1 = 0; | ||
687 | int wait = 1000; | ||
688 | int err; | ||
689 | |||
690 | a0 = (directed ? CMD_PFILTER_DIRECTED : 0) | | ||
691 | (multicast ? CMD_PFILTER_MULTICAST : 0) | | ||
692 | (broadcast ? CMD_PFILTER_BROADCAST : 0) | | ||
693 | (promisc ? CMD_PFILTER_PROMISCUOUS : 0) | | ||
694 | (allmulti ? CMD_PFILTER_ALL_MULTICAST : 0); | ||
695 | |||
696 | err = vnic_dev_cmd(vdev, CMD_PACKET_FILTER_ALL, &a0, &a1, wait); | ||
697 | if (err) | ||
698 | pr_err("Can't set packet filter\n"); | ||
699 | |||
700 | return err; | ||
701 | } | ||
702 | |||
703 | int vnic_dev_add_addr(struct vnic_dev *vdev, u8 *addr) | 636 | int vnic_dev_add_addr(struct vnic_dev *vdev, u8 *addr) |
704 | { | 637 | { |
705 | u64 a0 = 0, a1 = 0; | 638 | u64 a0 = 0, a1 = 0; |
@@ -748,19 +681,6 @@ int vnic_dev_set_ig_vlan_rewrite_mode(struct vnic_dev *vdev, | |||
748 | return err; | 681 | return err; |
749 | } | 682 | } |
750 | 683 | ||
751 | int vnic_dev_raise_intr(struct vnic_dev *vdev, u16 intr) | ||
752 | { | ||
753 | u64 a0 = intr, a1 = 0; | ||
754 | int wait = 1000; | ||
755 | int err; | ||
756 | |||
757 | err = vnic_dev_cmd(vdev, CMD_IAR, &a0, &a1, wait); | ||
758 | if (err) | ||
759 | pr_err("Failed to raise INTR[%d], err %d\n", intr, err); | ||
760 | |||
761 | return err; | ||
762 | } | ||
763 | |||
764 | int vnic_dev_notify_setcmd(struct vnic_dev *vdev, | 684 | int vnic_dev_notify_setcmd(struct vnic_dev *vdev, |
765 | void *notify_addr, dma_addr_t notify_pa, u16 intr) | 685 | void *notify_addr, dma_addr_t notify_pa, u16 intr) |
766 | { | 686 | { |
@@ -954,30 +874,6 @@ u32 vnic_dev_mtu(struct vnic_dev *vdev) | |||
954 | return vdev->notify_copy.mtu; | 874 | return vdev->notify_copy.mtu; |
955 | } | 875 | } |
956 | 876 | ||
957 | u32 vnic_dev_link_down_cnt(struct vnic_dev *vdev) | ||
958 | { | ||
959 | if (!vnic_dev_notify_ready(vdev)) | ||
960 | return 0; | ||
961 | |||
962 | return vdev->notify_copy.link_down_cnt; | ||
963 | } | ||
964 | |||
965 | u32 vnic_dev_notify_status(struct vnic_dev *vdev) | ||
966 | { | ||
967 | if (!vnic_dev_notify_ready(vdev)) | ||
968 | return 0; | ||
969 | |||
970 | return vdev->notify_copy.status; | ||
971 | } | ||
972 | |||
973 | u32 vnic_dev_uif(struct vnic_dev *vdev) | ||
974 | { | ||
975 | if (!vnic_dev_notify_ready(vdev)) | ||
976 | return 0; | ||
977 | |||
978 | return vdev->notify_copy.uif; | ||
979 | } | ||
980 | |||
981 | void vnic_dev_set_intr_mode(struct vnic_dev *vdev, | 877 | void vnic_dev_set_intr_mode(struct vnic_dev *vdev, |
982 | enum vnic_dev_intr_mode intr_mode) | 878 | enum vnic_dev_intr_mode intr_mode) |
983 | { | 879 | { |
diff --git a/drivers/net/enic/vnic_dev.h b/drivers/net/enic/vnic_dev.h index 3a61873138b6..008304b966a4 100644 --- a/drivers/net/enic/vnic_dev.h +++ b/drivers/net/enic/vnic_dev.h | |||
@@ -84,8 +84,6 @@ unsigned int vnic_dev_get_res_count(struct vnic_dev *vdev, | |||
84 | enum vnic_res_type type); | 84 | enum vnic_res_type type); |
85 | void __iomem *vnic_dev_get_res(struct vnic_dev *vdev, enum vnic_res_type type, | 85 | void __iomem *vnic_dev_get_res(struct vnic_dev *vdev, enum vnic_res_type type, |
86 | unsigned int index); | 86 | unsigned int index); |
87 | dma_addr_t vnic_dev_get_res_bus_addr(struct vnic_dev *vdev, | ||
88 | enum vnic_res_type type, unsigned int index); | ||
89 | unsigned int vnic_dev_desc_ring_size(struct vnic_dev_ring *ring, | 87 | unsigned int vnic_dev_desc_ring_size(struct vnic_dev_ring *ring, |
90 | unsigned int desc_count, unsigned int desc_size); | 88 | unsigned int desc_count, unsigned int desc_size); |
91 | void vnic_dev_clear_desc_ring(struct vnic_dev_ring *ring); | 89 | void vnic_dev_clear_desc_ring(struct vnic_dev_ring *ring); |
@@ -95,25 +93,19 @@ void vnic_dev_free_desc_ring(struct vnic_dev *vdev, | |||
95 | struct vnic_dev_ring *ring); | 93 | struct vnic_dev_ring *ring); |
96 | int vnic_dev_cmd(struct vnic_dev *vdev, enum vnic_devcmd_cmd cmd, | 94 | int vnic_dev_cmd(struct vnic_dev *vdev, enum vnic_devcmd_cmd cmd, |
97 | u64 *a0, u64 *a1, int wait); | 95 | u64 *a0, u64 *a1, int wait); |
98 | void vnic_dev_cmd_proxy_by_bdf_start(struct vnic_dev *vdev, u16 bdf); | ||
99 | void vnic_dev_cmd_proxy_end(struct vnic_dev *vdev); | ||
100 | int vnic_dev_fw_info(struct vnic_dev *vdev, | 96 | int vnic_dev_fw_info(struct vnic_dev *vdev, |
101 | struct vnic_devcmd_fw_info **fw_info); | 97 | struct vnic_devcmd_fw_info **fw_info); |
102 | int vnic_dev_hw_version(struct vnic_dev *vdev, | 98 | int vnic_dev_hw_version(struct vnic_dev *vdev, |
103 | enum vnic_dev_hw_version *hw_ver); | 99 | enum vnic_dev_hw_version *hw_ver); |
104 | int vnic_dev_spec(struct vnic_dev *vdev, unsigned int offset, unsigned int size, | 100 | int vnic_dev_spec(struct vnic_dev *vdev, unsigned int offset, unsigned int size, |
105 | void *value); | 101 | void *value); |
106 | int vnic_dev_stats_clear(struct vnic_dev *vdev); | ||
107 | int vnic_dev_stats_dump(struct vnic_dev *vdev, struct vnic_stats **stats); | 102 | int vnic_dev_stats_dump(struct vnic_dev *vdev, struct vnic_stats **stats); |
108 | int vnic_dev_hang_notify(struct vnic_dev *vdev); | 103 | int vnic_dev_hang_notify(struct vnic_dev *vdev); |
109 | int vnic_dev_packet_filter(struct vnic_dev *vdev, int directed, int multicast, | 104 | int vnic_dev_packet_filter(struct vnic_dev *vdev, int directed, int multicast, |
110 | int broadcast, int promisc, int allmulti); | 105 | int broadcast, int promisc, int allmulti); |
111 | int vnic_dev_packet_filter_all(struct vnic_dev *vdev, int directed, | ||
112 | int multicast, int broadcast, int promisc, int allmulti); | ||
113 | int vnic_dev_add_addr(struct vnic_dev *vdev, u8 *addr); | 106 | int vnic_dev_add_addr(struct vnic_dev *vdev, u8 *addr); |
114 | int vnic_dev_del_addr(struct vnic_dev *vdev, u8 *addr); | 107 | int vnic_dev_del_addr(struct vnic_dev *vdev, u8 *addr); |
115 | int vnic_dev_mac_addr(struct vnic_dev *vdev, u8 *mac_addr); | 108 | int vnic_dev_mac_addr(struct vnic_dev *vdev, u8 *mac_addr); |
116 | int vnic_dev_raise_intr(struct vnic_dev *vdev, u16 intr); | ||
117 | int vnic_dev_notify_setcmd(struct vnic_dev *vdev, | 109 | int vnic_dev_notify_setcmd(struct vnic_dev *vdev, |
118 | void *notify_addr, dma_addr_t notify_pa, u16 intr); | 110 | void *notify_addr, dma_addr_t notify_pa, u16 intr); |
119 | int vnic_dev_notify_set(struct vnic_dev *vdev, u16 intr); | 111 | int vnic_dev_notify_set(struct vnic_dev *vdev, u16 intr); |
@@ -123,12 +115,8 @@ int vnic_dev_link_status(struct vnic_dev *vdev); | |||
123 | u32 vnic_dev_port_speed(struct vnic_dev *vdev); | 115 | u32 vnic_dev_port_speed(struct vnic_dev *vdev); |
124 | u32 vnic_dev_msg_lvl(struct vnic_dev *vdev); | 116 | u32 vnic_dev_msg_lvl(struct vnic_dev *vdev); |
125 | u32 vnic_dev_mtu(struct vnic_dev *vdev); | 117 | u32 vnic_dev_mtu(struct vnic_dev *vdev); |
126 | u32 vnic_dev_link_down_cnt(struct vnic_dev *vdev); | ||
127 | u32 vnic_dev_notify_status(struct vnic_dev *vdev); | ||
128 | u32 vnic_dev_uif(struct vnic_dev *vdev); | ||
129 | int vnic_dev_close(struct vnic_dev *vdev); | 118 | int vnic_dev_close(struct vnic_dev *vdev); |
130 | int vnic_dev_enable(struct vnic_dev *vdev); | 119 | int vnic_dev_enable(struct vnic_dev *vdev); |
131 | int vnic_dev_enable_wait(struct vnic_dev *vdev); | ||
132 | int vnic_dev_disable(struct vnic_dev *vdev); | 120 | int vnic_dev_disable(struct vnic_dev *vdev); |
133 | int vnic_dev_open(struct vnic_dev *vdev, int arg); | 121 | int vnic_dev_open(struct vnic_dev *vdev, int arg); |
134 | int vnic_dev_open_done(struct vnic_dev *vdev, int *done); | 122 | int vnic_dev_open_done(struct vnic_dev *vdev, int *done); |
diff --git a/drivers/net/enic/vnic_intr.c b/drivers/net/enic/vnic_intr.c index 52ab61af2750..3873771d75cc 100644 --- a/drivers/net/enic/vnic_intr.c +++ b/drivers/net/enic/vnic_intr.c | |||
@@ -65,8 +65,3 @@ void vnic_intr_clean(struct vnic_intr *intr) | |||
65 | { | 65 | { |
66 | iowrite32(0, &intr->ctrl->int_credits); | 66 | iowrite32(0, &intr->ctrl->int_credits); |
67 | } | 67 | } |
68 | |||
69 | void vnic_intr_raise(struct vnic_intr *intr) | ||
70 | { | ||
71 | vnic_dev_raise_intr(intr->vdev, (u16)intr->index); | ||
72 | } | ||
diff --git a/drivers/net/enic/vnic_rss.h b/drivers/net/enic/vnic_rss.h deleted file mode 100644 index f62d18719629..000000000000 --- a/drivers/net/enic/vnic_rss.h +++ /dev/null | |||
@@ -1,45 +0,0 @@ | |||
1 | /* | ||
2 | * Copyright 2008-2010 Cisco Systems, Inc. All rights reserved. | ||
3 | * Copyright 2007 Nuova Systems, Inc. All rights reserved. | ||
4 | * | ||
5 | * This program is free software; you may redistribute it and/or modify | ||
6 | * it under the terms of the GNU General Public License as published by | ||
7 | * the Free Software Foundation; version 2 of the License. | ||
8 | * | ||
9 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, | ||
10 | * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF | ||
11 | * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND | ||
12 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS | ||
13 | * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN | ||
14 | * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN | ||
15 | * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE | ||
16 | * SOFTWARE. | ||
17 | */ | ||
18 | |||
19 | #ifndef _VNIC_RSS_H_ | ||
20 | #define _VNIC_RSS_H_ | ||
21 | |||
22 | /* RSS key array */ | ||
23 | union vnic_rss_key { | ||
24 | struct { | ||
25 | u8 b[10]; | ||
26 | u8 b_pad[6]; | ||
27 | } key[4]; | ||
28 | u64 raw[8]; | ||
29 | }; | ||
30 | |||
31 | /* RSS cpu array */ | ||
32 | union vnic_rss_cpu { | ||
33 | struct { | ||
34 | u8 b[4] ; | ||
35 | u8 b_pad[4]; | ||
36 | } cpu[32]; | ||
37 | u64 raw[32]; | ||
38 | }; | ||
39 | |||
40 | void vnic_set_rss_key(union vnic_rss_key *rss_key, u8 *key); | ||
41 | void vnic_set_rss_cpu(union vnic_rss_cpu *rss_cpu, u8 *cpu); | ||
42 | void vnic_get_rss_key(union vnic_rss_key *rss_key, u8 *key); | ||
43 | void vnic_get_rss_cpu(union vnic_rss_cpu *rss_cpu, u8 *cpu); | ||
44 | |||
45 | #endif /* _VNIC_RSS_H_ */ | ||