提交 17e72782 编写于 作者: T Tomas Winkler 提交者: John W. Linville

iwlwifi: align set channel with mac80211

This patch makes use of mac80211 defaults for channel and band.
Older code that uses G band channel 6 was removed. This patch also
changes iwl_set_rxon_channel signature.
Signed-off-by: NTomas Winkler <tomas.winkler@intel.com>
Signed-off-by: NZhu Yi <yi.zhu@intel.com>
Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
上级 681c0050
...@@ -2841,7 +2841,7 @@ static int iwl4965_mac_config(struct ieee80211_hw *hw, struct ieee80211_conf *co ...@@ -2841,7 +2841,7 @@ static int iwl4965_mac_config(struct ieee80211_hw *hw, struct ieee80211_conf *co
) )
priv->staging_rxon.flags = 0; priv->staging_rxon.flags = 0;
iwl_set_rxon_channel(priv, conf->channel->band, channel); iwl_set_rxon_channel(priv, conf->channel);
iwl_set_flags_for_band(priv, conf->channel->band); iwl_set_flags_for_band(priv, conf->channel->band);
......
...@@ -773,7 +773,7 @@ void iwl_set_rxon_chain(struct iwl_priv *priv) ...@@ -773,7 +773,7 @@ void iwl_set_rxon_chain(struct iwl_priv *priv)
EXPORT_SYMBOL(iwl_set_rxon_chain); EXPORT_SYMBOL(iwl_set_rxon_chain);
/** /**
* iwlcore_set_rxon_channel - Set the phymode and channel values in staging RXON * iwl_set_rxon_channel - Set the phymode and channel values in staging RXON
* @phymode: MODE_IEEE80211A sets to 5.2GHz; all else set to 2.4GHz * @phymode: MODE_IEEE80211A sets to 5.2GHz; all else set to 2.4GHz
* @channel: Any channel valid for the requested phymode * @channel: Any channel valid for the requested phymode
...@@ -782,10 +782,11 @@ EXPORT_SYMBOL(iwl_set_rxon_chain); ...@@ -782,10 +782,11 @@ EXPORT_SYMBOL(iwl_set_rxon_chain);
* NOTE: Does not commit to the hardware; it sets appropriate bit fields * NOTE: Does not commit to the hardware; it sets appropriate bit fields
* in the staging RXON flag structure based on the phymode * in the staging RXON flag structure based on the phymode
*/ */
int iwl_set_rxon_channel(struct iwl_priv *priv, int iwl_set_rxon_channel(struct iwl_priv *priv, struct ieee80211_channel *ch)
enum ieee80211_band band,
u16 channel)
{ {
enum ieee80211_band band = ch->band;
u16 channel = ieee80211_frequency_to_channel(ch->center_freq);
if (!iwl_get_channel_info(priv, band, channel)) { if (!iwl_get_channel_info(priv, band, channel)) {
IWL_DEBUG_INFO("Could not set channel to %d [%d]\n", IWL_DEBUG_INFO("Could not set channel to %d [%d]\n",
channel, band); channel, band);
...@@ -910,8 +911,6 @@ int iwl_init_drv(struct iwl_priv *priv) ...@@ -910,8 +911,6 @@ int iwl_init_drv(struct iwl_priv *priv)
priv->qos_data.qos_active = 0; priv->qos_data.qos_active = 0;
priv->qos_data.qos_cap.val = 0; priv->qos_data.qos_cap.val = 0;
iwl_set_rxon_channel(priv, IEEE80211_BAND_2GHZ, 6);
priv->rates_mask = IWL_RATES_MASK; priv->rates_mask = IWL_RATES_MASK;
/* If power management is turned on, default to AC mode */ /* If power management is turned on, default to AC mode */
priv->power_mode = IWL_POWER_AC; priv->power_mode = IWL_POWER_AC;
......
...@@ -189,9 +189,7 @@ void iwl_clear_stations_table(struct iwl_priv *priv); ...@@ -189,9 +189,7 @@ void iwl_clear_stations_table(struct iwl_priv *priv);
void iwl_free_calib_results(struct iwl_priv *priv); void iwl_free_calib_results(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, int iwl_set_rxon_channel(struct iwl_priv *priv, struct ieee80211_channel *ch);
enum ieee80211_band band,
u16 channel);
void iwl_set_rxon_ht(struct iwl_priv *priv, struct iwl_ht_info *ht_info); void iwl_set_rxon_ht(struct iwl_priv *priv, struct iwl_ht_info *ht_info);
u8 iwl_is_fat_tx_allowed(struct iwl_priv *priv, u8 iwl_is_fat_tx_allowed(struct iwl_priv *priv,
struct ieee80211_ht_info *sta_ht_inf); struct ieee80211_ht_info *sta_ht_inf);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册