2019-09-19 14:25:43 +00:00
|
|
|
/* SPDX-License-Identifier: GPL-2.0-only */
|
|
|
|
/*
|
2021-09-13 15:01:55 +02:00
|
|
|
* Implementation of the host-to-chip MIBs of the hardware API.
|
2019-09-19 14:25:43 +00:00
|
|
|
*
|
2020-10-07 12:19:41 +02:00
|
|
|
* Copyright (c) 2017-2020, Silicon Laboratories, Inc.
|
2019-09-19 14:25:43 +00:00
|
|
|
* Copyright (c) 2010, ST-Ericsson
|
|
|
|
* Copyright (C) 2010, ST-Ericsson SA
|
|
|
|
*/
|
|
|
|
#ifndef WFX_HIF_TX_MIB_H
|
|
|
|
#define WFX_HIF_TX_MIB_H
|
|
|
|
|
2022-01-13 09:54:56 +01:00
|
|
|
#include <linux/types.h>
|
|
|
|
|
2020-04-06 13:17:53 +02:00
|
|
|
struct sk_buff;
|
2022-01-13 09:54:56 +01:00
|
|
|
struct wfx_vif;
|
|
|
|
struct wfx_dev;
|
2022-01-13 09:55:11 +01:00
|
|
|
struct wfx_hif_ie_table_entry;
|
|
|
|
struct wfx_hif_mib_extended_count_table;
|
2020-04-06 13:17:53 +02:00
|
|
|
|
2022-01-13 09:55:07 +01:00
|
|
|
int wfx_hif_set_output_power(struct wfx_vif *wvif, int val);
|
|
|
|
int wfx_hif_set_beacon_wakeup_period(struct wfx_vif *wvif,
|
2022-01-13 09:55:13 +01:00
|
|
|
unsigned int dtim_interval, unsigned int listen_interval);
|
|
|
|
int wfx_hif_set_rcpi_rssi_threshold(struct wfx_vif *wvif, int rssi_thold, int rssi_hyst);
|
2022-01-13 09:55:07 +01:00
|
|
|
int wfx_hif_get_counters_table(struct wfx_dev *wdev, int vif_id,
|
2022-01-13 09:55:11 +01:00
|
|
|
struct wfx_hif_mib_extended_count_table *arg);
|
2022-01-13 09:55:07 +01:00
|
|
|
int wfx_hif_set_macaddr(struct wfx_vif *wvif, u8 *mac);
|
2022-01-13 09:55:13 +01:00
|
|
|
int wfx_hif_set_rx_filter(struct wfx_vif *wvif, bool filter_bssid, bool fwd_probe_req);
|
2022-01-13 09:55:07 +01:00
|
|
|
int wfx_hif_set_beacon_filter_table(struct wfx_vif *wvif, int tbl_len,
|
2022-01-13 09:55:11 +01:00
|
|
|
const struct wfx_hif_ie_table_entry *tbl);
|
2022-01-13 09:55:13 +01:00
|
|
|
int wfx_hif_beacon_filter_control(struct wfx_vif *wvif, int enable, int beacon_count);
|
|
|
|
int wfx_hif_set_operational_mode(struct wfx_dev *wdev, enum wfx_hif_op_power_mode mode);
|
2022-01-13 09:55:07 +01:00
|
|
|
int wfx_hif_set_template_frame(struct wfx_vif *wvif, struct sk_buff *skb,
|
|
|
|
u8 frame_type, int init_rate);
|
|
|
|
int wfx_hif_set_mfp(struct wfx_vif *wvif, bool capable, bool required);
|
2022-01-13 09:55:13 +01:00
|
|
|
int wfx_hif_set_block_ack_policy(struct wfx_vif *wvif, u8 tx_tid_policy, u8 rx_tid_policy);
|
2022-01-13 09:55:07 +01:00
|
|
|
int wfx_hif_set_association_mode(struct wfx_vif *wvif, int ampdu_density,
|
|
|
|
bool greenfield, bool short_preamble);
|
2022-01-13 09:55:13 +01:00
|
|
|
int wfx_hif_set_tx_rate_retry_policy(struct wfx_vif *wvif, int policy_index, u8 *rates);
|
2022-01-13 09:55:07 +01:00
|
|
|
int wfx_hif_keep_alive_period(struct wfx_vif *wvif, int period);
|
|
|
|
int wfx_hif_set_arp_ipv4_filter(struct wfx_vif *wvif, int idx, __be32 *addr);
|
|
|
|
int wfx_hif_use_multi_tx_conf(struct wfx_dev *wdev, bool enable);
|
|
|
|
int wfx_hif_set_uapsd_info(struct wfx_vif *wvif, unsigned long val);
|
|
|
|
int wfx_hif_erp_use_protection(struct wfx_vif *wvif, bool enable);
|
|
|
|
int wfx_hif_slot_time(struct wfx_vif *wvif, int val);
|
|
|
|
int wfx_hif_wep_default_key_id(struct wfx_vif *wvif, int val);
|
|
|
|
int wfx_hif_rts_threshold(struct wfx_vif *wvif, int val);
|
2019-09-19 14:25:43 +00:00
|
|
|
|
|
|
|
#endif
|