#ifndef WILC_NETDEV_H
#define WILC_NETDEV_H
#include <linux/tcp.h>
#include <linux/ieee80211.h>
#include <net/cfg80211.h>
#include <net/ieee80211_radiotap.h>
#include <linux/if_arp.h>
#include <linux/gpio/consumer.h>
#include <linux/rculist.h>
#include <uapi/linux/if_ether.h>
#include "hif.h"
#include "wlan.h"
#include "wlan_cfg.h"
#define FLOW_CONTROL_LOWER_THRESHOLD …
#define FLOW_CONTROL_UPPER_THRESHOLD …
#define PMKID_FOUND …
#define NUM_STA_ASSOCIATED …
#define TCP_ACK_FILTER_LINK_SPEED_THRESH …
#define DEFAULT_LINK_SPEED …
#define TX_BACKOFF_WEIGHT_MS …
#define wilc_for_each_vif(w, v) …
struct wilc_wfi_stats { … };
struct wilc_wfi_key { … };
struct sta_info { … };
struct wilc_wfi_p2p_listen_params { … };
static const u32 wilc_cipher_suites[] = …;
#define CHAN2G(_channel, _freq, _flags) …
static const struct ieee80211_channel wilc_2ghz_channels[] = …;
#define RATETAB_ENT(_rate, _hw_value, _flags) …
static struct ieee80211_rate wilc_bitrates[] = …;
struct wilc_priv { … };
#define MAX_TCP_SESSION …
#define MAX_PENDING_ACKS …
struct ack_session_info { … };
struct pending_acks { … };
struct tcp_ack_filter { … };
struct wilc_vif { … };
struct wilc_tx_queue_status { … };
struct wilc { … };
struct wilc_wfi_mon_priv { … };
void wilc_frmw_to_host(struct wilc *wilc, u8 *buff, u32 size, u32 pkt_offset);
void wilc_mac_indicate(struct wilc *wilc);
void wilc_netdev_cleanup(struct wilc *wilc);
void wilc_wfi_mgmt_rx(struct wilc *wilc, u8 *buff, u32 size, bool is_auth);
void wilc_wlan_set_bssid(struct net_device *wilc_netdev, const u8 *bssid,
u8 mode);
struct wilc_vif *wilc_netdev_ifc_init(struct wilc *wl, const char *name,
int vif_type, enum nl80211_iftype type,
bool rtnl_locked);
#endif