diff options
Diffstat (limited to 'drivers/net/wireless/wl12xx/acx.h')
-rw-r--r-- | drivers/net/wireless/wl12xx/acx.h | 91 |
1 files changed, 48 insertions, 43 deletions
diff --git a/drivers/net/wireless/wl12xx/acx.h b/drivers/net/wireless/wl12xx/acx.h index e3f93b4b3429..69892b40c2df 100644 --- a/drivers/net/wireless/wl12xx/acx.h +++ b/drivers/net/wireless/wl12xx/acx.h | |||
@@ -171,13 +171,6 @@ struct acx_rx_msdu_lifetime { | |||
171 | __le32 lifetime; | 171 | __le32 lifetime; |
172 | } __packed; | 172 | } __packed; |
173 | 173 | ||
174 | struct acx_packet_detection { | ||
175 | struct acx_header header; | ||
176 | |||
177 | __le32 threshold; | ||
178 | } __packed; | ||
179 | |||
180 | |||
181 | enum acx_slot_type { | 174 | enum acx_slot_type { |
182 | SLOT_TIME_LONG = 0, | 175 | SLOT_TIME_LONG = 0, |
183 | SLOT_TIME_SHORT = 1, | 176 | SLOT_TIME_SHORT = 1, |
@@ -654,11 +647,6 @@ struct acx_rate_class { | |||
654 | u8 reserved; | 647 | u8 reserved; |
655 | }; | 648 | }; |
656 | 649 | ||
657 | #define ACX_TX_BASIC_RATE 0 | ||
658 | #define ACX_TX_AP_FULL_RATE 1 | ||
659 | #define ACX_TX_BASIC_RATE_P2P 2 | ||
660 | #define ACX_TX_AP_MODE_MGMT_RATE 4 | ||
661 | #define ACX_TX_AP_MODE_BCST_RATE 5 | ||
662 | struct acx_rate_policy { | 650 | struct acx_rate_policy { |
663 | struct acx_header header; | 651 | struct acx_header header; |
664 | 652 | ||
@@ -1234,39 +1222,48 @@ enum { | |||
1234 | }; | 1222 | }; |
1235 | 1223 | ||
1236 | 1224 | ||
1237 | int wl1271_acx_wake_up_conditions(struct wl1271 *wl); | 1225 | int wl1271_acx_wake_up_conditions(struct wl1271 *wl, |
1226 | struct wl12xx_vif *wlvif); | ||
1238 | int wl1271_acx_sleep_auth(struct wl1271 *wl, u8 sleep_auth); | 1227 | int wl1271_acx_sleep_auth(struct wl1271 *wl, u8 sleep_auth); |
1239 | int wl1271_acx_tx_power(struct wl1271 *wl, int power); | 1228 | int wl1271_acx_tx_power(struct wl1271 *wl, struct wl12xx_vif *wlvif, |
1240 | int wl1271_acx_feature_cfg(struct wl1271 *wl); | 1229 | int power); |
1230 | int wl1271_acx_feature_cfg(struct wl1271 *wl, struct wl12xx_vif *wlvif); | ||
1241 | int wl1271_acx_mem_map(struct wl1271 *wl, | 1231 | int wl1271_acx_mem_map(struct wl1271 *wl, |
1242 | struct acx_header *mem_map, size_t len); | 1232 | struct acx_header *mem_map, size_t len); |
1243 | int wl1271_acx_rx_msdu_life_time(struct wl1271 *wl); | 1233 | int wl1271_acx_rx_msdu_life_time(struct wl1271 *wl); |
1244 | int wl1271_acx_pd_threshold(struct wl1271 *wl); | 1234 | int wl1271_acx_slot(struct wl1271 *wl, struct wl12xx_vif *wlvif, |
1245 | int wl1271_acx_slot(struct wl1271 *wl, enum acx_slot_type slot_time); | 1235 | enum acx_slot_type slot_time); |
1246 | int wl1271_acx_group_address_tbl(struct wl1271 *wl, bool enable, | 1236 | int wl1271_acx_group_address_tbl(struct wl1271 *wl, struct wl12xx_vif *wlvif, |
1247 | void *mc_list, u32 mc_list_len); | 1237 | bool enable, void *mc_list, u32 mc_list_len); |
1248 | int wl1271_acx_service_period_timeout(struct wl1271 *wl); | 1238 | int wl1271_acx_service_period_timeout(struct wl1271 *wl, |
1249 | int wl1271_acx_rts_threshold(struct wl1271 *wl, u32 rts_threshold); | 1239 | struct wl12xx_vif *wlvif); |
1240 | int wl1271_acx_rts_threshold(struct wl1271 *wl, struct wl12xx_vif *wlvif, | ||
1241 | u32 rts_threshold); | ||
1250 | int wl1271_acx_dco_itrim_params(struct wl1271 *wl); | 1242 | int wl1271_acx_dco_itrim_params(struct wl1271 *wl); |
1251 | int wl1271_acx_beacon_filter_opt(struct wl1271 *wl, bool enable_filter); | 1243 | int wl1271_acx_beacon_filter_opt(struct wl1271 *wl, struct wl12xx_vif *wlvif, |
1252 | int wl1271_acx_beacon_filter_table(struct wl1271 *wl); | 1244 | bool enable_filter); |
1253 | int wl1271_acx_conn_monit_params(struct wl1271 *wl, bool enable); | 1245 | int wl1271_acx_beacon_filter_table(struct wl1271 *wl, |
1246 | struct wl12xx_vif *wlvif); | ||
1247 | int wl1271_acx_conn_monit_params(struct wl1271 *wl, struct wl12xx_vif *wlvif, | ||
1248 | bool enable); | ||
1254 | int wl1271_acx_sg_enable(struct wl1271 *wl, bool enable); | 1249 | int wl1271_acx_sg_enable(struct wl1271 *wl, bool enable); |
1255 | int wl12xx_acx_sg_cfg(struct wl1271 *wl); | 1250 | int wl12xx_acx_sg_cfg(struct wl1271 *wl); |
1256 | int wl1271_acx_cca_threshold(struct wl1271 *wl); | 1251 | int wl1271_acx_cca_threshold(struct wl1271 *wl); |
1257 | int wl1271_acx_bcn_dtim_options(struct wl1271 *wl); | 1252 | int wl1271_acx_bcn_dtim_options(struct wl1271 *wl, struct wl12xx_vif *wlvif); |
1258 | int wl1271_acx_aid(struct wl1271 *wl, u16 aid); | 1253 | int wl1271_acx_aid(struct wl1271 *wl, struct wl12xx_vif *wlvif, u16 aid); |
1259 | int wl1271_acx_event_mbox_mask(struct wl1271 *wl, u32 event_mask); | 1254 | int wl1271_acx_event_mbox_mask(struct wl1271 *wl, u32 event_mask); |
1260 | int wl1271_acx_set_preamble(struct wl1271 *wl, enum acx_preamble_type preamble); | 1255 | int wl1271_acx_set_preamble(struct wl1271 *wl, struct wl12xx_vif *wlvif, |
1261 | int wl1271_acx_cts_protect(struct wl1271 *wl, | 1256 | enum acx_preamble_type preamble); |
1257 | int wl1271_acx_cts_protect(struct wl1271 *wl, struct wl12xx_vif *wlvif, | ||
1262 | enum acx_ctsprotect_type ctsprotect); | 1258 | enum acx_ctsprotect_type ctsprotect); |
1263 | int wl1271_acx_statistics(struct wl1271 *wl, struct acx_statistics *stats); | 1259 | int wl1271_acx_statistics(struct wl1271 *wl, struct acx_statistics *stats); |
1264 | int wl1271_acx_sta_rate_policies(struct wl1271 *wl); | 1260 | int wl1271_acx_sta_rate_policies(struct wl1271 *wl, struct wl12xx_vif *wlvif); |
1265 | int wl1271_acx_ap_rate_policy(struct wl1271 *wl, struct conf_tx_rate_class *c, | 1261 | int wl1271_acx_ap_rate_policy(struct wl1271 *wl, struct conf_tx_rate_class *c, |
1266 | u8 idx); | 1262 | u8 idx); |
1267 | int wl1271_acx_ac_cfg(struct wl1271 *wl, u8 ac, u8 cw_min, u16 cw_max, | 1263 | int wl1271_acx_ac_cfg(struct wl1271 *wl, struct wl12xx_vif *wlvif, |
1268 | u8 aifsn, u16 txop); | 1264 | u8 ac, u8 cw_min, u16 cw_max, u8 aifsn, u16 txop); |
1269 | int wl1271_acx_tid_cfg(struct wl1271 *wl, u8 queue_id, u8 channel_type, | 1265 | int wl1271_acx_tid_cfg(struct wl1271 *wl, struct wl12xx_vif *wlvif, |
1266 | u8 queue_id, u8 channel_type, | ||
1270 | u8 tsid, u8 ps_scheme, u8 ack_policy, | 1267 | u8 tsid, u8 ps_scheme, u8 ack_policy, |
1271 | u32 apsd_conf0, u32 apsd_conf1); | 1268 | u32 apsd_conf0, u32 apsd_conf1); |
1272 | int wl1271_acx_frag_threshold(struct wl1271 *wl, u32 frag_threshold); | 1269 | int wl1271_acx_frag_threshold(struct wl1271 *wl, u32 frag_threshold); |
@@ -1276,26 +1273,34 @@ int wl1271_acx_init_mem_config(struct wl1271 *wl); | |||
1276 | int wl1271_acx_host_if_cfg_bitmap(struct wl1271 *wl, u32 host_cfg_bitmap); | 1273 | int wl1271_acx_host_if_cfg_bitmap(struct wl1271 *wl, u32 host_cfg_bitmap); |
1277 | int wl1271_acx_init_rx_interrupt(struct wl1271 *wl); | 1274 | int wl1271_acx_init_rx_interrupt(struct wl1271 *wl); |
1278 | int wl1271_acx_smart_reflex(struct wl1271 *wl); | 1275 | int wl1271_acx_smart_reflex(struct wl1271 *wl); |
1279 | int wl1271_acx_bet_enable(struct wl1271 *wl, bool enable); | 1276 | int wl1271_acx_bet_enable(struct wl1271 *wl, struct wl12xx_vif *wlvif, |
1280 | int wl1271_acx_arp_ip_filter(struct wl1271 *wl, u8 enable, __be32 address); | 1277 | bool enable); |
1278 | int wl1271_acx_arp_ip_filter(struct wl1271 *wl, struct wl12xx_vif *wlvif, | ||
1279 | u8 enable, __be32 address); | ||
1281 | int wl1271_acx_pm_config(struct wl1271 *wl); | 1280 | int wl1271_acx_pm_config(struct wl1271 *wl); |
1282 | int wl1271_acx_keep_alive_mode(struct wl1271 *wl, bool enable); | 1281 | int wl1271_acx_keep_alive_mode(struct wl1271 *wl, struct wl12xx_vif *vif, |
1283 | int wl1271_acx_keep_alive_config(struct wl1271 *wl, u8 index, u8 tpl_valid); | 1282 | bool enable); |
1284 | int wl1271_acx_rssi_snr_trigger(struct wl1271 *wl, bool enable, | 1283 | int wl1271_acx_keep_alive_config(struct wl1271 *wl, struct wl12xx_vif *wlvif, |
1285 | s16 thold, u8 hyst); | 1284 | u8 index, u8 tpl_valid); |
1286 | int wl1271_acx_rssi_snr_avg_weights(struct wl1271 *wl); | 1285 | int wl1271_acx_rssi_snr_trigger(struct wl1271 *wl, struct wl12xx_vif *wlvif, |
1286 | bool enable, s16 thold, u8 hyst); | ||
1287 | int wl1271_acx_rssi_snr_avg_weights(struct wl1271 *wl, | ||
1288 | struct wl12xx_vif *wlvif); | ||
1287 | int wl1271_acx_set_ht_capabilities(struct wl1271 *wl, | 1289 | int wl1271_acx_set_ht_capabilities(struct wl1271 *wl, |
1288 | struct ieee80211_sta_ht_cap *ht_cap, | 1290 | struct ieee80211_sta_ht_cap *ht_cap, |
1289 | bool allow_ht_operation, u8 hlid); | 1291 | bool allow_ht_operation, u8 hlid); |
1290 | int wl1271_acx_set_ht_information(struct wl1271 *wl, | 1292 | int wl1271_acx_set_ht_information(struct wl1271 *wl, |
1293 | struct wl12xx_vif *wlvif, | ||
1291 | u16 ht_operation_mode); | 1294 | u16 ht_operation_mode); |
1292 | int wl12xx_acx_set_ba_initiator_policy(struct wl1271 *wl); | 1295 | int wl12xx_acx_set_ba_initiator_policy(struct wl1271 *wl, |
1296 | struct wl12xx_vif *wlvif); | ||
1293 | int wl12xx_acx_set_ba_receiver_session(struct wl1271 *wl, u8 tid_index, | 1297 | int wl12xx_acx_set_ba_receiver_session(struct wl1271 *wl, u8 tid_index, |
1294 | u16 ssn, bool enable, u8 peer_hlid); | 1298 | u16 ssn, bool enable, u8 peer_hlid); |
1295 | int wl1271_acx_tsf_info(struct wl1271 *wl, u64 *mactime); | 1299 | int wl1271_acx_tsf_info(struct wl1271 *wl, u64 *mactime); |
1296 | int wl1271_acx_ps_rx_streaming(struct wl1271 *wl, bool enable); | 1300 | int wl1271_acx_ps_rx_streaming(struct wl1271 *wl, struct wl12xx_vif *wlvif, |
1297 | int wl1271_acx_ap_max_tx_retry(struct wl1271 *wl); | 1301 | bool enable); |
1298 | int wl1271_acx_config_ps(struct wl1271 *wl); | 1302 | int wl1271_acx_ap_max_tx_retry(struct wl1271 *wl, struct wl12xx_vif *wlvif); |
1303 | int wl12xx_acx_config_ps(struct wl1271 *wl, struct wl12xx_vif *wlvif); | ||
1299 | int wl1271_acx_set_inconnection_sta(struct wl1271 *wl, u8 *addr); | 1304 | int wl1271_acx_set_inconnection_sta(struct wl1271 *wl, u8 *addr); |
1300 | int wl1271_acx_fm_coex(struct wl1271 *wl); | 1305 | int wl1271_acx_fm_coex(struct wl1271 *wl); |
1301 | int wl12xx_acx_set_rate_mgmt_params(struct wl1271 *wl); | 1306 | int wl12xx_acx_set_rate_mgmt_params(struct wl1271 *wl); |