1315333Serj/****************************************************************************** 2315333Serj 3315333Serj Copyright (c) 2001-2017, Intel Corporation 4315333Serj All rights reserved. 5315333Serj 6315333Serj Redistribution and use in source and binary forms, with or without 7315333Serj modification, are permitted provided that the following conditions are met: 8315333Serj 9315333Serj 1. Redistributions of source code must retain the above copyright notice, 10315333Serj this list of conditions and the following disclaimer. 11315333Serj 12315333Serj 2. Redistributions in binary form must reproduce the above copyright 13315333Serj notice, this list of conditions and the following disclaimer in the 14315333Serj documentation and/or other materials provided with the distribution. 15315333Serj 16315333Serj 3. Neither the name of the Intel Corporation nor the names of its 17315333Serj contributors may be used to endorse or promote products derived from 18315333Serj this software without specific prior written permission. 19315333Serj 20315333Serj THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 21315333Serj AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 22315333Serj IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 23315333Serj ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 24315333Serj LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 25315333Serj CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 26315333Serj SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 27315333Serj INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 28315333Serj CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 29315333Serj ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 30315333Serj POSSIBILITY OF SUCH DAMAGE. 31315333Serj 32315333Serj******************************************************************************/ 33315333Serj/*$FreeBSD: stable/10/sys/dev/ixgbe/ixgbe_rss.h 315333 2017-03-15 21:20:17Z erj $*/ 34315333Serj 35315333Serj#ifndef _IXGBE_RSS_H_ 36315333Serj#define _IXGBE_RSS_H_ 37315333Serj 38315333Serj#ifdef RSS 39315333Serj 40315333Serj#include <net/rss_config.h> 41315333Serj#include <netinet/in_rss.h> 42315333Serj 43315333Serj#else 44315333Serj 45315333Serj#define RSS_HASHTYPE_RSS_IPV4 (1 << 1) 46315333Serj#define RSS_HASHTYPE_RSS_TCP_IPV4 (1 << 2) 47315333Serj#define RSS_HASHTYPE_RSS_IPV6 (1 << 3) 48315333Serj#define RSS_HASHTYPE_RSS_TCP_IPV6 (1 << 4) 49315333Serj#define RSS_HASHTYPE_RSS_IPV6_EX (1 << 5) 50315333Serj#define RSS_HASHTYPE_RSS_TCP_IPV6_EX (1 << 6) 51315333Serj#define RSS_HASHTYPE_RSS_UDP_IPV4 (1 << 7) 52315333Serj#define RSS_HASHTYPE_RSS_UDP_IPV4_EX (1 << 8) 53315333Serj#define RSS_HASHTYPE_RSS_UDP_IPV6 (1 << 9) 54315333Serj#define RSS_HASHTYPE_RSS_UDP_IPV6_EX (1 << 10) 55315333Serj 56315333Serj#define rss_getcpu(_a) 0 57315333Serj#define rss_getnumbuckets() 1 58315333Serj#define rss_getkey(_a) 59315333Serj#define rss_get_indirection_to_bucket(_a) 0 60315333Serj#define rss_gethashconfig() 0x7E 61315333Serj#define rss_hash2bucket(_a,_b,_c) -1 62315333Serj 63315333Serj#endif 64315333Serj#endif 65