]> git.proxmox.com Git - mirror_ubuntu-jammy-kernel.git/blob - drivers/net/dsa/sja1105/sja1105_vl.h
net: dsa: sja1105: support flow-based redirection via virtual links
[mirror_ubuntu-jammy-kernel.git] / drivers / net / dsa / sja1105 / sja1105_vl.h
1 /* SPDX-License-Identifier: GPL-2.0 */
2 /* Copyright 2020, NXP Semiconductors
3 */
4 #ifndef _SJA1105_VL_H
5 #define _SJA1105_VL_H
6
7 #if IS_ENABLED(CONFIG_NET_DSA_SJA1105_VL)
8
9 int sja1105_vl_redirect(struct sja1105_private *priv, int port,
10 struct netlink_ext_ack *extack, unsigned long cookie,
11 struct sja1105_key *key, unsigned long destports,
12 bool append);
13
14 int sja1105_vl_delete(struct sja1105_private *priv, int port,
15 struct sja1105_rule *rule,
16 struct netlink_ext_ack *extack);
17
18 #else
19
20 static inline int sja1105_vl_redirect(struct sja1105_private *priv, int port,
21 struct netlink_ext_ack *extack,
22 unsigned long cookie,
23 struct sja1105_key *key,
24 unsigned long destports,
25 bool append)
26 {
27 NL_SET_ERR_MSG_MOD(extack, "Virtual Links not compiled in");
28 return -EOPNOTSUPP;
29 }
30
31 static inline int sja1105_vl_delete(struct sja1105_private *priv,
32 int port, struct sja1105_rule *rule,
33 struct netlink_ext_ack *extack)
34 {
35 NL_SET_ERR_MSG_MOD(extack, "Virtual Links not compiled in");
36 return -EOPNOTSUPP;
37 }
38
39 #endif /* IS_ENABLED(CONFIG_NET_DSA_SJA1105_VL) */
40
41 #endif /* _SJA1105_VL_H */