Incoming changes to support 802.1Q and/or 802.1ad VLAN filtering and offloads require more flexibility when configuring VLANs. The VSI VLAN interface will allow flexibility for configuring VLANs for all VSI types. Add new files to separate the VSI VLAN ops and move functions to make the code more organized. Signed-off-by: Brett Creeley <brett.creeley@intel.com> Tested-by: Gurucharan G <gurucharanx.g@intel.com> Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
28 lines
867 B
C
28 lines
867 B
C
/* SPDX-License-Identifier: GPL-2.0 */
|
|
/* Copyright (C) 2019-2021, Intel Corporation. */
|
|
|
|
#ifndef _ICE_VSI_VLAN_LIB_H_
|
|
#define _ICE_VSI_VLAN_LIB_H_
|
|
|
|
#include <linux/types.h>
|
|
#include "ice_type.h"
|
|
|
|
struct ice_vsi;
|
|
|
|
int
|
|
ice_vsi_add_vlan(struct ice_vsi *vsi, u16 vid, enum ice_sw_fwd_act_type action);
|
|
int ice_vsi_del_vlan(struct ice_vsi *vsi, u16 vid);
|
|
|
|
int ice_vsi_ena_stripping(struct ice_vsi *vsi);
|
|
int ice_vsi_dis_stripping(struct ice_vsi *vsi);
|
|
int ice_vsi_ena_insertion(struct ice_vsi *vsi);
|
|
int ice_vsi_dis_insertion(struct ice_vsi *vsi);
|
|
int ice_vsi_set_port_vlan(struct ice_vsi *vsi, u16 pvid_info);
|
|
|
|
int ice_vsi_ena_rx_vlan_filtering(struct ice_vsi *vsi);
|
|
int ice_vsi_dis_rx_vlan_filtering(struct ice_vsi *vsi);
|
|
int ice_vsi_ena_tx_vlan_filtering(struct ice_vsi *vsi);
|
|
int ice_vsi_dis_tx_vlan_filtering(struct ice_vsi *vsi);
|
|
|
|
#endif /* _ICE_VSI_VLAN_LIB_H_ */
|