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

mesh.h (1782B)


      1/* SPDX-License-Identifier: GPL-2.0 */
      2/*
      3 * Contains all definitions needed for the Libertas' MESH implementation.
      4 */
      5#ifndef _LBS_MESH_H_
      6#define _LBS_MESH_H_
      7
      8
      9#include <net/iw_handler.h>
     10#include <net/lib80211.h>
     11
     12#include "host.h"
     13#include "dev.h"
     14
     15#ifdef CONFIG_LIBERTAS_MESH
     16
     17struct net_device;
     18
     19void lbs_init_mesh(struct lbs_private *priv);
     20void lbs_start_mesh(struct lbs_private *priv);
     21int lbs_deinit_mesh(struct lbs_private *priv);
     22
     23void lbs_remove_mesh(struct lbs_private *priv);
     24
     25static inline bool lbs_mesh_activated(struct lbs_private *priv)
     26{
     27	return !!priv->mesh_tlv;
     28}
     29
     30int lbs_mesh_set_channel(struct lbs_private *priv, u8 channel);
     31
     32/* Sending / Receiving */
     33
     34struct rxpd;
     35struct txpd;
     36
     37struct net_device *lbs_mesh_set_dev(struct lbs_private *priv,
     38	struct net_device *dev, struct rxpd *rxpd);
     39void lbs_mesh_set_txpd(struct lbs_private *priv,
     40	struct net_device *dev, struct txpd *txpd);
     41
     42
     43/* Command handling */
     44
     45struct cmd_ds_command;
     46struct cmd_ds_mesh_access;
     47struct cmd_ds_mesh_config;
     48
     49
     50/* Ethtool statistics */
     51
     52struct ethtool_stats;
     53
     54void lbs_mesh_ethtool_get_stats(struct net_device *dev,
     55	struct ethtool_stats *stats, uint64_t *data);
     56int lbs_mesh_ethtool_get_sset_count(struct net_device *dev, int sset);
     57void lbs_mesh_ethtool_get_strings(struct net_device *dev,
     58	uint32_t stringset, uint8_t *s);
     59
     60
     61#else
     62
     63#define lbs_init_mesh(priv)	do { } while (0)
     64#define lbs_deinit_mesh(priv)	do { } while (0)
     65#define lbs_start_mesh(priv)	do { } while (0)
     66#define lbs_add_mesh(priv)	do { } while (0)
     67#define lbs_remove_mesh(priv)	do { } while (0)
     68#define lbs_mesh_set_dev(priv, dev, rxpd) (dev)
     69#define lbs_mesh_set_txpd(priv, dev, txpd) do { } while (0)
     70#define lbs_mesh_set_channel(priv, channel) (0)
     71#define lbs_mesh_activated(priv) (false)
     72
     73#endif
     74
     75
     76
     77#endif