aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/enic/vnic_rss.h
diff options
context:
space:
mode:
authorVasanthy Kolluri <vkolluri@cisco.com>2010-10-20 06:16:59 -0400
committerDavid S. Miller <davem@davemloft.net>2010-10-21 04:26:47 -0400
commit717258ba4b3ecca9c7c0ef2b76d7aa5800242bad (patch)
treed82deb82352401aa9b3877c2b99fec348e3b583d /drivers/net/enic/vnic_rss.h
parente0e8ab596012d8c2147beb3c8b70d2d6ab90acda (diff)
enic: Add support for multiple hardware receive queues
Add support for multiple hardware receive queues. The ingress traffic is hashed into one of the receive queues based on IP or TCP or both headers. The max no. of receive queues supported is 8. 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/vnic_rss.h')
-rw-r--r--drivers/net/enic/vnic_rss.h40
1 files changed, 40 insertions, 0 deletions
diff --git a/drivers/net/enic/vnic_rss.h b/drivers/net/enic/vnic_rss.h
new file mode 100644
index 000000000000..fa421baf45b8
--- /dev/null
+++ b/drivers/net/enic/vnic_rss.h
@@ -0,0 +1,40 @@
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 */
23union 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 */
32union vnic_rss_cpu {
33 struct {
34 u8 b[4] ;
35 u8 b_pad[4];
36 } cpu[32];
37 u64 raw[32];
38};
39
40#endif /* _VNIC_RSS_H_ */