aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/iwlwifi/iwl-sta.h
diff options
context:
space:
mode:
authorJohannes Berg <johannes.berg@intel.com>2010-09-22 12:02:01 -0400
committerWey-Yi Guy <wey-yi.w.guy@intel.com>2010-10-07 18:50:33 -0400
commita30e3112a8bcb5bc1caa48547e597de3992e1b21 (patch)
tree3690cb36a987af1a3778011390221e48763c1b80 /drivers/net/wireless/iwlwifi/iwl-sta.h
parentd3f5ba958d6c425a87535c6fa2a69ca90eb6e930 (diff)
iwlwifi: move agn specific station code there
By duplicating a little bit of code between 3945 and agn, we can move a lot of code into an agn specific station management file and thus reduce the amount of code in core that is dead to 3945. before: text data bss dec hex filename 212886 3872 96 216854 34f16 iwlcore.ko 620542 10448 304 631294 9a1fe iwlagn.ko 314013 3264 196 317473 4d821 iwl3945.ko after: text data bss dec hex filename 202857 3872 92 206821 327e5 iwlcore.ko 629102 10448 308 639858 9c372 iwlagn.ko 314240 3264 196 317700 4d904 iwl3945.ko delta: -10029 iwlcore.ko 8560 iwlagn.ko 227 iwl3945.ko so it's a net win even if you have both loaded, likely because a lot of EXPORT_SYMBOLs go away. Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
Diffstat (limited to 'drivers/net/wireless/iwlwifi/iwl-sta.h')
-rw-r--r--drivers/net/wireless/iwlwifi/iwl-sta.h35
1 files changed, 6 insertions, 29 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl-sta.h b/drivers/net/wireless/iwlwifi/iwl-sta.h
index 56bad3f60d81..06475872eee4 100644
--- a/drivers/net/wireless/iwlwifi/iwl-sta.h
+++ b/drivers/net/wireless/iwlwifi/iwl-sta.h
@@ -43,35 +43,13 @@
43#define IWL_STA_BCAST BIT(4) /* this station is the special bcast station */ 43#define IWL_STA_BCAST BIT(4) /* this station is the special bcast station */
44 44
45 45
46int iwl_remove_default_wep_key(struct iwl_priv *priv,
47 struct iwl_rxon_context *ctx,
48 struct ieee80211_key_conf *key);
49int iwl_set_default_wep_key(struct iwl_priv *priv,
50 struct iwl_rxon_context *ctx,
51 struct ieee80211_key_conf *key);
52int iwl_restore_default_wep_keys(struct iwl_priv *priv,
53 struct iwl_rxon_context *ctx);
54int iwl_set_dynamic_key(struct iwl_priv *priv, struct iwl_rxon_context *ctx,
55 struct ieee80211_key_conf *key, u8 sta_id);
56int iwl_remove_dynamic_key(struct iwl_priv *priv, struct iwl_rxon_context *ctx,
57 struct ieee80211_key_conf *key, u8 sta_id);
58void iwl_update_tkip_key(struct iwl_priv *priv,
59 struct iwl_rxon_context *ctx,
60 struct ieee80211_key_conf *keyconf,
61 struct ieee80211_sta *sta, u32 iv32, u16 *phase1key);
62
63void iwl_restore_stations(struct iwl_priv *priv, struct iwl_rxon_context *ctx); 46void iwl_restore_stations(struct iwl_priv *priv, struct iwl_rxon_context *ctx);
64void iwl_clear_ucode_stations(struct iwl_priv *priv, 47void iwl_clear_ucode_stations(struct iwl_priv *priv,
65 struct iwl_rxon_context *ctx); 48 struct iwl_rxon_context *ctx);
66int iwl_alloc_bcast_station(struct iwl_priv *priv, struct iwl_rxon_context *ctx,
67 bool init_lq);
68void iwl_dealloc_bcast_stations(struct iwl_priv *priv); 49void iwl_dealloc_bcast_stations(struct iwl_priv *priv);
69int iwl_update_bcast_stations(struct iwl_priv *priv);
70int iwl_get_free_ucode_key_index(struct iwl_priv *priv); 50int iwl_get_free_ucode_key_index(struct iwl_priv *priv);
71int iwl_send_add_sta(struct iwl_priv *priv, 51int iwl_send_add_sta(struct iwl_priv *priv,
72 struct iwl_addsta_cmd *sta, u8 flags); 52 struct iwl_addsta_cmd *sta, u8 flags);
73int iwl_add_bssid_station(struct iwl_priv *priv, struct iwl_rxon_context *ctx,
74 const u8 *addr, bool init_rs, u8 *sta_id_r);
75int iwl_add_station_common(struct iwl_priv *priv, struct iwl_rxon_context *ctx, 53int iwl_add_station_common(struct iwl_priv *priv, struct iwl_rxon_context *ctx,
76 const u8 *addr, bool is_ap, 54 const u8 *addr, bool is_ap,
77 struct ieee80211_sta *sta, u8 *sta_id_r); 55 struct ieee80211_sta *sta, u8 *sta_id_r);
@@ -79,13 +57,12 @@ int iwl_remove_station(struct iwl_priv *priv, const u8 sta_id,
79 const u8 *addr); 57 const u8 *addr);
80int iwl_mac_sta_remove(struct ieee80211_hw *hw, struct ieee80211_vif *vif, 58int iwl_mac_sta_remove(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
81 struct ieee80211_sta *sta); 59 struct ieee80211_sta *sta);
82int iwl_sta_tx_modify_enable_tid(struct iwl_priv *priv, int sta_id, int tid); 60
83int iwl_sta_rx_agg_start(struct iwl_priv *priv, struct ieee80211_sta *sta, 61u8 iwl_prep_station(struct iwl_priv *priv, struct iwl_rxon_context *ctx,
84 int tid, u16 ssn); 62 const u8 *addr, bool is_ap, struct ieee80211_sta *sta);
85int iwl_sta_rx_agg_stop(struct iwl_priv *priv, struct ieee80211_sta *sta, 63
86 int tid); 64int iwl_send_lq_cmd(struct iwl_priv *priv, struct iwl_rxon_context *ctx,
87void iwl_sta_modify_ps_wake(struct iwl_priv *priv, int sta_id); 65 struct iwl_link_quality_cmd *lq, u8 flags, bool init);
88void iwl_sta_modify_sleep_tx_count(struct iwl_priv *priv, int sta_id, int cnt);
89 66
90/** 67/**
91 * iwl_clear_driver_stations - clear knowledge of all stations from driver 68 * iwl_clear_driver_stations - clear knowledge of all stations from driver