xref: /dpdk/drivers/net/ionic/ionic_ethdev.h (revision a5205992d9789a84a7ff803f80308cbf82847f5c)
1669c8de6SAlfredo Cardigliano /* SPDX-License-Identifier: (BSD-3-Clause OR GPL-2.0)
2*a5205992SAndrew Boyer  * Copyright 2018-2022 Advanced Micro Devices, Inc.
3669c8de6SAlfredo Cardigliano  */
4669c8de6SAlfredo Cardigliano 
5669c8de6SAlfredo Cardigliano #ifndef _IONIC_ETHDEV_H_
6669c8de6SAlfredo Cardigliano #define _IONIC_ETHDEV_H_
7669c8de6SAlfredo Cardigliano 
8be63459eSAndrew Boyer #include <rte_ethdev.h>
9be63459eSAndrew Boyer 
1022e7171bSAlfredo Cardigliano #define IONIC_ETH_RSS_OFFLOAD_ALL ( \
11295968d1SFerruh Yigit 	RTE_ETH_RSS_IPV4 | \
12295968d1SFerruh Yigit 	RTE_ETH_RSS_NONFRAG_IPV4_TCP | \
13295968d1SFerruh Yigit 	RTE_ETH_RSS_NONFRAG_IPV4_UDP | \
14295968d1SFerruh Yigit 	RTE_ETH_RSS_IPV6 | \
15295968d1SFerruh Yigit 	RTE_ETH_RSS_NONFRAG_IPV6_TCP | \
16295968d1SFerruh Yigit 	RTE_ETH_RSS_NONFRAG_IPV6_UDP)
1722e7171bSAlfredo Cardigliano 
18669c8de6SAlfredo Cardigliano #define IONIC_ETH_DEV_TO_LIF(eth_dev) ((struct ionic_lif *) \
19669c8de6SAlfredo Cardigliano 	(eth_dev)->data->dev_private)
20669c8de6SAlfredo Cardigliano #define IONIC_ETH_DEV_TO_ADAPTER(eth_dev) \
21669c8de6SAlfredo Cardigliano 	(IONIC_ETH_DEV_TO_LIF(eth_dev)->adapter)
22669c8de6SAlfredo Cardigliano 
23be63459eSAndrew Boyer int ionic_dev_link_update(struct rte_eth_dev *eth_dev, int wait_to_complete);
24be63459eSAndrew Boyer 
25669c8de6SAlfredo Cardigliano #endif /* _IONIC_ETHDEV_H_ */
26