c81528295a86235bcabc285db1f1ca55adf90e4e
[dpdk.git] / drivers / net / txgbe / txgbe_ethdev.h
1 /* SPDX-License-Identifier: BSD-3-Clause
2  * Copyright(c) 2015-2020
3  */
4
5 #ifndef _TXGBE_ETHDEV_H_
6 #define _TXGBE_ETHDEV_H_
7
8 #include "base/txgbe.h"
9
10 /*
11  * Defines that were not part of txgbe_type.h as they are not used by the
12  * FreeBSD driver.
13  */
14 #define TXGBE_HKEY_MAX_INDEX 10
15
16 #define TXGBE_RSS_OFFLOAD_ALL ( \
17         ETH_RSS_IPV4 | \
18         ETH_RSS_NONFRAG_IPV4_TCP | \
19         ETH_RSS_NONFRAG_IPV4_UDP | \
20         ETH_RSS_IPV6 | \
21         ETH_RSS_NONFRAG_IPV6_TCP | \
22         ETH_RSS_NONFRAG_IPV6_UDP | \
23         ETH_RSS_IPV6_EX | \
24         ETH_RSS_IPV6_TCP_EX | \
25         ETH_RSS_IPV6_UDP_EX)
26
27 /*
28  * Structure to store private data for each driver instance (for each port).
29  */
30 struct txgbe_adapter {
31         struct txgbe_hw             hw;
32 };
33
34 #define TXGBE_DEV_HW(dev) \
35         (&((struct txgbe_adapter *)(dev)->data->dev_private)->hw)
36
37 #define TXGBE_VMDQ_NUM_UC_MAC         4096 /* Maximum nb. of UC MAC addr. */
38
39 /*
40  *  Default values for RX/TX configuration
41  */
42 #define TXGBE_DEFAULT_RX_FREE_THRESH  32
43 #define TXGBE_DEFAULT_RX_PTHRESH      8
44 #define TXGBE_DEFAULT_RX_HTHRESH      8
45 #define TXGBE_DEFAULT_RX_WTHRESH      0
46
47 #define TXGBE_DEFAULT_TX_FREE_THRESH  32
48 #define TXGBE_DEFAULT_TX_PTHRESH      32
49 #define TXGBE_DEFAULT_TX_HTHRESH      0
50 #define TXGBE_DEFAULT_TX_WTHRESH      0
51
52 #endif /* _TXGBE_ETHDEV_H_ */