1c31af68aSBrett Creeley /* SPDX-License-Identifier: GPL-2.0 */
2c31af68aSBrett Creeley /* Copyright (C) 2019-2021, Intel Corporation. */
3c31af68aSBrett Creeley 
4c31af68aSBrett Creeley #ifndef _ICE_VF_VSI_VLAN_OPS_H_
5c31af68aSBrett Creeley #define _ICE_VF_VSI_VLAN_OPS_H_
6c31af68aSBrett Creeley 
7c31af68aSBrett Creeley #include "ice_vsi_vlan_ops.h"
8c31af68aSBrett Creeley 
9c31af68aSBrett Creeley struct ice_vsi;
10c31af68aSBrett Creeley 
11cc71de8fSBrett Creeley void ice_vf_vsi_cfg_dvm_legacy_vlan_mode(struct ice_vsi *vsi);
12cc71de8fSBrett Creeley void ice_vf_vsi_cfg_svm_legacy_vlan_mode(struct ice_vsi *vsi);
13cc71de8fSBrett Creeley 
14c31af68aSBrett Creeley #ifdef CONFIG_PCI_IOV
15c31af68aSBrett Creeley void ice_vf_vsi_init_vlan_ops(struct ice_vsi *vsi);
16*2946204bSMichal Swiatkowski void ice_vf_vsi_enable_port_vlan(struct ice_vsi *vsi);
17*2946204bSMichal Swiatkowski void ice_vf_vsi_disable_port_vlan(struct ice_vsi *vsi);
18c31af68aSBrett Creeley #else
ice_vf_vsi_init_vlan_ops(struct ice_vsi * vsi)19c31af68aSBrett Creeley static inline void ice_vf_vsi_init_vlan_ops(struct ice_vsi *vsi) { }
ice_vf_vsi_enable_port_vlan(struct ice_vsi * vsi)20*2946204bSMichal Swiatkowski static inline void ice_vf_vsi_enable_port_vlan(struct ice_vsi *vsi) { }
ice_vf_vsi_disable_port_vlan(struct ice_vsi * vsi)21*2946204bSMichal Swiatkowski static inline void ice_vf_vsi_disable_port_vlan(struct ice_vsi *vsi) { }
22c31af68aSBrett Creeley #endif /* CONFIG_PCI_IOV */
23c31af68aSBrett Creeley #endif /* _ICE_PF_VSI_VLAN_OPS_H_ */
24