linux/drivers/net/wireless/microchip/wilc1000/hif.c

// SPDX-License-Identifier: GPL-2.0
/*
 * Copyright (c) 2012 - 2018 Microchip Technology Inc., and its subsidiaries.
 * All rights reserved.
 */

#include "netdev.h"

#define WILC_HIF_SCAN_TIMEOUT_MS
#define WILC_HIF_CONNECT_TIMEOUT_MS

#define WILC_FALSE_FRMWR_CHANNEL

#define WILC_SCAN_WID_LIST_SIZE

struct wilc_rcvd_mac_info {};

struct wilc_set_multicast {};

struct host_if_wowlan_trigger {};

struct wilc_del_all_sta {};

wilc_message_body;

struct host_if_msg {};

/* 'msg' should be free by the caller for syc */
static struct host_if_msg*
wilc_alloc_work(struct wilc_vif *vif, void (*work_fun)(struct work_struct *),
		bool is_sync)
{}

static int wilc_enqueue_work(struct host_if_msg *msg)
{}

/* The idx starts from 0 to (NUM_CONCURRENT_IFC - 1), but 0 index used as
 * special purpose in wilc device, so we add 1 to the index to starts from 1.
 * As a result, the returned index will be 1 to NUM_CONCURRENT_IFC.
 */
int wilc_get_vif_idx(struct wilc_vif *vif)
{}

/* We need to minus 1 from idx which is from wilc device to get real index
 * of wilc->vif[], because we add 1 when pass to wilc device in the function
 * wilc_get_vif_idx.
 * As a result, the index should be between 0 and (NUM_CONCURRENT_IFC - 1).
 */
static struct wilc_vif *wilc_get_vif_from_idx(struct wilc *wilc, int idx)
{}

static int handle_scan_done(struct wilc_vif *vif, enum scan_event evt)
{}

int wilc_scan(struct wilc_vif *vif, u8 scan_source,
	      u8 scan_type, u8 *ch_freq_list,
	      void (*scan_result_fn)(enum scan_event,
				     struct wilc_rcvd_net_info *,
				     struct wilc_priv *),
	      struct cfg80211_scan_request *request)
{}

static int wilc_send_connect_wid(struct wilc_vif *vif)
{}

static void handle_connect_timeout(struct work_struct *work)
{}

struct wilc_join_bss_param *
wilc_parse_join_bss_param(struct cfg80211_bss *bss,
			  struct cfg80211_crypto_settings *crypto)
{}

static void handle_rcvd_ntwrk_info(struct work_struct *work)
{}

static void host_int_get_assoc_res_info(struct wilc_vif *vif,
					u8 *assoc_resp_info,
					u32 max_assoc_resp_info_len,
					u32 *rcvd_assoc_resp_info_len)
{}

static s32 wilc_parse_assoc_resp_info(u8 *buffer, u32 buffer_len,
				      struct wilc_conn_info *ret_conn_info)
{}

static inline void host_int_parse_assoc_resp_info(struct wilc_vif *vif,
						  u8 mac_status)
{}

void wilc_handle_disconnect(struct wilc_vif *vif)
{}

static void handle_rcvd_gnrl_async_info(struct work_struct *work)
{}

int wilc_disconnect(struct wilc_vif *vif)
{}

int wilc_get_statistics(struct wilc_vif *vif, struct rf_info *stats)
{}

static void handle_get_statistics(struct work_struct *work)
{}

static void wilc_hif_pack_sta_param(u8 *cur_byte, const u8 *mac,
				    struct station_parameters *params)
{}

static int handle_remain_on_chan(struct wilc_vif *vif,
				 struct wilc_remain_ch *hif_remain_ch)
{}

static int wilc_handle_roc_expired(struct wilc_vif *vif, u64 cookie)
{}

static void wilc_handle_listen_state_expired(struct work_struct *work)
{}

static void listen_timer_cb(struct timer_list *t)
{}

static void handle_set_mcast_filter(struct work_struct *work)
{}

void wilc_set_wowlan_trigger(struct wilc_vif *vif, bool enabled)
{}

int wilc_set_external_auth_param(struct wilc_vif *vif,
				 struct cfg80211_external_auth_params *auth)
{}

