xref: /dpdk/drivers/net/mlx5/windows/mlx5_vlan_os.c (revision df96fd0d73955bdc7ca3909e772ff2ad903249c6)
160f522c0SOphir Munk /* SPDX-License-Identifier: BSD-3-Clause
260f522c0SOphir Munk  * Copyright 2020 Mellanox Technologies, Ltd
360f522c0SOphir Munk  */
460f522c0SOphir Munk 
560f522c0SOphir Munk #include <stddef.h>
660f522c0SOphir Munk #include <errno.h>
760f522c0SOphir Munk #include <stdint.h>
860f522c0SOphir Munk #include <unistd.h>
960f522c0SOphir Munk 
1060f522c0SOphir Munk /*
1160f522c0SOphir Munk  * Not needed by this file; included to work around the lack of off_t
1260f522c0SOphir Munk  * definition for mlx5dv.h with unpatched rdma-core versions.
1360f522c0SOphir Munk  */
1460f522c0SOphir Munk #include <sys/types.h>
1560f522c0SOphir Munk 
16*df96fd0dSBruce Richardson #include <ethdev_driver.h>
1760f522c0SOphir Munk #include <rte_common.h>
1860f522c0SOphir Munk 
1960f522c0SOphir Munk #include <mlx5.h>
2060f522c0SOphir Munk #include <mlx5_malloc.h>
2160f522c0SOphir Munk 
2260f522c0SOphir Munk /*
2360f522c0SOphir Munk  * Release VLAN network device, created for VM workaround.
2460f522c0SOphir Munk  *
2560f522c0SOphir Munk  * @param[in] dev
2660f522c0SOphir Munk  *   Ethernet device object, Netlink context provider.
2760f522c0SOphir Munk  * @param[in] vlan
2860f522c0SOphir Munk  *   Object representing the network device to release.
2960f522c0SOphir Munk  */
3060f522c0SOphir Munk void
mlx5_vlan_vmwa_release(struct rte_eth_dev * dev,struct mlx5_vf_vlan * vlan)3160f522c0SOphir Munk mlx5_vlan_vmwa_release(struct rte_eth_dev *dev,
3260f522c0SOphir Munk 			    struct mlx5_vf_vlan *vlan)
3360f522c0SOphir Munk {
3460f522c0SOphir Munk 	RTE_SET_USED(dev);
3560f522c0SOphir Munk 	RTE_SET_USED(vlan);
3660f522c0SOphir Munk }
3760f522c0SOphir Munk 
3860f522c0SOphir Munk /**
3960f522c0SOphir Munk  * Acquire VLAN interface with specified tag for VM workaround.
4060f522c0SOphir Munk  *
4160f522c0SOphir Munk  * @param[in] dev
4260f522c0SOphir Munk  *   Ethernet device object, Netlink context provider.
4360f522c0SOphir Munk  * @param[in] vlan
4460f522c0SOphir Munk  *   Object representing the network device to acquire.
4560f522c0SOphir Munk  */
4660f522c0SOphir Munk void
mlx5_vlan_vmwa_acquire(struct rte_eth_dev * dev,struct mlx5_vf_vlan * vlan)4760f522c0SOphir Munk mlx5_vlan_vmwa_acquire(struct rte_eth_dev *dev,
4860f522c0SOphir Munk 			    struct mlx5_vf_vlan *vlan)
4960f522c0SOphir Munk {
5060f522c0SOphir Munk 	RTE_SET_USED(dev);
5160f522c0SOphir Munk 	RTE_SET_USED(vlan);
5260f522c0SOphir Munk }
5360f522c0SOphir Munk 
5460f522c0SOphir Munk /*
5560f522c0SOphir Munk  * Create per ethernet device VLAN VM workaround context
5660f522c0SOphir Munk  *
5760f522c0SOphir Munk  * @param dev
5860f522c0SOphir Munk  *   Pointer to Ethernet device structure.
5960f522c0SOphir Munk  * @param ifindex
6060f522c0SOphir Munk  *   Interface index.
6160f522c0SOphir Munk  *
6260f522c0SOphir Munk  * @Return
6360f522c0SOphir Munk  *   Pointer to mlx5_nl_vlan_vmwa_context
6460f522c0SOphir Munk  */
6560f522c0SOphir Munk void *
mlx5_vlan_vmwa_init(struct rte_eth_dev * dev,uint32_t ifindex)6660f522c0SOphir Munk mlx5_vlan_vmwa_init(struct rte_eth_dev *dev, uint32_t ifindex)
6760f522c0SOphir Munk {
6860f522c0SOphir Munk 	RTE_SET_USED(dev);
6960f522c0SOphir Munk 	RTE_SET_USED(ifindex);
7060f522c0SOphir Munk 	return NULL;
7160f522c0SOphir Munk }
7260f522c0SOphir Munk 
7360f522c0SOphir Munk /*
7460f522c0SOphir Munk  * Destroy per ethernet device VLAN VM workaround context
7560f522c0SOphir Munk  *
7660f522c0SOphir Munk  * @param dev
7760f522c0SOphir Munk  *   Pointer to VM context
7860f522c0SOphir Munk  */
7960f522c0SOphir Munk void
mlx5_vlan_vmwa_exit(void * vmctx)8060f522c0SOphir Munk mlx5_vlan_vmwa_exit(void *vmctx)
8160f522c0SOphir Munk {
8260f522c0SOphir Munk 	RTE_SET_USED(vmctx);
8360f522c0SOphir Munk }
84