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