iwlwifi: move iwl_clear_stations_table to iwl-sta.c
This patch moves iwl_clear_stations_table into iwl-sta.c Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Signed-off-by: Reinette Chatre <reinette.chatre@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
This commit is contained in:
parent
ce546fd2ea
commit
83dde8c905
|
@ -37,6 +37,7 @@
|
||||||
#include "iwl-io.h"
|
#include "iwl-io.h"
|
||||||
#include "iwl-rfkill.h"
|
#include "iwl-rfkill.h"
|
||||||
#include "iwl-power.h"
|
#include "iwl-power.h"
|
||||||
|
#include "iwl-sta.h"
|
||||||
|
|
||||||
|
|
||||||
MODULE_DESCRIPTION("iwl core");
|
MODULE_DESCRIPTION("iwl core");
|
||||||
|
@ -237,28 +238,6 @@ int iwl_hw_nic_init(struct iwl_priv *priv)
|
||||||
}
|
}
|
||||||
EXPORT_SYMBOL(iwl_hw_nic_init);
|
EXPORT_SYMBOL(iwl_hw_nic_init);
|
||||||
|
|
||||||
/**
|
|
||||||
* iwl_clear_stations_table - Clear the driver's station table
|
|
||||||
*
|
|
||||||
* NOTE: This does not clear or otherwise alter the device's station table.
|
|
||||||
*/
|
|
||||||
void iwl_clear_stations_table(struct iwl_priv *priv)
|
|
||||||
{
|
|
||||||
unsigned long flags;
|
|
||||||
|
|
||||||
spin_lock_irqsave(&priv->sta_lock, flags);
|
|
||||||
|
|
||||||
if (iwl_is_alive(priv) &&
|
|
||||||
!test_bit(STATUS_EXIT_PENDING, &priv->status) &&
|
|
||||||
iwl_send_cmd_pdu_async(priv, REPLY_REMOVE_ALL_STA, 0, NULL, NULL))
|
|
||||||
IWL_ERROR("Couldn't clear the station table\n");
|
|
||||||
|
|
||||||
priv->num_stations = 0;
|
|
||||||
memset(priv->stations, 0, sizeof(priv->stations));
|
|
||||||
|
|
||||||
spin_unlock_irqrestore(&priv->sta_lock, flags);
|
|
||||||
}
|
|
||||||
EXPORT_SYMBOL(iwl_clear_stations_table);
|
|
||||||
|
|
||||||
void iwl_reset_qos(struct iwl_priv *priv)
|
void iwl_reset_qos(struct iwl_priv *priv)
|
||||||
{
|
{
|
||||||
|
|
|
@ -182,7 +182,6 @@ struct iwl_cfg {
|
||||||
struct ieee80211_hw *iwl_alloc_all(struct iwl_cfg *cfg,
|
struct ieee80211_hw *iwl_alloc_all(struct iwl_cfg *cfg,
|
||||||
struct ieee80211_ops *hw_ops);
|
struct ieee80211_ops *hw_ops);
|
||||||
void iwl_hw_detect(struct iwl_priv *priv);
|
void iwl_hw_detect(struct iwl_priv *priv);
|
||||||
void iwl_clear_stations_table(struct iwl_priv *priv);
|
|
||||||
void iwl_reset_qos(struct iwl_priv *priv);
|
void iwl_reset_qos(struct iwl_priv *priv);
|
||||||
void iwl_set_rxon_chain(struct iwl_priv *priv);
|
void iwl_set_rxon_chain(struct iwl_priv *priv);
|
||||||
int iwl_set_rxon_channel(struct iwl_priv *priv, struct ieee80211_channel *ch);
|
int iwl_set_rxon_channel(struct iwl_priv *priv, struct ieee80211_channel *ch);
|
||||||
|
|
|
@ -463,6 +463,29 @@ out:
|
||||||
}
|
}
|
||||||
EXPORT_SYMBOL(iwl_remove_station);
|
EXPORT_SYMBOL(iwl_remove_station);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* iwl_clear_stations_table - Clear the driver's station table
|
||||||
|
*
|
||||||
|
* NOTE: This does not clear or otherwise alter the device's station table.
|
||||||
|
*/
|
||||||
|
void iwl_clear_stations_table(struct iwl_priv *priv)
|
||||||
|
{
|
||||||
|
unsigned long flags;
|
||||||
|
|
||||||
|
spin_lock_irqsave(&priv->sta_lock, flags);
|
||||||
|
|
||||||
|
if (iwl_is_alive(priv) &&
|
||||||
|
!test_bit(STATUS_EXIT_PENDING, &priv->status) &&
|
||||||
|
iwl_send_cmd_pdu_async(priv, REPLY_REMOVE_ALL_STA, 0, NULL, NULL))
|
||||||
|
IWL_ERROR("Couldn't clear the station table\n");
|
||||||
|
|
||||||
|
priv->num_stations = 0;
|
||||||
|
memset(priv->stations, 0, sizeof(priv->stations));
|
||||||
|
|
||||||
|
spin_unlock_irqrestore(&priv->sta_lock, flags);
|
||||||
|
}
|
||||||
|
EXPORT_SYMBOL(iwl_clear_stations_table);
|
||||||
|
|
||||||
static int iwl_get_free_ucode_key_index(struct iwl_priv *priv)
|
static int iwl_get_free_ucode_key_index(struct iwl_priv *priv)
|
||||||
{
|
{
|
||||||
int i;
|
int i;
|
||||||
|
|
|
@ -53,6 +53,7 @@ void iwl_update_tkip_key(struct iwl_priv *priv,
|
||||||
|
|
||||||
int iwl_rxon_add_station(struct iwl_priv *priv, const u8 *addr, int is_ap);
|
int iwl_rxon_add_station(struct iwl_priv *priv, const u8 *addr, int is_ap);
|
||||||
int iwl_remove_station(struct iwl_priv *priv, const u8 *addr, int is_ap);
|
int iwl_remove_station(struct iwl_priv *priv, const u8 *addr, int is_ap);
|
||||||
|
void iwl_clear_stations_table(struct iwl_priv *priv);
|
||||||
int iwl_get_sta_id(struct iwl_priv *priv, struct ieee80211_hdr *hdr);
|
int iwl_get_sta_id(struct iwl_priv *priv, struct ieee80211_hdr *hdr);
|
||||||
int iwl_get_ra_sta_id(struct iwl_priv *priv, struct ieee80211_hdr *hdr);
|
int iwl_get_ra_sta_id(struct iwl_priv *priv, struct ieee80211_hdr *hdr);
|
||||||
u8 iwl_add_station_flags(struct iwl_priv *priv, const u8 *addr,
|
u8 iwl_add_station_flags(struct iwl_priv *priv, const u8 *addr,
|
||||||
|
|
Loading…
Reference in New Issue