1 /* SPDX-License-Identifier: GPL-2.0-only */
3 * Implementation of the host-to-chip MIBs of the hardware API.
5 * Copyright (c) 2017-2020, Silicon Laboratories, Inc.
6 * Copyright (c) 2010, ST-Ericsson
7 * Copyright (C) 2010, ST-Ericsson SA
9 #ifndef WFX_HIF_TX_MIB_H
10 #define WFX_HIF_TX_MIB_H
12 #include <linux/types.h>
17 struct wfx_hif_ie_table_entry
;
18 struct wfx_hif_mib_extended_count_table
;
20 int wfx_hif_set_output_power(struct wfx_vif
*wvif
, int val
);
21 int wfx_hif_set_beacon_wakeup_period(struct wfx_vif
*wvif
,
22 unsigned int dtim_interval
, unsigned int listen_interval
);
23 int wfx_hif_set_rcpi_rssi_threshold(struct wfx_vif
*wvif
, int rssi_thold
, int rssi_hyst
);
24 int wfx_hif_get_counters_table(struct wfx_dev
*wdev
, int vif_id
,
25 struct wfx_hif_mib_extended_count_table
*arg
);
26 int wfx_hif_set_macaddr(struct wfx_vif
*wvif
, u8
*mac
);
27 int wfx_hif_set_rx_filter(struct wfx_vif
*wvif
, bool filter_bssid
, bool fwd_probe_req
);
28 int wfx_hif_set_beacon_filter_table(struct wfx_vif
*wvif
, int tbl_len
,
29 const struct wfx_hif_ie_table_entry
*tbl
);
30 int wfx_hif_beacon_filter_control(struct wfx_vif
*wvif
, int enable
, int beacon_count
);
31 int wfx_hif_set_operational_mode(struct wfx_dev
*wdev
, enum wfx_hif_op_power_mode mode
);
32 int wfx_hif_set_template_frame(struct wfx_vif
*wvif
, struct sk_buff
*skb
,
33 u8 frame_type
, int init_rate
);
34 int wfx_hif_set_mfp(struct wfx_vif
*wvif
, bool capable
, bool required
);
35 int wfx_hif_set_block_ack_policy(struct wfx_vif
*wvif
, u8 tx_tid_policy
, u8 rx_tid_policy
);
36 int wfx_hif_set_association_mode(struct wfx_vif
*wvif
, int ampdu_density
,
37 bool greenfield
, bool short_preamble
);
38 int wfx_hif_set_tx_rate_retry_policy(struct wfx_vif
*wvif
, int policy_index
, u8
*rates
);
39 int wfx_hif_keep_alive_period(struct wfx_vif
*wvif
, int period
);
40 int wfx_hif_set_arp_ipv4_filter(struct wfx_vif
*wvif
, int idx
, __be32
*addr
);
41 int wfx_hif_use_multi_tx_conf(struct wfx_dev
*wdev
, bool enable
);
42 int wfx_hif_set_uapsd_info(struct wfx_vif
*wvif
, unsigned long val
);
43 int wfx_hif_erp_use_protection(struct wfx_vif
*wvif
, bool enable
);
44 int wfx_hif_slot_time(struct wfx_vif
*wvif
, int val
);
45 int wfx_hif_wep_default_key_id(struct wfx_vif
*wvif
, int val
);
46 int wfx_hif_rts_threshold(struct wfx_vif
*wvif
, int val
);