static void handle_scan_timer(struct work_struct *work)
{}

static void handle_scan_complete(struct work_struct *work)
{}

static void timer_scan_cb(struct timer_list *t)
{}

static void timer_connect_cb(struct timer_list *t)
{}

int wilc_add_ptk(struct wilc_vif *vif, const u8 *ptk, u8 ptk_key_len,
		 const u8 *mac_addr, const u8 *rx_mic, const u8 *tx_mic,
		 u8 mode, u8 cipher_mode, u8 index)
{}

int wilc_add_igtk(struct wilc_vif *vif, const u8 *igtk, u8 igtk_key_len,
		  const u8 *pn, u8 pn_len, const u8 *mac_addr, u8 mode, u8 index)
{}

int wilc_add_rx_gtk(struct wilc_vif *vif, const u8 *rx_gtk, u8 gtk_key_len,
		    u8 index, u32 key_rsc_len, const u8 *key_rsc,
		    const u8 *rx_mic, const u8 *tx_mic, u8 mode,
		    u8 cipher_mode)
{}

int wilc_set_pmkid_info(struct wilc_vif *vif, struct wilc_pmkid_attr *pmkid)
{}

int wilc_get_mac_address(struct wilc_vif *vif, u8 *mac_addr)
{}

int wilc_set_mac_address(struct wilc_vif *vif, const u8 *mac_addr)
{}

int wilc_set_join_req(struct wilc_vif *vif, u8 *bssid, const u8 *ies,
		      size_t ies_len)
{}

int wilc_set_mac_chnl_num(struct wilc_vif *vif, u8 channel)
{}

int wilc_set_operation_mode(struct wilc_vif *vif, int index, u8 mode,
			    u8 ifc_id)
{}

s32 wilc_get_inactive_time(struct wilc_vif *vif, const u8 *mac, u32 *out_val)
{}

int wilc_get_rssi(struct wilc_vif *vif, s8 *rssi_level)
{}

static int wilc_get_stats_async(struct wilc_vif *vif, struct rf_info *stats)
{}

int wilc_hif_set_cfg(struct wilc_vif *vif, struct cfg_param_attr *param)
{}

static void get_periodic_rssi(struct timer_list *t)
{}

int wilc_init(struct net_device *dev, struct host_if_drv **hif_drv_handler)
{}

int wilc_deinit(struct wilc_vif *vif)
{}

void wilc_network_info_received(struct wilc *wilc, u8 *buffer, u32 length)
{}

void wilc_gnrl_async_info_received(struct wilc *wilc, u8 *buffer, u32 length)
{}

void wilc_scan_complete_received(struct wilc *wilc, u8 *buffer, u32 length)
{}

int wilc_remain_on_channel(struct wilc_vif *vif, u64 cookie, u16 chan,
			   void (*expired)(struct wilc_vif *, u64))
{}

int wilc_listen_state_expired(struct wilc_vif *vif, u64 cookie)
{}

void wilc_frame_register(struct wilc_vif *vif, u16 frame_type, bool reg)
{}

int wilc_add_beacon(struct wilc_vif *vif, u32 interval, u32 dtim_period,
		    struct cfg80211_beacon_data *params)
{}

int wilc_del_beacon(struct wilc_vif *vif)
{}

int wilc_add_station(struct wilc_vif *vif, const u8 *mac,
		     struct station_parameters *params)
{}

int wilc_del_station(struct wilc_vif *vif, const u8 *mac_addr)
{}

int wilc_del_allstation(struct wilc_vif *vif, u8 mac_addr[][ETH_ALEN])
{}

int wilc_edit_station(struct wilc_vif *vif, const u8 *mac,
		      struct station_parameters *params)
{}

int wilc_set_power_mgmt(struct wilc_vif *vif, bool enabled, u32 timeout)
{}

int wilc_setup_multicast_filter(struct wilc_vif *vif, u32 enabled, u32 count,
				u8 *mc_list)
{}

int wilc_set_tx_power(struct wilc_vif *vif, u8 tx_power)
{}

int wilc_get_tx_power(struct wilc_vif *vif, u8 *tx_power)
{}

int wilc_set_default_mgmt_key_index(struct wilc_vif *vif, u8 index)
{}