1 /* SPDX-License-Identifier: GPL-2.0-or-later */
2 
3 #ifndef __DSA_TAG_8021Q_H
4 #define __DSA_TAG_8021Q_H
5 
6 #include <net/dsa.h>
7 
8 #include "switch.h"
9 
10 struct sk_buff;
11 struct net_device;
12 
13 struct sk_buff *dsa_8021q_xmit(struct sk_buff *skb, struct net_device *netdev,
14 			       u16 tpid, u16 tci);
15 
16 void dsa_8021q_rcv(struct sk_buff *skb, int *source_port, int *switch_id,
17 		   int *vbid);
18 
19 struct net_device *dsa_tag_8021q_find_port_by_vbid(struct net_device *master,
20 						   int vbid);
21 
22 int dsa_switch_tag_8021q_vlan_add(struct dsa_switch *ds,
23 				  struct dsa_notifier_tag_8021q_vlan_info *info);
24 int dsa_switch_tag_8021q_vlan_del(struct dsa_switch *ds,
25 				  struct dsa_notifier_tag_8021q_vlan_info *info);
26 
27 #endif
28