#include "cfg80211.h"
#define GO_NEG_REQ …
#define GO_NEG_RSP …
#define GO_NEG_CONF …
#define P2P_INV_REQ …
#define P2P_INV_RSP …
#define WILC_INVALID_CHANNEL …
#define WILC_WLAN_OPERATING_CLASS_2_4GHZ …
static const struct ieee80211_txrx_stypes
wilc_wfi_cfg80211_mgmt_types[NUM_NL80211_IFTYPES] = …;
#ifdef CONFIG_PM
static const struct wiphy_wowlan_support wowlan_support = …;
#endif
struct wilc_p2p_mgmt_data { … };
struct wilc_p2p_pub_act_frame { … } __packed;
struct wilc_vendor_specific_ie { … } __packed;
struct wilc_attr_entry { … } __packed;
struct wilc_attr_oper_ch { … } __packed;
struct wilc_attr_ch_list { … } __packed;
struct wilc_ch_list_elem { … } __packed;
static void cfg_scan_result(enum scan_event scan_event,
struct wilc_rcvd_net_info *info,
struct wilc_priv *priv)
{ … }
static void cfg_connect_result(enum conn_event conn_disconn_evt, u8 mac_status,
struct wilc_priv *priv)
{ … }
struct wilc_vif *wilc_get_wl_to_vif(struct wilc *wl)
{ … }
static int set_channel(struct wiphy *wiphy,
struct cfg80211_chan_def *chandef)
{ … }
static int scan(struct wiphy *wiphy, struct cfg80211_scan_request *request)
{ … }
static int connect(struct wiphy *wiphy, struct net_device *dev,
struct cfg80211_connect_params *sme)
{ … }
static int disconnect(struct wiphy *wiphy, struct net_device *dev,
u16 reason_code)
{ … }
static int wilc_wfi_cfg_allocate_wpa_entry(struct wilc_priv *priv, u8 idx)
{ … }
static int wilc_wfi_cfg_allocate_wpa_igtk_entry(struct wilc_priv *priv, u8 idx)
{ … }
static int wilc_wfi_cfg_copy_wpa_info(struct wilc_wfi_key *key_info,
struct key_params *params)
{ … }
static int add_key(struct wiphy *wiphy, struct net_device *netdev, int link_id,
u8 key_index, bool pairwise, const u8 *mac_addr,
struct key_params *params)
{ … }
static int del_key(struct wiphy *wiphy, struct net_device *netdev, int link_id,
u8 key_index,
bool pairwise,
const u8 *mac_addr)
{ … }
static int get_key(struct wiphy *wiphy, struct net_device *netdev, int link_id,
u8 key_index, bool pairwise, const u8 *mac_addr,
void *cookie,
void (*callback)(void *cookie, struct key_params *))
{ … }
static int set_default_key(struct wiphy *wiphy, struct net_device *netdev,
int link_id, u8 key_index, bool unicast,
bool multicast)
{ … }
static int set_default_mgmt_key(struct wiphy *wiphy, struct net_device *netdev,
int link_id, u8 key_index)
{ … }
static int get_station(struct wiphy *wiphy, struct net_device *dev,
const u8 *mac, struct station_info *sinfo)
{ … }
static int change_bss(struct wiphy *wiphy, struct net_device *dev,
struct bss_parameters *params)
{ … }
static int set_wiphy_params(struct wiphy *wiphy, u32 changed)
{ … }
static int set_pmksa(struct wiphy *wiphy, struct net_device *netdev,
struct cfg80211_pmksa *pmksa)
{ … }
static int del_pmksa(struct wiphy *wiphy, struct net_device *netdev,
struct cfg80211_pmksa *pmksa)
{ … }
static int flush_pmksa(struct wiphy *wiphy, struct net_device *netdev)
{ … }
static inline void wilc_wfi_cfg_parse_ch_attr(u8 *buf, u32 len, u8 sta_ch)
{ … }
bool wilc_wfi_mgmt_frame_rx(struct wilc_vif *vif, u8 *buff, u32 size)
{ … }
void wilc_wfi_p2p_rx(struct wilc_vif *vif, u8 *buff, u32 size)
{ … }
static void wilc_wfi_mgmt_tx_complete(void *priv, int status)
{ … }
static void wilc_wfi_remain_on_channel_expired(struct wilc_vif *vif, u64 cookie)
{ … }
static int remain_on_channel(struct wiphy *wiphy,
struct wireless_dev *wdev,
struct ieee80211_channel *chan,
unsigned int duration, u64 *cookie)
{ … }
static int cancel_remain_on_channel(struct wiphy *wiphy,
struct wireless_dev *wdev,
u64 cookie)
{ … }
static int mgmt_tx(struct wiphy *wiphy,
struct wireless_dev *wdev,
struct cfg80211_mgmt_tx_params *params,
u64 *cookie)
{ … }
static int mgmt_tx_cancel_wait(struct wiphy *wiphy,
struct wireless_dev *wdev,
u64 cookie)
{ … }
void wilc_update_mgmt_frame_registrations(struct wiphy *wiphy,
struct wireless_dev *wdev,
struct mgmt_frame_regs *upd)
{ … }
static int external_auth(struct wiphy *wiphy, struct net_device *dev,
struct cfg80211_external_auth_params *auth)
{ … }
static int set_cqm_rssi_config(struct wiphy *wiphy, struct net_device *dev,
s32 rssi_thold, u32 rssi_hyst)
{ … }
static int dump_station(struct wiphy *wiphy, struct net_device *dev,
int idx, u8 *mac, struct station_info *sinfo)
{ … }
static int set_power_mgmt(struct wiphy *wiphy, struct net_device *dev,
bool enabled, int timeout)
{ … }
static int change_virtual_intf(struct wiphy *wiphy, struct net_device *dev,
enum nl80211_iftype type,
struct vif_params *params)
{ … }
static int start_ap(struct wiphy *wiphy, struct net_device *dev,
struct cfg80211_ap_settings *settings)
{ … }
static int change_beacon(struct wiphy *wiphy, struct net_device *dev,
struct cfg80211_ap_update *params)
{ … }
static int stop_ap(struct wiphy *wiphy, struct net_device *dev,
unsigned int link_id)
{ … }
static int add_station(struct wiphy *wiphy, struct net_device *dev,
const u8 *mac, struct station_parameters *params)
{ … }
static int del_station(struct wiphy *wiphy, struct net_device *dev,
struct station_del_parameters *params)
{ … }
static int change_station(struct wiphy *wiphy, struct net_device *dev,
const u8 *mac, struct station_parameters *params)
{ … }
static struct wilc_vif *wilc_get_vif_from_type(struct wilc *wl, int type)
{ … }
static struct wireless_dev *add_virtual_intf(struct wiphy *wiphy,
const char *name,
unsigned char name_assign_type,
enum nl80211_iftype type,
struct vif_params *params)
{ … }
static int del_virtual_intf(struct wiphy *wiphy, struct wireless_dev *wdev)
{ … }
static void wilc_set_wakeup(struct wiphy *wiphy, bool enabled)
{ … }
static int set_tx_power(struct wiphy *wiphy, struct wireless_dev *wdev,
enum nl80211_tx_power_setting type, int mbm)
{ … }
static int get_tx_power(struct wiphy *wiphy, struct wireless_dev *wdev,
int *dbm)
{ … }
static const struct cfg80211_ops wilc_cfg80211_ops = …;
static void wlan_init_locks(struct wilc *wl)
{ … }
void wlan_deinit_locks(struct wilc *wilc)
{ … }
int wilc_cfg80211_init(struct wilc **wilc, struct device *dev, int io_type,
const struct wilc_hif_func *ops)
{ … }
EXPORT_SYMBOL_GPL(…);
struct wilc *wilc_create_wiphy(struct device *dev)
{ … }
int wilc_init_host_int(struct net_device *net)
{ … }
void wilc_deinit_host_int(struct net_device *net)
{ … }