diff options
author | Johannes Berg <johannes.berg@intel.com> | 2010-09-22 12:02:01 -0400 |
---|---|---|
committer | Wey-Yi Guy <wey-yi.w.guy@intel.com> | 2010-10-07 18:50:33 -0400 |
commit | a30e3112a8bcb5bc1caa48547e597de3992e1b21 (patch) | |
tree | 3690cb36a987af1a3778011390221e48763c1b80 /drivers/net/wireless/iwlwifi/iwl-sta.h | |
parent | d3f5ba958d6c425a87535c6fa2a69ca90eb6e930 (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.h | 35 |
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 | ||
46 | int iwl_remove_default_wep_key(struct iwl_priv *priv, | ||
47 | struct iwl_rxon_context *ctx, | ||
48 | struct ieee80211_key_conf *key); | ||
49 | int iwl_set_default_wep_key(struct iwl_priv *priv, | ||
50 | struct iwl_rxon_context *ctx, | ||
51 | struct ieee80211_key_conf *key); | ||
52 | int iwl_restore_default_wep_keys(struct iwl_priv *priv, | ||
53 | struct iwl_rxon_context *ctx); | ||
54 | int iwl_set_dynamic_key(struct iwl_priv *priv, struct iwl_rxon_context *ctx, | ||
55 | struct ieee80211_key_conf *key, u8 sta_id); | ||
56 | int iwl_remove_dynamic_key(struct iwl_priv *priv, struct iwl_rxon_context *ctx, | ||
57 | struct ieee80211_key_conf *key, u8 sta_id); | ||
58 | void 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 | |||
63 | void iwl_restore_stations(struct iwl_priv *priv, struct iwl_rxon_context *ctx); | 46 | void iwl_restore_stations(struct iwl_priv *priv, struct iwl_rxon_context *ctx); |
64 | void iwl_clear_ucode_stations(struct iwl_priv *priv, | 47 | void iwl_clear_ucode_stations(struct iwl_priv *priv, |
65 | struct iwl_rxon_context *ctx); | 48 | struct iwl_rxon_context *ctx); |
66 | int iwl_alloc_bcast_station(struct iwl_priv *priv, struct iwl_rxon_context *ctx, | ||
67 | bool init_lq); | ||
68 | void iwl_dealloc_bcast_stations(struct iwl_priv *priv); | 49 | void iwl_dealloc_bcast_stations(struct iwl_priv *priv); |
69 | int iwl_update_bcast_stations(struct iwl_priv *priv); | ||
70 | int iwl_get_free_ucode_key_index(struct iwl_priv *priv); | 50 | int iwl_get_free_ucode_key_index(struct iwl_priv *priv); |
71 | int iwl_send_add_sta(struct iwl_priv *priv, | 51 | int iwl_send_add_sta(struct iwl_priv *priv, |
72 | struct iwl_addsta_cmd *sta, u8 flags); | 52 | struct iwl_addsta_cmd *sta, u8 flags); |
73 | int iwl_add_bssid_station(struct iwl_priv *priv, struct iwl_rxon_context *ctx, | ||
74 | const u8 *addr, bool init_rs, u8 *sta_id_r); | ||
75 | int iwl_add_station_common(struct iwl_priv *priv, struct iwl_rxon_context *ctx, | 53 | int 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); |
80 | int iwl_mac_sta_remove(struct ieee80211_hw *hw, struct ieee80211_vif *vif, | 58 | int iwl_mac_sta_remove(struct ieee80211_hw *hw, struct ieee80211_vif *vif, |
81 | struct ieee80211_sta *sta); | 59 | struct ieee80211_sta *sta); |
82 | int iwl_sta_tx_modify_enable_tid(struct iwl_priv *priv, int sta_id, int tid); | 60 | |
83 | int iwl_sta_rx_agg_start(struct iwl_priv *priv, struct ieee80211_sta *sta, | 61 | u8 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); |
85 | int iwl_sta_rx_agg_stop(struct iwl_priv *priv, struct ieee80211_sta *sta, | 63 | |
86 | int tid); | 64 | int iwl_send_lq_cmd(struct iwl_priv *priv, struct iwl_rxon_context *ctx, |
87 | void iwl_sta_modify_ps_wake(struct iwl_priv *priv, int sta_id); | 65 | struct iwl_link_quality_cmd *lq, u8 flags, bool init); |
88 | void 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 |