cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

sja1105_vl.h (2285B)


      1/* SPDX-License-Identifier: GPL-2.0 */
      2/* Copyright 2020 NXP
      3 */
      4#ifndef _SJA1105_VL_H
      5#define _SJA1105_VL_H
      6
      7#include "sja1105.h"
      8
      9#if IS_ENABLED(CONFIG_NET_DSA_SJA1105_VL)
     10
     11int sja1105_vl_redirect(struct sja1105_private *priv, int port,
     12			struct netlink_ext_ack *extack, unsigned long cookie,
     13			struct sja1105_key *key, unsigned long destports,
     14			bool append);
     15
     16int sja1105_vl_delete(struct sja1105_private *priv, int port,
     17		      struct sja1105_rule *rule,
     18		      struct netlink_ext_ack *extack);
     19
     20int sja1105_vl_gate(struct sja1105_private *priv, int port,
     21		    struct netlink_ext_ack *extack, unsigned long cookie,
     22		    struct sja1105_key *key, u32 index, s32 prio,
     23		    u64 base_time, u64 cycle_time, u64 cycle_time_ext,
     24		    u32 num_entries, struct action_gate_entry *entries);
     25
     26int sja1105_vl_stats(struct sja1105_private *priv, int port,
     27		     struct sja1105_rule *rule, struct flow_stats *stats,
     28		     struct netlink_ext_ack *extack);
     29
     30#else
     31
     32static inline int sja1105_vl_redirect(struct sja1105_private *priv, int port,
     33				      struct netlink_ext_ack *extack,
     34				      unsigned long cookie,
     35				      struct sja1105_key *key,
     36				      unsigned long destports,
     37				      bool append)
     38{
     39	NL_SET_ERR_MSG_MOD(extack, "Virtual Links not compiled in");
     40	return -EOPNOTSUPP;
     41}
     42
     43static inline int sja1105_vl_delete(struct sja1105_private *priv,
     44				    int port, struct sja1105_rule *rule,
     45				    struct netlink_ext_ack *extack)
     46{
     47	NL_SET_ERR_MSG_MOD(extack, "Virtual Links not compiled in");
     48	return -EOPNOTSUPP;
     49}
     50
     51static inline int sja1105_vl_gate(struct sja1105_private *priv, int port,
     52				  struct netlink_ext_ack *extack,
     53				  unsigned long cookie,
     54				  struct sja1105_key *key, u32 index, s32 prio,
     55				  u64 base_time, u64 cycle_time,
     56				  u64 cycle_time_ext, u32 num_entries,
     57				  struct action_gate_entry *entries)
     58{
     59	NL_SET_ERR_MSG_MOD(extack, "Virtual Links not compiled in");
     60	return -EOPNOTSUPP;
     61}
     62
     63static inline int sja1105_vl_stats(struct sja1105_private *priv, int port,
     64				   struct sja1105_rule *rule,
     65				   struct flow_stats *stats,
     66				   struct netlink_ext_ack *extack)
     67{
     68	NL_SET_ERR_MSG_MOD(extack, "Virtual Links not compiled in");
     69	return -EOPNOTSUPP;
     70}
     71
     72#endif /* IS_ENABLED(CONFIG_NET_DSA_SJA1105_VL) */
     73
     74#endif /* _SJA1105_VL_H */